Class: Google::Apis::MonitoringV3::Group
- Inherits:
-
Object
- Object
- Google::Apis::MonitoringV3::Group
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/monitoring_v3/classes.rb,
generated/google/apis/monitoring_v3/representations.rb,
generated/google/apis/monitoring_v3/representations.rb
Overview
The description of a dynamic collection of monitored resources. Each group has a filter that is matched against monitored resources and their associated metadata. If a group's filter matches an available monitored resource, then that resource is a member of that group. Groups can contain any number of monitored resources, and each monitored resource can be a member of any number of groups.Groups can be nested in parent-child hierarchies. The parentName field identifies an optional parent for each group. If a group has a parent, then the only monitored resources available to be matched by the group's filter are the resources contained in the parent group. In other words, a group contains the monitored resources that match its filter and the filters of all the group's ancestors. A group without a parent can contain any monitored resource.For example, consider an infrastructure running a set of instances with two user-defined tags: "environment" and "role". A parent group has a filter, environment="production". A child of that parent group has a filter, role="transcoder". The parent group contains all instances in the production environment, regardless of their roles. The child group contains instances that have the transcoder role and are in the production environment. The monitored resources contained in a group can change at any moment, depending on what resources exist and what filters are associated with the group and its ancestors.
Instance Attribute Summary collapse
-
#display_name ⇒ String
A user-assigned name for this group, used only for display purposes.
-
#filter ⇒ String
The filter used to determine which monitored resources belong to this group.
-
#is_cluster ⇒ Boolean
(also: #is_cluster?)
If true, the members of this group are considered to be a cluster.
-
#name ⇒ String
Output only.
-
#parent_name ⇒ String
The name of the group's parent, if it has one.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Group
constructor
A new instance of Group.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Core::JsonObjectSupport
Methods included from Core::Hashable
Constructor Details
#initialize(**args) ⇒ Group
Returns a new instance of Group
1046 1047 1048 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 1046 def initialize(**args) update!(**args) end |
Instance Attribute Details
#display_name ⇒ String
A user-assigned name for this group, used only for display purposes.
Corresponds to the JSON property displayName
1017 1018 1019 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 1017 def display_name @display_name end |
#filter ⇒ String
The filter used to determine which monitored resources belong to this group.
Corresponds to the JSON property filter
1022 1023 1024 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 1022 def filter @filter end |
#is_cluster ⇒ Boolean Also known as: is_cluster?
If true, the members of this group are considered to be a cluster. The system
can perform additional analysis on groups that are clusters.
Corresponds to the JSON property isCluster
1028 1029 1030 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 1028 def is_cluster @is_cluster end |
#name ⇒ String
Output only. The name of this group. The format is "projects/
project_id_or_number
/groups/group_id
". When creating a group, this field is
ignored and a new name is created consisting of the project specified in the
call to CreateGroup and a unique group_id
that is generated automatically.
Corresponds to the JSON property name
1037 1038 1039 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 1037 def name @name end |
#parent_name ⇒ String
The name of the group's parent, if it has one. The format is "projects/
project_id_or_number
/groups/group_id
". For groups with no parent,
parentName is the empty string, "".
Corresponds to the JSON property parentName
1044 1045 1046 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 1044 def parent_name @parent_name end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1051 1052 1053 1054 1055 1056 1057 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 1051 def update!(**args) @display_name = args[:display_name] if args.key?(:display_name) @filter = args[:filter] if args.key?(:filter) @is_cluster = args[:is_cluster] if args.key?(:is_cluster) @name = args[:name] if args.key?(:name) @parent_name = args[:parent_name] if args.key?(:parent_name) end |