datadog_api_client 2.1.0 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.apigentools-info +4 -4
- data/.generator/poetry.lock +21 -14
- data/.generator/pyproject.toml +1 -1
- data/.generator/schemas/v1/openapi.yaml +558 -8
- data/.generator/schemas/v2/openapi.yaml +973 -253
- data/.generator/src/generator/templates/api_client.j2 +5 -1
- data/.generator/src/generator/templates/configuration.j2 +17 -0
- data/.github/workflows/test.yml +3 -0
- data/.pre-commit-config.yaml +1 -1
- data/CHANGELOG.md +26 -0
- data/README.md +11 -0
- data/examples/v1/dashboards/CreateDashboard_1423904722.rb +38 -0
- data/examples/v1/dashboards/CreateDashboard_2652180930.rb +43 -0
- data/examples/v1/dashboards/CreateDashboard_2850365602.rb +55 -0
- data/examples/v1/dashboards/CreateDashboard_3117424216.rb +33 -0
- data/examples/v1/dashboards/CreateDashboard_3669695268.rb +50 -0
- data/examples/v1/dashboards/CreateDashboard_858397694.rb +41 -0
- data/examples/v1/synthetics/CreateGlobalVariable_1068962881.rb +1 -1
- data/examples/v2/incidents/ListIncidentAttachments.rb +8 -0
- data/examples/v2/incidents/ListIncidentAttachments_2457735435.rb +11 -0
- data/examples/v2/incidents/UpdateIncidentAttachments.rb +38 -0
- data/examples/v2/incidents/UpdateIncidentAttachments_3881702075.rb +26 -0
- data/examples/v2/metrics/ListActiveMetricConfigurations.rb +5 -0
- data/examples/v2/metrics/ListTagConfigurations.rb +1 -1
- data/examples/v2/metrics/ListTagConfigurations_265033704.rb +8 -0
- data/examples/v2/metrics/{ListTagConfigurations_103226315.rb → ListTagConfigurations_2739018321.rb} +1 -1
- data/examples/v2/security-monitoring/CreateSecurityMonitoringRule.rb +3 -2
- data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_461183901.rb +2 -2
- data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_498211763.rb +2 -2
- data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_914562040.rb +50 -0
- data/examples/v2/security-monitoring/GetSecurityMonitoringSignal.rb +5 -0
- data/examples/v2/security-monitoring/UpdateSecurityMonitoringRule.rb +2 -1
- data/examples/v2/usage-metering/GetEstimatedCostByOrg.rb +1 -4
- data/examples/v2/usage-metering/GetEstimatedCostByOrg_2734954020.rb +2 -4
- data/examples/v2/usage-metering/GetEstimatedCostByOrg_3186693804.rb +2 -4
- data/examples/v2/usage-metering/GetHistoricalCostByOrg.rb +8 -0
- data/generate.sh +30 -0
- data/lib/datadog_api_client/api_client.rb +5 -1
- data/lib/datadog_api_client/configuration.rb +20 -1
- data/lib/datadog_api_client/inflector.rb +51 -1
- data/lib/datadog_api_client/v1/api/service_level_objectives_api.rb +3 -1
- data/lib/datadog_api_client/v1/api/usage_metering_api.rb +5 -5
- data/lib/datadog_api_client/v1/models/dashboard_template_variable.rb +14 -2
- data/lib/datadog_api_client/v1/models/dashboard_template_variable_preset_value.rb +28 -5
- data/lib/datadog_api_client/v1/models/formula_and_function_event_query_definition.rb +14 -4
- data/lib/datadog_api_client/v1/models/hourly_usage_attribution_usage_type.rb +1 -0
- data/lib/datadog_api_client/v1/models/list_stream_query.rb +14 -4
- data/lib/datadog_api_client/v1/models/monthly_usage_attribution_supported_metrics.rb +2 -0
- data/lib/datadog_api_client/v1/models/monthly_usage_attribution_values.rb +21 -1
- data/lib/datadog_api_client/v1/models/search_service_level_objective.rb +111 -0
- data/lib/datadog_api_client/v1/models/search_service_level_objective_attributes.rb +286 -0
- data/lib/datadog_api_client/v1/models/search_service_level_objective_data.rb +134 -0
- data/lib/datadog_api_client/v1/models/search_slo_query.rb +137 -0
- data/lib/datadog_api_client/v1/models/search_slo_response_data_attributes.rb +8 -8
- data/lib/datadog_api_client/v1/models/search_slo_response_links.rb +2 -0
- data/lib/datadog_api_client/v1/models/search_slo_threshold.rb +184 -0
- data/lib/datadog_api_client/v1/models/search_slo_timeframe.rb +28 -0
- data/lib/datadog_api_client/v1/models/slo_creator.rb +131 -0
- data/lib/datadog_api_client/v1/models/slo_list_widget_definition.rb +185 -0
- data/lib/datadog_api_client/v1/models/slo_list_widget_definition_type.rb +26 -0
- data/lib/datadog_api_client/v1/models/slo_list_widget_query.rb +149 -0
- data/lib/datadog_api_client/v1/models/slo_list_widget_request.rb +143 -0
- data/lib/datadog_api_client/v1/models/slo_list_widget_request_type.rb +26 -0
- data/lib/datadog_api_client/v1/models/slo_overall_statuses.rb +174 -0
- data/lib/datadog_api_client/v1/models/slo_raw_error_budget_remaining.rb +121 -0
- data/lib/datadog_api_client/v1/models/synthetics_assertion_operator.rb +1 -0
- data/lib/datadog_api_client/v1/models/topology_map_widget_definition.rb +193 -0
- data/lib/datadog_api_client/v1/models/topology_map_widget_definition_type.rb +26 -0
- data/lib/datadog_api_client/v1/models/topology_query.rb +144 -0
- data/lib/datadog_api_client/v1/models/topology_query_data_source.rb +27 -0
- data/lib/datadog_api_client/v1/models/topology_request.rb +121 -0
- data/lib/datadog_api_client/v1/models/topology_request_type.rb +26 -0
- data/lib/datadog_api_client/v1/models/usage_attribution_sort.rb +2 -0
- data/lib/datadog_api_client/v1/models/usage_attribution_supported_metrics.rb +2 -0
- data/lib/datadog_api_client/v1/models/usage_attribution_values.rb +21 -1
- data/lib/datadog_api_client/v1/models/usage_fargate_hour.rb +11 -1
- data/lib/datadog_api_client/v1/models/usage_summary_date.rb +11 -1
- data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +11 -1
- data/lib/datadog_api_client/v1/models/usage_summary_response.rb +11 -1
- data/lib/datadog_api_client/v1/models/widget_definition.rb +3 -1
- data/lib/datadog_api_client/v2/api/incident_services_api.rb +2 -2
- data/lib/datadog_api_client/v2/api/incident_teams_api.rb +2 -2
- data/lib/datadog_api_client/v2/api/incidents_api.rb +155 -0
- data/lib/datadog_api_client/v2/api/metrics_api.rb +76 -8
- data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +65 -0
- data/lib/datadog_api_client/v2/api/usage_metering_api.rb +83 -17
- data/lib/datadog_api_client/v2/models/incident_attachment_attachment_type.rb +27 -0
- data/lib/datadog_api_client/v2/models/incident_attachment_attributes.rb +63 -0
- data/lib/datadog_api_client/v2/models/incident_attachment_data.rb +187 -0
- data/lib/datadog_api_client/v2/models/incident_attachment_link_attachment_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/incident_attachment_link_attributes.rb +145 -0
- data/lib/datadog_api_client/v2/models/incident_attachment_link_attributes_attachment_object.rb +143 -0
- data/lib/datadog_api_client/v2/models/incident_attachment_postmortem_attachment_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/incident_attachment_postmortem_attributes.rb +145 -0
- data/lib/datadog_api_client/v2/models/incident_attachment_related_object.rb +26 -0
- data/lib/datadog_api_client/v2/models/incident_attachment_relationships.rb +111 -0
- data/lib/datadog_api_client/v2/models/incident_attachment_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/incident_attachment_update_attributes.rb +63 -0
- data/lib/datadog_api_client/v2/models/incident_attachment_update_data.rb +144 -0
- data/lib/datadog_api_client/v2/models/incident_attachment_update_request.rb +127 -0
- data/lib/datadog_api_client/v2/models/incident_attachment_update_response.rb +137 -0
- data/lib/datadog_api_client/v2/models/incident_attachments_postmortem_attributes_attachment_object.rb +143 -0
- data/lib/datadog_api_client/v2/models/incident_attachments_response.rb +136 -0
- data/lib/datadog_api_client/v2/models/incident_attachments_response_included_item.rb +62 -0
- data/lib/datadog_api_client/v2/models/incident_related_object.rb +1 -0
- data/lib/datadog_api_client/v2/models/incident_response_attributes.rb +1 -11
- data/lib/datadog_api_client/v2/models/incident_response_included_item.rb +2 -1
- data/lib/datadog_api_client/v2/models/incident_response_relationships.rb +14 -14
- data/lib/datadog_api_client/v2/models/metric_active_configuration_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/metric_suggested_tags_and_aggregations.rb +133 -0
- data/lib/datadog_api_client/v2/models/metric_suggested_tags_and_aggregations_response.rb +111 -0
- data/lib/datadog_api_client/v2/models/metric_suggested_tags_attributes.rb +125 -0
- data/lib/datadog_api_client/v2/models/relationship_to_incident_attachment.rb +124 -0
- data/lib/datadog_api_client/v2/models/relationship_to_incident_attachment_data.rb +145 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_rule_create_payload.rb +36 -248
- data/lib/datadog_api_client/v2/models/security_monitoring_rule_query.rb +36 -151
- data/lib/datadog_api_client/v2/models/security_monitoring_rule_query_aggregation.rb +1 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_rule_response.rb +37 -253
- data/lib/datadog_api_client/v2/models/security_monitoring_signal_rule_create_payload.rb +275 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_signal_rule_query.rb +187 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_signal_rule_response.rb +279 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_signal_rule_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_create_payload.rb +275 -0
- data/lib/datadog_api_client/v2/models/{security_monitoring_rule_query_create.rb → security_monitoring_standard_rule_query.rb} +3 -3
- data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_response.rb +279 -0
- data/lib/datadog_api_client/version.rb +1 -1
- metadata +70 -6
- data/Makefile +0 -7
- data/examples/v2/metrics/ListTagConfigurations_1799362914.rb +0 -8
|
@@ -31,6 +31,12 @@ module DatadogAPIClient::V1
|
|
|
31
31
|
# The synthetic API test usage by tag(s).
|
|
32
32
|
attr_accessor :api_usage
|
|
33
33
|
|
|
34
|
+
# The percentage of APM ECS Fargate task usage by tag(s).
|
|
35
|
+
attr_accessor :apm_fargate_percentage
|
|
36
|
+
|
|
37
|
+
# The APM ECS Fargate task usage by tag(s).
|
|
38
|
+
attr_accessor :apm_fargate_usage
|
|
39
|
+
|
|
34
40
|
# The percentage of APM host usage by tag(s).
|
|
35
41
|
attr_accessor :apm_host_percentage
|
|
36
42
|
|
|
@@ -145,6 +151,8 @@ module DatadogAPIClient::V1
|
|
|
145
151
|
{
|
|
146
152
|
:'api_percentage' => :'api_percentage',
|
|
147
153
|
:'api_usage' => :'api_usage',
|
|
154
|
+
:'apm_fargate_percentage' => :'apm_fargate_percentage',
|
|
155
|
+
:'apm_fargate_usage' => :'apm_fargate_usage',
|
|
148
156
|
:'apm_host_percentage' => :'apm_host_percentage',
|
|
149
157
|
:'apm_host_usage' => :'apm_host_usage',
|
|
150
158
|
:'appsec_percentage' => :'appsec_percentage',
|
|
@@ -196,6 +204,8 @@ module DatadogAPIClient::V1
|
|
|
196
204
|
{
|
|
197
205
|
:'api_percentage' => :'Float',
|
|
198
206
|
:'api_usage' => :'Float',
|
|
207
|
+
:'apm_fargate_percentage' => :'Float',
|
|
208
|
+
:'apm_fargate_usage' => :'Float',
|
|
199
209
|
:'apm_host_percentage' => :'Float',
|
|
200
210
|
:'apm_host_usage' => :'Float',
|
|
201
211
|
:'appsec_percentage' => :'Float',
|
|
@@ -266,6 +276,14 @@ module DatadogAPIClient::V1
|
|
|
266
276
|
self.api_usage = attributes[:'api_usage']
|
|
267
277
|
end
|
|
268
278
|
|
|
279
|
+
if attributes.key?(:'apm_fargate_percentage')
|
|
280
|
+
self.apm_fargate_percentage = attributes[:'apm_fargate_percentage']
|
|
281
|
+
end
|
|
282
|
+
|
|
283
|
+
if attributes.key?(:'apm_fargate_usage')
|
|
284
|
+
self.apm_fargate_usage = attributes[:'apm_fargate_usage']
|
|
285
|
+
end
|
|
286
|
+
|
|
269
287
|
if attributes.key?(:'apm_host_percentage')
|
|
270
288
|
self.apm_host_percentage = attributes[:'apm_host_percentage']
|
|
271
289
|
end
|
|
@@ -426,6 +444,8 @@ module DatadogAPIClient::V1
|
|
|
426
444
|
self.class == o.class &&
|
|
427
445
|
api_percentage == o.api_percentage &&
|
|
428
446
|
api_usage == o.api_usage &&
|
|
447
|
+
apm_fargate_percentage == o.apm_fargate_percentage &&
|
|
448
|
+
apm_fargate_usage == o.apm_fargate_usage &&
|
|
429
449
|
apm_host_percentage == o.apm_host_percentage &&
|
|
430
450
|
apm_host_usage == o.apm_host_usage &&
|
|
431
451
|
appsec_percentage == o.appsec_percentage &&
|
|
@@ -475,7 +495,7 @@ module DatadogAPIClient::V1
|
|
|
475
495
|
# @return [Integer] Hash code
|
|
476
496
|
# @!visibility private
|
|
477
497
|
def hash
|
|
478
|
-
[api_percentage, api_usage, apm_host_percentage, apm_host_usage, appsec_percentage, appsec_usage, browser_percentage, browser_usage, container_percentage, container_usage, custom_timeseries_percentage, custom_timeseries_usage, estimated_indexed_logs_percentage, estimated_indexed_logs_usage, estimated_indexed_spans_percentage, estimated_indexed_spans_usage, estimated_ingested_logs_percentage, estimated_ingested_logs_usage, estimated_ingested_spans_percentage, estimated_ingested_spans_usage, fargate_percentage, fargate_usage, functions_percentage, functions_usage, indexed_logs_percentage, indexed_logs_usage, infra_host_percentage, infra_host_usage, invocations_percentage, invocations_usage, npm_host_percentage, npm_host_usage, profiled_container_percentage, profiled_container_usage, profiled_host_percentage, profiled_host_usage, snmp_percentage, snmp_usage].hash
|
|
498
|
+
[api_percentage, api_usage, apm_fargate_percentage, apm_fargate_usage, apm_host_percentage, apm_host_usage, appsec_percentage, appsec_usage, browser_percentage, browser_usage, container_percentage, container_usage, custom_timeseries_percentage, custom_timeseries_usage, estimated_indexed_logs_percentage, estimated_indexed_logs_usage, estimated_indexed_spans_percentage, estimated_indexed_spans_usage, estimated_ingested_logs_percentage, estimated_ingested_logs_usage, estimated_ingested_spans_percentage, estimated_ingested_spans_usage, fargate_percentage, fargate_usage, functions_percentage, functions_usage, indexed_logs_percentage, indexed_logs_usage, infra_host_percentage, infra_host_usage, invocations_percentage, invocations_usage, npm_host_percentage, npm_host_usage, profiled_container_percentage, profiled_container_usage, profiled_host_percentage, profiled_host_usage, snmp_percentage, snmp_usage].hash
|
|
479
499
|
end
|
|
480
500
|
end
|
|
481
501
|
end
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Datadog API V1 Collection
|
|
3
|
+
|
|
4
|
+
#Collection of all Datadog Public endpoints.
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.0
|
|
7
|
+
Contact: support@datadoghq.com
|
|
8
|
+
Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
|
|
9
|
+
|
|
10
|
+
Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
|
|
11
|
+
This product includes software developed at Datadog (https://www.datadoghq.com/).
|
|
12
|
+
Copyright 2020-Present Datadog, Inc.
|
|
13
|
+
|
|
14
|
+
=end
|
|
15
|
+
|
|
16
|
+
require 'date'
|
|
17
|
+
require 'time'
|
|
18
|
+
|
|
19
|
+
module DatadogAPIClient::V1
|
|
20
|
+
# A service level objective data container.
|
|
21
|
+
class SearchServiceLevelObjective
|
|
22
|
+
include BaseGenericModel
|
|
23
|
+
|
|
24
|
+
# Whether the object has unparsed attributes
|
|
25
|
+
# @!visibility private
|
|
26
|
+
attr_accessor :_unparsed
|
|
27
|
+
|
|
28
|
+
# A service level objective ID and attributes.
|
|
29
|
+
attr_accessor :data
|
|
30
|
+
|
|
31
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
32
|
+
# @!visibility private
|
|
33
|
+
def self.attribute_map
|
|
34
|
+
{
|
|
35
|
+
:'data' => :'data'
|
|
36
|
+
}
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# Returns all the JSON keys this model knows about
|
|
40
|
+
# @!visibility private
|
|
41
|
+
def self.acceptable_attributes
|
|
42
|
+
attribute_map.values
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
# Attribute type mapping.
|
|
46
|
+
# @!visibility private
|
|
47
|
+
def self.openapi_types
|
|
48
|
+
{
|
|
49
|
+
:'data' => :'SearchServiceLevelObjectiveData'
|
|
50
|
+
}
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
# List of attributes with nullable: true
|
|
54
|
+
# @!visibility private
|
|
55
|
+
def self.openapi_nullable
|
|
56
|
+
Set.new([
|
|
57
|
+
])
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
# Initializes the object
|
|
61
|
+
# @param attributes [Hash] Model attributes in the form of hash
|
|
62
|
+
# @!visibility private
|
|
63
|
+
def initialize(attributes = {})
|
|
64
|
+
if (!attributes.is_a?(Hash))
|
|
65
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V1::SearchServiceLevelObjective` initialize method"
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
|
69
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
|
70
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
|
71
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V1::SearchServiceLevelObjective`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
|
72
|
+
end
|
|
73
|
+
h[k.to_sym] = v
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
if attributes.key?(:'data')
|
|
77
|
+
self.data = attributes[:'data']
|
|
78
|
+
end
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
# Check to see if the all the properties in the model are valid
|
|
82
|
+
# @return true if the model is valid
|
|
83
|
+
# @!visibility private
|
|
84
|
+
def valid?
|
|
85
|
+
true
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
# Checks equality by comparing each attribute.
|
|
89
|
+
# @param o [Object] Object to be compared
|
|
90
|
+
# @!visibility private
|
|
91
|
+
def ==(o)
|
|
92
|
+
return true if self.equal?(o)
|
|
93
|
+
self.class == o.class &&
|
|
94
|
+
data == o.data
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
# @see the `==` method
|
|
98
|
+
# @param o [Object] Object to be compared
|
|
99
|
+
# @!visibility private
|
|
100
|
+
def eql?(o)
|
|
101
|
+
self == o
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
# Calculates hash code according to all attributes.
|
|
105
|
+
# @return [Integer] Hash code
|
|
106
|
+
# @!visibility private
|
|
107
|
+
def hash
|
|
108
|
+
[data].hash
|
|
109
|
+
end
|
|
110
|
+
end
|
|
111
|
+
end
|
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Datadog API V1 Collection
|
|
3
|
+
|
|
4
|
+
#Collection of all Datadog Public endpoints.
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.0
|
|
7
|
+
Contact: support@datadoghq.com
|
|
8
|
+
Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
|
|
9
|
+
|
|
10
|
+
Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
|
|
11
|
+
This product includes software developed at Datadog (https://www.datadoghq.com/).
|
|
12
|
+
Copyright 2020-Present Datadog, Inc.
|
|
13
|
+
|
|
14
|
+
=end
|
|
15
|
+
|
|
16
|
+
require 'date'
|
|
17
|
+
require 'time'
|
|
18
|
+
|
|
19
|
+
module DatadogAPIClient::V1
|
|
20
|
+
# A service level objective object includes a service level indicator, thresholds
|
|
21
|
+
# for one or more timeframes, and metadata (`name`, `description`, and `tags`).
|
|
22
|
+
class SearchServiceLevelObjectiveAttributes
|
|
23
|
+
include BaseGenericModel
|
|
24
|
+
|
|
25
|
+
# Whether the object has unparsed attributes
|
|
26
|
+
# @!visibility private
|
|
27
|
+
attr_accessor :_unparsed
|
|
28
|
+
|
|
29
|
+
# A list of tags associated with this service level objective.
|
|
30
|
+
# Always included in service level objective responses (but may be empty).
|
|
31
|
+
attr_accessor :all_tags
|
|
32
|
+
|
|
33
|
+
# Creation timestamp (UNIX time in seconds)
|
|
34
|
+
#
|
|
35
|
+
# Always included in service level objective responses.
|
|
36
|
+
attr_accessor :created_at
|
|
37
|
+
|
|
38
|
+
# The creator of the SLO
|
|
39
|
+
attr_accessor :creator
|
|
40
|
+
|
|
41
|
+
# A user-defined description of the service level objective.
|
|
42
|
+
#
|
|
43
|
+
# Always included in service level objective responses (but may be `null`).
|
|
44
|
+
# Optional in create/update requests.
|
|
45
|
+
attr_accessor :description
|
|
46
|
+
|
|
47
|
+
# Tags with the `env` tag key.
|
|
48
|
+
attr_accessor :env_tags
|
|
49
|
+
|
|
50
|
+
# A list of (up to 100) monitor groups that narrow the scope of a monitor service level objective.
|
|
51
|
+
# Included in service level objective responses if it is not empty.
|
|
52
|
+
attr_accessor :groups
|
|
53
|
+
|
|
54
|
+
# Modification timestamp (UNIX time in seconds)
|
|
55
|
+
#
|
|
56
|
+
# Always included in service level objective responses.
|
|
57
|
+
attr_accessor :modified_at
|
|
58
|
+
|
|
59
|
+
# A list of monitor ids that defines the scope of a monitor service level
|
|
60
|
+
# objective.
|
|
61
|
+
attr_accessor :monitor_ids
|
|
62
|
+
|
|
63
|
+
# The name of the service level objective object.
|
|
64
|
+
attr_accessor :name
|
|
65
|
+
|
|
66
|
+
# calculated status and error budget remaining.
|
|
67
|
+
attr_accessor :overall_status
|
|
68
|
+
|
|
69
|
+
# A metric-based SLO. **Required if type is `metric`**. Note that Datadog only allows the sum by aggregator
|
|
70
|
+
# to be used because this will sum up all request counts instead of averaging them, or taking the max or
|
|
71
|
+
# min of all of those requests.
|
|
72
|
+
attr_accessor :query
|
|
73
|
+
|
|
74
|
+
# Tags with the `service` tag key.
|
|
75
|
+
attr_accessor :service_tags
|
|
76
|
+
|
|
77
|
+
# The type of the service level objective.
|
|
78
|
+
attr_accessor :slo_type
|
|
79
|
+
|
|
80
|
+
# Tags with the `team` tag key.
|
|
81
|
+
attr_accessor :team_tags
|
|
82
|
+
|
|
83
|
+
# The thresholds (timeframes and associated targets) for this service level
|
|
84
|
+
# objective object.
|
|
85
|
+
attr_accessor :thresholds
|
|
86
|
+
|
|
87
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
88
|
+
# @!visibility private
|
|
89
|
+
def self.attribute_map
|
|
90
|
+
{
|
|
91
|
+
:'all_tags' => :'all_tags',
|
|
92
|
+
:'created_at' => :'created_at',
|
|
93
|
+
:'creator' => :'creator',
|
|
94
|
+
:'description' => :'description',
|
|
95
|
+
:'env_tags' => :'env_tags',
|
|
96
|
+
:'groups' => :'groups',
|
|
97
|
+
:'modified_at' => :'modified_at',
|
|
98
|
+
:'monitor_ids' => :'monitor_ids',
|
|
99
|
+
:'name' => :'name',
|
|
100
|
+
:'overall_status' => :'overall_status',
|
|
101
|
+
:'query' => :'query',
|
|
102
|
+
:'service_tags' => :'service_tags',
|
|
103
|
+
:'slo_type' => :'slo_type',
|
|
104
|
+
:'team_tags' => :'team_tags',
|
|
105
|
+
:'thresholds' => :'thresholds'
|
|
106
|
+
}
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
# Returns all the JSON keys this model knows about
|
|
110
|
+
# @!visibility private
|
|
111
|
+
def self.acceptable_attributes
|
|
112
|
+
attribute_map.values
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
# Attribute type mapping.
|
|
116
|
+
# @!visibility private
|
|
117
|
+
def self.openapi_types
|
|
118
|
+
{
|
|
119
|
+
:'all_tags' => :'Array<String>',
|
|
120
|
+
:'created_at' => :'Integer',
|
|
121
|
+
:'creator' => :'SLOCreator',
|
|
122
|
+
:'description' => :'String',
|
|
123
|
+
:'env_tags' => :'Array<String>',
|
|
124
|
+
:'groups' => :'Array<String>',
|
|
125
|
+
:'modified_at' => :'Integer',
|
|
126
|
+
:'monitor_ids' => :'Array<Integer>',
|
|
127
|
+
:'name' => :'String',
|
|
128
|
+
:'overall_status' => :'Array<SLOOverallStatuses>',
|
|
129
|
+
:'query' => :'SearchSLOQuery',
|
|
130
|
+
:'service_tags' => :'Array<String>',
|
|
131
|
+
:'slo_type' => :'SLOType',
|
|
132
|
+
:'team_tags' => :'Array<String>',
|
|
133
|
+
:'thresholds' => :'Array<SearchSLOThreshold>'
|
|
134
|
+
}
|
|
135
|
+
end
|
|
136
|
+
|
|
137
|
+
# List of attributes with nullable: true
|
|
138
|
+
# @!visibility private
|
|
139
|
+
def self.openapi_nullable
|
|
140
|
+
Set.new([
|
|
141
|
+
:'creator',
|
|
142
|
+
:'description',
|
|
143
|
+
:'groups',
|
|
144
|
+
:'monitor_ids',
|
|
145
|
+
:'query',
|
|
146
|
+
])
|
|
147
|
+
end
|
|
148
|
+
|
|
149
|
+
# Initializes the object
|
|
150
|
+
# @param attributes [Hash] Model attributes in the form of hash
|
|
151
|
+
# @!visibility private
|
|
152
|
+
def initialize(attributes = {})
|
|
153
|
+
if (!attributes.is_a?(Hash))
|
|
154
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V1::SearchServiceLevelObjectiveAttributes` initialize method"
|
|
155
|
+
end
|
|
156
|
+
|
|
157
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
|
158
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
|
159
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
|
160
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V1::SearchServiceLevelObjectiveAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
|
161
|
+
end
|
|
162
|
+
h[k.to_sym] = v
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
if attributes.key?(:'all_tags')
|
|
166
|
+
if (value = attributes[:'all_tags']).is_a?(Array)
|
|
167
|
+
self.all_tags = value
|
|
168
|
+
end
|
|
169
|
+
end
|
|
170
|
+
|
|
171
|
+
if attributes.key?(:'created_at')
|
|
172
|
+
self.created_at = attributes[:'created_at']
|
|
173
|
+
end
|
|
174
|
+
|
|
175
|
+
if attributes.key?(:'creator')
|
|
176
|
+
self.creator = attributes[:'creator']
|
|
177
|
+
end
|
|
178
|
+
|
|
179
|
+
if attributes.key?(:'description')
|
|
180
|
+
self.description = attributes[:'description']
|
|
181
|
+
end
|
|
182
|
+
|
|
183
|
+
if attributes.key?(:'env_tags')
|
|
184
|
+
if (value = attributes[:'env_tags']).is_a?(Array)
|
|
185
|
+
self.env_tags = value
|
|
186
|
+
end
|
|
187
|
+
end
|
|
188
|
+
|
|
189
|
+
if attributes.key?(:'groups')
|
|
190
|
+
if (value = attributes[:'groups']).is_a?(Array)
|
|
191
|
+
self.groups = value
|
|
192
|
+
end
|
|
193
|
+
end
|
|
194
|
+
|
|
195
|
+
if attributes.key?(:'modified_at')
|
|
196
|
+
self.modified_at = attributes[:'modified_at']
|
|
197
|
+
end
|
|
198
|
+
|
|
199
|
+
if attributes.key?(:'monitor_ids')
|
|
200
|
+
if (value = attributes[:'monitor_ids']).is_a?(Array)
|
|
201
|
+
self.monitor_ids = value
|
|
202
|
+
end
|
|
203
|
+
end
|
|
204
|
+
|
|
205
|
+
if attributes.key?(:'name')
|
|
206
|
+
self.name = attributes[:'name']
|
|
207
|
+
end
|
|
208
|
+
|
|
209
|
+
if attributes.key?(:'overall_status')
|
|
210
|
+
if (value = attributes[:'overall_status']).is_a?(Array)
|
|
211
|
+
self.overall_status = value
|
|
212
|
+
end
|
|
213
|
+
end
|
|
214
|
+
|
|
215
|
+
if attributes.key?(:'query')
|
|
216
|
+
self.query = attributes[:'query']
|
|
217
|
+
end
|
|
218
|
+
|
|
219
|
+
if attributes.key?(:'service_tags')
|
|
220
|
+
if (value = attributes[:'service_tags']).is_a?(Array)
|
|
221
|
+
self.service_tags = value
|
|
222
|
+
end
|
|
223
|
+
end
|
|
224
|
+
|
|
225
|
+
if attributes.key?(:'slo_type')
|
|
226
|
+
self.slo_type = attributes[:'slo_type']
|
|
227
|
+
end
|
|
228
|
+
|
|
229
|
+
if attributes.key?(:'team_tags')
|
|
230
|
+
if (value = attributes[:'team_tags']).is_a?(Array)
|
|
231
|
+
self.team_tags = value
|
|
232
|
+
end
|
|
233
|
+
end
|
|
234
|
+
|
|
235
|
+
if attributes.key?(:'thresholds')
|
|
236
|
+
if (value = attributes[:'thresholds']).is_a?(Array)
|
|
237
|
+
self.thresholds = value
|
|
238
|
+
end
|
|
239
|
+
end
|
|
240
|
+
end
|
|
241
|
+
|
|
242
|
+
# Check to see if the all the properties in the model are valid
|
|
243
|
+
# @return true if the model is valid
|
|
244
|
+
# @!visibility private
|
|
245
|
+
def valid?
|
|
246
|
+
true
|
|
247
|
+
end
|
|
248
|
+
|
|
249
|
+
# Checks equality by comparing each attribute.
|
|
250
|
+
# @param o [Object] Object to be compared
|
|
251
|
+
# @!visibility private
|
|
252
|
+
def ==(o)
|
|
253
|
+
return true if self.equal?(o)
|
|
254
|
+
self.class == o.class &&
|
|
255
|
+
all_tags == o.all_tags &&
|
|
256
|
+
created_at == o.created_at &&
|
|
257
|
+
creator == o.creator &&
|
|
258
|
+
description == o.description &&
|
|
259
|
+
env_tags == o.env_tags &&
|
|
260
|
+
groups == o.groups &&
|
|
261
|
+
modified_at == o.modified_at &&
|
|
262
|
+
monitor_ids == o.monitor_ids &&
|
|
263
|
+
name == o.name &&
|
|
264
|
+
overall_status == o.overall_status &&
|
|
265
|
+
query == o.query &&
|
|
266
|
+
service_tags == o.service_tags &&
|
|
267
|
+
slo_type == o.slo_type &&
|
|
268
|
+
team_tags == o.team_tags &&
|
|
269
|
+
thresholds == o.thresholds
|
|
270
|
+
end
|
|
271
|
+
|
|
272
|
+
# @see the `==` method
|
|
273
|
+
# @param o [Object] Object to be compared
|
|
274
|
+
# @!visibility private
|
|
275
|
+
def eql?(o)
|
|
276
|
+
self == o
|
|
277
|
+
end
|
|
278
|
+
|
|
279
|
+
# Calculates hash code according to all attributes.
|
|
280
|
+
# @return [Integer] Hash code
|
|
281
|
+
# @!visibility private
|
|
282
|
+
def hash
|
|
283
|
+
[all_tags, created_at, creator, description, env_tags, groups, modified_at, monitor_ids, name, overall_status, query, service_tags, slo_type, team_tags, thresholds].hash
|
|
284
|
+
end
|
|
285
|
+
end
|
|
286
|
+
end
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Datadog API V1 Collection
|
|
3
|
+
|
|
4
|
+
#Collection of all Datadog Public endpoints.
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.0
|
|
7
|
+
Contact: support@datadoghq.com
|
|
8
|
+
Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
|
|
9
|
+
|
|
10
|
+
Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
|
|
11
|
+
This product includes software developed at Datadog (https://www.datadoghq.com/).
|
|
12
|
+
Copyright 2020-Present Datadog, Inc.
|
|
13
|
+
|
|
14
|
+
=end
|
|
15
|
+
|
|
16
|
+
require 'date'
|
|
17
|
+
require 'time'
|
|
18
|
+
|
|
19
|
+
module DatadogAPIClient::V1
|
|
20
|
+
# A service level objective ID and attributes.
|
|
21
|
+
class SearchServiceLevelObjectiveData
|
|
22
|
+
include BaseGenericModel
|
|
23
|
+
|
|
24
|
+
# Whether the object has unparsed attributes
|
|
25
|
+
# @!visibility private
|
|
26
|
+
attr_accessor :_unparsed
|
|
27
|
+
|
|
28
|
+
# A service level objective object includes a service level indicator, thresholds
|
|
29
|
+
# for one or more timeframes, and metadata (`name`, `description`, and `tags`).
|
|
30
|
+
attr_accessor :attributes
|
|
31
|
+
|
|
32
|
+
# A unique identifier for the service level objective object.
|
|
33
|
+
#
|
|
34
|
+
# Always included in service level objective responses.
|
|
35
|
+
attr_accessor :id
|
|
36
|
+
|
|
37
|
+
# The type of the object, must be `slo`.
|
|
38
|
+
attr_accessor :type
|
|
39
|
+
|
|
40
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
41
|
+
# @!visibility private
|
|
42
|
+
def self.attribute_map
|
|
43
|
+
{
|
|
44
|
+
:'attributes' => :'attributes',
|
|
45
|
+
:'id' => :'id',
|
|
46
|
+
:'type' => :'type'
|
|
47
|
+
}
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
# Returns all the JSON keys this model knows about
|
|
51
|
+
# @!visibility private
|
|
52
|
+
def self.acceptable_attributes
|
|
53
|
+
attribute_map.values
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
# Attribute type mapping.
|
|
57
|
+
# @!visibility private
|
|
58
|
+
def self.openapi_types
|
|
59
|
+
{
|
|
60
|
+
:'attributes' => :'SearchServiceLevelObjectiveAttributes',
|
|
61
|
+
:'id' => :'String',
|
|
62
|
+
:'type' => :'String'
|
|
63
|
+
}
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
# List of attributes with nullable: true
|
|
67
|
+
# @!visibility private
|
|
68
|
+
def self.openapi_nullable
|
|
69
|
+
Set.new([
|
|
70
|
+
])
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
# Initializes the object
|
|
74
|
+
# @param attributes [Hash] Model attributes in the form of hash
|
|
75
|
+
# @!visibility private
|
|
76
|
+
def initialize(attributes = {})
|
|
77
|
+
if (!attributes.is_a?(Hash))
|
|
78
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V1::SearchServiceLevelObjectiveData` initialize method"
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
|
82
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
|
83
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
|
84
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V1::SearchServiceLevelObjectiveData`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
|
85
|
+
end
|
|
86
|
+
h[k.to_sym] = v
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
if attributes.key?(:'attributes')
|
|
90
|
+
self.attributes = attributes[:'attributes']
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
if attributes.key?(:'id')
|
|
94
|
+
self.id = attributes[:'id']
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
if attributes.key?(:'type')
|
|
98
|
+
self.type = attributes[:'type']
|
|
99
|
+
end
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
# Check to see if the all the properties in the model are valid
|
|
103
|
+
# @return true if the model is valid
|
|
104
|
+
# @!visibility private
|
|
105
|
+
def valid?
|
|
106
|
+
true
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
# Checks equality by comparing each attribute.
|
|
110
|
+
# @param o [Object] Object to be compared
|
|
111
|
+
# @!visibility private
|
|
112
|
+
def ==(o)
|
|
113
|
+
return true if self.equal?(o)
|
|
114
|
+
self.class == o.class &&
|
|
115
|
+
attributes == o.attributes &&
|
|
116
|
+
id == o.id &&
|
|
117
|
+
type == o.type
|
|
118
|
+
end
|
|
119
|
+
|
|
120
|
+
# @see the `==` method
|
|
121
|
+
# @param o [Object] Object to be compared
|
|
122
|
+
# @!visibility private
|
|
123
|
+
def eql?(o)
|
|
124
|
+
self == o
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
# Calculates hash code according to all attributes.
|
|
128
|
+
# @return [Integer] Hash code
|
|
129
|
+
# @!visibility private
|
|
130
|
+
def hash
|
|
131
|
+
[attributes, id, type].hash
|
|
132
|
+
end
|
|
133
|
+
end
|
|
134
|
+
end
|