@@ -29,6 +29,19 @@ class MetricBulkTagConfigCreateAttributes
2929 # Defaults to false.
3030 attr_accessor :exclude_tags_mode
3131
32+ # When provided, all tags that have been actively queried are
33+ # configured (and, therefore, remain queryable) for each metric that
34+ # matches the given prefix. Minimum value is 1 second, and maximum
35+ # value is 7,776,000 seconds (90 days).
36+ attr_reader :include_actively_queried_tags_window
37+
38+ # When set to true, the configuration overrides any existing
39+ # configurations for the given metric with the new set of tags in this
40+ # configuration request. If false, old configurations are kept and
41+ # are merged with the set of tags in this configuration request.
42+ # Defaults to true.
43+ attr_accessor :override_existing_configurations
44+
3245 # A list of tag names to apply to the configuration.
3346 attr_accessor :tags
3447
@@ -40,6 +53,8 @@ def self.attribute_map
4053 {
4154 :'emails' => :'emails' ,
4255 :'exclude_tags_mode' => :'exclude_tags_mode' ,
56+ :'include_actively_queried_tags_window' => :'include_actively_queried_tags_window' ,
57+ :'override_existing_configurations' => :'override_existing_configurations' ,
4358 :'tags' => :'tags'
4459 }
4560 end
@@ -50,6 +65,8 @@ def self.openapi_types
5065 {
5166 :'emails' => :'Array<String>' ,
5267 :'exclude_tags_mode' => :'Boolean' ,
68+ :'include_actively_queried_tags_window' => :'Float' ,
69+ :'override_existing_configurations' => :'Boolean' ,
5370 :'tags' => :'Array<String>'
5471 }
5572 end
@@ -82,13 +99,43 @@ def initialize(attributes = {})
8299 self . exclude_tags_mode = attributes [ :'exclude_tags_mode' ]
83100 end
84101
102+ if attributes . key? ( :'include_actively_queried_tags_window' )
103+ self . include_actively_queried_tags_window = attributes [ :'include_actively_queried_tags_window' ]
104+ end
105+
106+ if attributes . key? ( :'override_existing_configurations' )
107+ self . override_existing_configurations = attributes [ :'override_existing_configurations' ]
108+ end
109+
85110 if attributes . key? ( :'tags' )
86111 if ( value = attributes [ :'tags' ] ) . is_a? ( Array )
87112 self . tags = value
88113 end
89114 end
90115 end
91116
117+ # Check to see if the all the properties in the model are valid
118+ # @return true if the model is valid
119+ # @!visibility private
120+ def valid?
121+ return false if !@include_actively_queried_tags_window . nil? && @include_actively_queried_tags_window > 7776000
122+ return false if !@include_actively_queried_tags_window . nil? && @include_actively_queried_tags_window < 1
123+ true
124+ end
125+
126+ # Custom attribute writer method with validation
127+ # @param include_actively_queried_tags_window [Object] Object to be assigned
128+ # @!visibility private
129+ def include_actively_queried_tags_window = ( include_actively_queried_tags_window )
130+ if !include_actively_queried_tags_window . nil? && include_actively_queried_tags_window > 7776000
131+ fail ArgumentError , 'invalid value for "include_actively_queried_tags_window", must be smaller than or equal to 7776000.'
132+ end
133+ if !include_actively_queried_tags_window . nil? && include_actively_queried_tags_window < 1
134+ fail ArgumentError , 'invalid value for "include_actively_queried_tags_window", must be greater than or equal to 1.'
135+ end
136+ @include_actively_queried_tags_window = include_actively_queried_tags_window
137+ end
138+
92139 # Returns the object in the form of hash, with additionalProperties support.
93140 # @return [Hash] Returns the object in the form of hash
94141 # @!visibility private
@@ -117,6 +164,8 @@ def ==(o)
117164 self . class == o . class &&
118165 emails == o . emails &&
119166 exclude_tags_mode == o . exclude_tags_mode &&
167+ include_actively_queried_tags_window == o . include_actively_queried_tags_window &&
168+ override_existing_configurations == o . override_existing_configurations &&
120169 tags == o . tags &&
121170 additional_properties == o . additional_properties
122171 end
@@ -125,7 +174,7 @@ def ==(o)
125174 # @return [Integer] Hash code
126175 # @!visibility private
127176 def hash
128- [ emails , exclude_tags_mode , tags , additional_properties ] . hash
177+ [ emails , exclude_tags_mode , include_actively_queried_tags_window , override_existing_configurations , tags , additional_properties ] . hash
129178 end
130179 end
131180end
0 commit comments