1// Copyright 2021 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15// Code generated by protoc-gen-go. DO NOT EDIT.
16// versions:
17// 	protoc-gen-go v1.25.0-devel
18// 	protoc        v3.13.0
19// source: google/monitoring/v3/group.proto
20
21package monitoring
22
23import (
24	reflect "reflect"
25	sync "sync"
26
27	proto "github.com/golang/protobuf/proto"
28	_ "google.golang.org/genproto/googleapis/api/annotations"
29	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
30	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
31)
32
33const (
34	// Verify that this generated code is sufficiently up-to-date.
35	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
36	// Verify that runtime/protoimpl is sufficiently up-to-date.
37	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
38)
39
40// This is a compile-time assertion that a sufficiently up-to-date version
41// of the legacy proto package is being used.
42const _ = proto.ProtoPackageIsVersion4
43
44// The description of a dynamic collection of monitored resources. Each group
45// has a filter that is matched against monitored resources and their associated
46// metadata. If a group's filter matches an available monitored resource, then
47// that resource is a member of that group.  Groups can contain any number of
48// monitored resources, and each monitored resource can be a member of any
49// number of groups.
50//
51// Groups can be nested in parent-child hierarchies. The `parentName` field
52// identifies an optional parent for each group.  If a group has a parent, then
53// the only monitored resources available to be matched by the group's filter
54// are the resources contained in the parent group.  In other words, a group
55// contains the monitored resources that match its filter and the filters of all
56// the group's ancestors.  A group without a parent can contain any monitored
57// resource.
58//
59// For example, consider an infrastructure running a set of instances with two
60// user-defined tags: `"environment"` and `"role"`. A parent group has a filter,
61// `environment="production"`.  A child of that parent group has a filter,
62// `role="transcoder"`.  The parent group contains all instances in the
63// production environment, regardless of their roles.  The child group contains
64// instances that have the transcoder role *and* are in the production
65// environment.
66//
67// The monitored resources contained in a group can change at any moment,
68// depending on what resources exist and what filters are associated with the
69// group and its ancestors.
70type Group struct {
71	state         protoimpl.MessageState
72	sizeCache     protoimpl.SizeCache
73	unknownFields protoimpl.UnknownFields
74
75	// Output only. The name of this group. The format is:
76	//
77	//     projects/[PROJECT_ID_OR_NUMBER]/groups/[GROUP_ID]
78	//
79	// When creating a group, this field is ignored and a new name is created
80	// consisting of the project specified in the call to `CreateGroup`
81	// and a unique `[GROUP_ID]` that is generated automatically.
82	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
83	// A user-assigned name for this group, used only for display purposes.
84	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
85	// The name of the group's parent, if it has one. The format is:
86	//
87	//     projects/[PROJECT_ID_OR_NUMBER]/groups/[GROUP_ID]
88	//
89	// For groups with no parent, `parent_name` is the empty string, `""`.
90	ParentName string `protobuf:"bytes,3,opt,name=parent_name,json=parentName,proto3" json:"parent_name,omitempty"`
91	// The filter used to determine which monitored resources belong to this
92	// group.
93	Filter string `protobuf:"bytes,5,opt,name=filter,proto3" json:"filter,omitempty"`
94	// If true, the members of this group are considered to be a cluster.
95	// The system can perform additional analysis on groups that are clusters.
96	IsCluster bool `protobuf:"varint,6,opt,name=is_cluster,json=isCluster,proto3" json:"is_cluster,omitempty"`
97}
98
99func (x *Group) Reset() {
100	*x = Group{}
101	if protoimpl.UnsafeEnabled {
102		mi := &file_google_monitoring_v3_group_proto_msgTypes[0]
103		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
104		ms.StoreMessageInfo(mi)
105	}
106}
107
108func (x *Group) String() string {
109	return protoimpl.X.MessageStringOf(x)
110}
111
112func (*Group) ProtoMessage() {}
113
114func (x *Group) ProtoReflect() protoreflect.Message {
115	mi := &file_google_monitoring_v3_group_proto_msgTypes[0]
116	if protoimpl.UnsafeEnabled && x != nil {
117		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
118		if ms.LoadMessageInfo() == nil {
119			ms.StoreMessageInfo(mi)
120		}
121		return ms
122	}
123	return mi.MessageOf(x)
124}
125
126// Deprecated: Use Group.ProtoReflect.Descriptor instead.
127func (*Group) Descriptor() ([]byte, []int) {
128	return file_google_monitoring_v3_group_proto_rawDescGZIP(), []int{0}
129}
130
131func (x *Group) GetName() string {
132	if x != nil {
133		return x.Name
134	}
135	return ""
136}
137
138func (x *Group) GetDisplayName() string {
139	if x != nil {
140		return x.DisplayName
141	}
142	return ""
143}
144
145func (x *Group) GetParentName() string {
146	if x != nil {
147		return x.ParentName
148	}
149	return ""
150}
151
152func (x *Group) GetFilter() string {
153	if x != nil {
154		return x.Filter
155	}
156	return ""
157}
158
159func (x *Group) GetIsCluster() bool {
160	if x != nil {
161		return x.IsCluster
162	}
163	return false
164}
165
166var File_google_monitoring_v3_group_proto protoreflect.FileDescriptor
167
168var file_google_monitoring_v3_group_proto_rawDesc = []byte{
169	0x0a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
170	0x69, 0x6e, 0x67, 0x2f, 0x76, 0x33, 0x2f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x70, 0x72, 0x6f,
171	0x74, 0x6f, 0x12, 0x14, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74,
172	0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
173	0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72,
174	0x6f, 0x74, 0x6f, 0x22, 0xb2, 0x02, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x0a,
175	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
176	0x65, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d,
177	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79,
178	0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x6e,
179	0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x65, 0x6e,
180	0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18,
181	0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x1d, 0x0a,
182	0x0a, 0x69, 0x73, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28,
183	0x08, 0x52, 0x09, 0x69, 0x73, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x3a, 0x99, 0x01, 0xea,
184	0x41, 0x95, 0x01, 0x0a, 0x1f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e,
185	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x47,
186	0x72, 0x6f, 0x75, 0x70, 0x12, 0x21, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b,
187	0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2f,
188	0x7b, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x7d, 0x12, 0x2b, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a,
189	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61,
190	0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2f, 0x7b, 0x67, 0x72,
191	0x6f, 0x75, 0x70, 0x7d, 0x12, 0x1f, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x66,
192	0x6f, 0x6c, 0x64, 0x65, 0x72, 0x7d, 0x2f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2f, 0x7b, 0x67,
193	0x72, 0x6f, 0x75, 0x70, 0x7d, 0x12, 0x01, 0x2a, 0x42, 0xc2, 0x01, 0x0a, 0x18, 0x63, 0x6f, 0x6d,
194	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69,
195	0x6e, 0x67, 0x2e, 0x76, 0x33, 0x42, 0x0a, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x50, 0x72, 0x6f, 0x74,
196	0x6f, 0x50, 0x01, 0x5a, 0x3e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61,
197	0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f,
198	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74,
199	0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2f, 0x76, 0x33, 0x3b, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
200	0x69, 0x6e, 0x67, 0xaa, 0x02, 0x1a, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f,
201	0x75, 0x64, 0x2e, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x56, 0x33,
202	0xca, 0x02, 0x1a, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c,
203	0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x5c, 0x56, 0x33, 0xea, 0x02, 0x1d,
204	0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x4d,
205	0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x3a, 0x3a, 0x56, 0x33, 0x62, 0x06, 0x70,
206	0x72, 0x6f, 0x74, 0x6f, 0x33,
207}
208
209var (
210	file_google_monitoring_v3_group_proto_rawDescOnce sync.Once
211	file_google_monitoring_v3_group_proto_rawDescData = file_google_monitoring_v3_group_proto_rawDesc
212)
213
214func file_google_monitoring_v3_group_proto_rawDescGZIP() []byte {
215	file_google_monitoring_v3_group_proto_rawDescOnce.Do(func() {
216		file_google_monitoring_v3_group_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_monitoring_v3_group_proto_rawDescData)
217	})
218	return file_google_monitoring_v3_group_proto_rawDescData
219}
220
221var file_google_monitoring_v3_group_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
222var file_google_monitoring_v3_group_proto_goTypes = []interface{}{
223	(*Group)(nil), // 0: google.monitoring.v3.Group
224}
225var file_google_monitoring_v3_group_proto_depIdxs = []int32{
226	0, // [0:0] is the sub-list for method output_type
227	0, // [0:0] is the sub-list for method input_type
228	0, // [0:0] is the sub-list for extension type_name
229	0, // [0:0] is the sub-list for extension extendee
230	0, // [0:0] is the sub-list for field type_name
231}
232
233func init() { file_google_monitoring_v3_group_proto_init() }
234func file_google_monitoring_v3_group_proto_init() {
235	if File_google_monitoring_v3_group_proto != nil {
236		return
237	}
238	if !protoimpl.UnsafeEnabled {
239		file_google_monitoring_v3_group_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
240			switch v := v.(*Group); i {
241			case 0:
242				return &v.state
243			case 1:
244				return &v.sizeCache
245			case 2:
246				return &v.unknownFields
247			default:
248				return nil
249			}
250		}
251	}
252	type x struct{}
253	out := protoimpl.TypeBuilder{
254		File: protoimpl.DescBuilder{
255			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
256			RawDescriptor: file_google_monitoring_v3_group_proto_rawDesc,
257			NumEnums:      0,
258			NumMessages:   1,
259			NumExtensions: 0,
260			NumServices:   0,
261		},
262		GoTypes:           file_google_monitoring_v3_group_proto_goTypes,
263		DependencyIndexes: file_google_monitoring_v3_group_proto_depIdxs,
264		MessageInfos:      file_google_monitoring_v3_group_proto_msgTypes,
265	}.Build()
266	File_google_monitoring_v3_group_proto = out.File
267	file_google_monitoring_v3_group_proto_rawDesc = nil
268	file_google_monitoring_v3_group_proto_goTypes = nil
269	file_google_monitoring_v3_group_proto_depIdxs = nil
270}
271