From 8affe48876ac3dfe45b0f2c290b9b62ca26e6df5 Mon Sep 17 00:00:00 2001 From: "ci.datadog-api-spec" Date: Thu, 22 Oct 2026 16:16:01 +0000 Subject: [PATCH] Regenerate client from commit f23f36a of spec repo --- .generator/schemas/v2/openapi.yaml | 45 ++++++++++++++++ lib/datadog_api_client/inflector.rb | 1 + .../tag_indexing_rule_exemption_attributes.rb | 51 +++++++++++++++++-- ...g_indexing_rule_exemption_volume_status.rb | 30 +++++++++++ 4 files changed, 124 insertions(+), 3 deletions(-) create mode 100644 lib/datadog_api_client/v2/models/tag_indexing_rule_exemption_volume_status.rb diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index c680cd9d1d49..3315e46888b6 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -130381,15 +130381,37 @@ components: example: user@datadoghq.com readOnly: true type: string + estimated_change_in_volume: + description: |- + Estimated change in indexed cardinality or points if the exemption is removed and the matching tag indexing + rule applies to the metric. A negative value indicates a reduction in indexed volume, a positive value + indicates an increase, and zero indicates no change. A `null` value indicates that the estimate is unavailable. + example: 45 + format: int64 + nullable: true + readOnly: true + type: integer kind: description: >- Discriminates between an explicit exemption (`exemption`) and a pre-existing legacy tag configuration acting as an implicit exclusion (`legacy_tag_configuration`). example: exemption type: string + missing_indexed_tags: + description: |- + Tag keys used to query this metric in monitors, dashboards, notebooks, and SLOs that the matching rule would + remove or not include if the exemption is removed. + example: + - service + items: + type: string + readOnly: true + type: array reason: description: The reason the metric is exempt from tag indexing rules. example: This metric has a pre-existing tag configuration. type: string + volume_status: + $ref: "#/components/schemas/TagIndexingRuleExemptionVolumeStatus" type: object TagIndexingRuleExemptionCreateAttributes: description: Attributes for creating a tag indexing rule exemption. @@ -130448,6 +130470,22 @@ components: type: string x-enum-varnames: - TAG_INDEXING_RULE_EXEMPTIONS + TagIndexingRuleExemptionVolumeStatus: + description: |- + Indicates whether `estimated_change_in_volume` is available and, if not, why. `ok` indicates a fresh estimate. + `unindexed_tags` indicates that the matching rule uses tags that are not indexed for the metric. + `unavailable` indicates that the estimate is stale, was not computed, or could not be retrieved. + enum: + - ok + - unindexed_tags + - unavailable + example: unavailable + readOnly: true + type: string + x-enum-varnames: + - OK + - UNINDEXED_TAGS + - UNAVAILABLE TagIndexingRuleMetricMatch: description: Criteria for matching metrics based on query state. properties: @@ -200912,8 +200950,12 @@ paths: attributes: created_at: "2024-01-15T12:00:00.000Z" created_by_handle: user@datadoghq.com + estimated_change_in_volume: 45 kind: exemption + missing_indexed_tags: + - service reason: This metric has a pre-existing tag configuration. + volume_status: ok id: dd.test.metric type: tag_indexing_rule_exemptions schema: @@ -200989,8 +201031,11 @@ paths: attributes: created_at: "2024-01-15T12:00:00.000Z" created_by_handle: user@datadoghq.com + estimated_change_in_volume: kind: exemption + missing_indexed_tags: [] reason: This metric has a pre-existing tag configuration. + volume_status: unavailable id: dd.test.metric type: tag_indexing_rule_exemptions schema: diff --git a/lib/datadog_api_client/inflector.rb b/lib/datadog_api_client/inflector.rb index dbf69d98cd5f..abd3ec68fc4c 100644 --- a/lib/datadog_api_client/inflector.rb +++ b/lib/datadog_api_client/inflector.rb @@ -8936,6 +8936,7 @@ def overrides "v2.tag_indexing_rule_exemption_data" => "TagIndexingRuleExemptionData", "v2.tag_indexing_rule_exemption_response" => "TagIndexingRuleExemptionResponse", "v2.tag_indexing_rule_exemption_type" => "TagIndexingRuleExemptionType", + "v2.tag_indexing_rule_exemption_volume_status" => "TagIndexingRuleExemptionVolumeStatus", "v2.tag_indexing_rule_metric_match" => "TagIndexingRuleMetricMatch", "v2.tag_indexing_rule_options" => "TagIndexingRuleOptions", "v2.tag_indexing_rule_options_data" => "TagIndexingRuleOptionsData", diff --git a/lib/datadog_api_client/v2/models/tag_indexing_rule_exemption_attributes.rb b/lib/datadog_api_client/v2/models/tag_indexing_rule_exemption_attributes.rb index 1edfd6b79c47..c32664d78b4c 100644 --- a/lib/datadog_api_client/v2/models/tag_indexing_rule_exemption_attributes.rb +++ b/lib/datadog_api_client/v2/models/tag_indexing_rule_exemption_attributes.rb @@ -27,12 +27,26 @@ class TagIndexingRuleExemptionAttributes # Handle of the user who created the exemption. attr_accessor :created_by_handle + # Estimated change in indexed cardinality or points if the exemption is removed and the matching tag indexing + # rule applies to the metric. A negative value indicates a reduction in indexed volume, a positive value + # indicates an increase, and zero indicates no change. A `null` value indicates that the estimate is unavailable. + attr_accessor :estimated_change_in_volume + # Discriminates between an explicit exemption (`exemption`) and a pre-existing legacy tag configuration acting as an implicit exclusion (`legacy_tag_configuration`). attr_accessor :kind + # Tag keys used to query this metric in monitors, dashboards, notebooks, and SLOs that the matching rule would + # remove or not include if the exemption is removed. + attr_accessor :missing_indexed_tags + # The reason the metric is exempt from tag indexing rules. attr_accessor :reason + # Indicates whether `estimated_change_in_volume` is available and, if not, why. `ok` indicates a fresh estimate. + # `unindexed_tags` indicates that the matching rule uses tags that are not indexed for the metric. + # `unavailable` indicates that the estimate is stale, was not computed, or could not be retrieved. + attr_accessor :volume_status + attr_accessor :additional_properties # Attribute mapping from ruby-style variable name to JSON key. @@ -41,8 +55,11 @@ def self.attribute_map { :'created_at' => :'created_at', :'created_by_handle' => :'created_by_handle', + :'estimated_change_in_volume' => :'estimated_change_in_volume', :'kind' => :'kind', - :'reason' => :'reason' + :'missing_indexed_tags' => :'missing_indexed_tags', + :'reason' => :'reason', + :'volume_status' => :'volume_status' } end @@ -52,11 +69,22 @@ def self.openapi_types { :'created_at' => :'Time', :'created_by_handle' => :'String', + :'estimated_change_in_volume' => :'Integer', :'kind' => :'String', - :'reason' => :'String' + :'missing_indexed_tags' => :'Array', + :'reason' => :'String', + :'volume_status' => :'TagIndexingRuleExemptionVolumeStatus' } end + # List of attributes with nullable: true + # @!visibility private + def self.openapi_nullable + Set.new([ + :'estimated_change_in_volume', + ]) + end + # Initializes the object # @param attributes [Hash] Model attributes in the form of hash # @!visibility private @@ -83,13 +111,27 @@ def initialize(attributes = {}) self.created_by_handle = attributes[:'created_by_handle'] end + if attributes.key?(:'estimated_change_in_volume') + self.estimated_change_in_volume = attributes[:'estimated_change_in_volume'] + end + if attributes.key?(:'kind') self.kind = attributes[:'kind'] end + if attributes.key?(:'missing_indexed_tags') + if (value = attributes[:'missing_indexed_tags']).is_a?(Array) + self.missing_indexed_tags = value + end + end + if attributes.key?(:'reason') self.reason = attributes[:'reason'] end + + if attributes.key?(:'volume_status') + self.volume_status = attributes[:'volume_status'] + end end # Returns the object in the form of hash, with additionalProperties support. @@ -120,8 +162,11 @@ def ==(o) self.class == o.class && created_at == o.created_at && created_by_handle == o.created_by_handle && + estimated_change_in_volume == o.estimated_change_in_volume && kind == o.kind && + missing_indexed_tags == o.missing_indexed_tags && reason == o.reason && + volume_status == o.volume_status && additional_properties == o.additional_properties end @@ -129,7 +174,7 @@ def ==(o) # @return [Integer] Hash code # @!visibility private def hash - [created_at, created_by_handle, kind, reason, additional_properties].hash + [created_at, created_by_handle, estimated_change_in_volume, kind, missing_indexed_tags, reason, volume_status, additional_properties].hash end end end diff --git a/lib/datadog_api_client/v2/models/tag_indexing_rule_exemption_volume_status.rb b/lib/datadog_api_client/v2/models/tag_indexing_rule_exemption_volume_status.rb new file mode 100644 index 000000000000..7517f4fe9d84 --- /dev/null +++ b/lib/datadog_api_client/v2/models/tag_indexing_rule_exemption_volume_status.rb @@ -0,0 +1,30 @@ +=begin +#Datadog API V2 Collection + +#Collection of all Datadog Public endpoints. + +The version of the OpenAPI document: 1.0 +Contact: support@datadoghq.com +Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator + + Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + This product includes software developed at Datadog (https://www.datadoghq.com/). + Copyright 2020-Present Datadog, Inc. + +=end + +require 'date' +require 'time' + +module DatadogAPIClient::V2 + # Indicates whether `estimated_change_in_volume` is available and, if not, why. `ok` indicates a fresh estimate. + # `unindexed_tags` indicates that the matching rule uses tags that are not indexed for the metric. + # `unavailable` indicates that the estimate is stale, was not computed, or could not be retrieved. + class TagIndexingRuleExemptionVolumeStatus + include BaseEnumModel + + OK = "ok".freeze + UNINDEXED_TAGS = "unindexed_tags".freeze + UNAVAILABLE = "unavailable".freeze + end +end