datadog_api_client 2.1.0 → 2.2.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
@@ -138,7 +138,11 @@ module {{ module_name }}
|
|
138
138
|
:timeout => @config.timeout,
|
139
139
|
:verify_peer => @config.verify_ssl,
|
140
140
|
:verify => _verify_ssl_host,
|
141
|
-
:verbose => @config.debugging
|
141
|
+
:verbose => @config.debugging,
|
142
|
+
:http_proxyaddr => @config.http_proxyaddr,
|
143
|
+
:http_proxyport => @config.http_proxyport,
|
144
|
+
:http_proxyuser => @config.http_proxyuser,
|
145
|
+
:http_proxypass => @config.http_proxypass
|
142
146
|
}
|
143
147
|
|
144
148
|
req_opts[:pem] = File.read(@config.cert_file) if @config.cert_file
|
@@ -125,6 +125,19 @@ module {{ module_name }}
|
|
125
125
|
# Set this to add accept encoding header for compression
|
126
126
|
attr_accessor :compress
|
127
127
|
|
128
|
+
### Proxy settings
|
129
|
+
# Address of proxy server to use
|
130
|
+
attr_accessor :http_proxyaddr
|
131
|
+
|
132
|
+
# Port of proxy server to use
|
133
|
+
attr_accessor :http_proxyport
|
134
|
+
|
135
|
+
# User for proxy server authentication
|
136
|
+
attr_accessor :http_proxyuser
|
137
|
+
|
138
|
+
# Password for proxy server authentication
|
139
|
+
attr_accessor :http_proxypass
|
140
|
+
|
128
141
|
def initialize
|
129
142
|
{%- set default_server = openapi.servers[0]|format_server %}
|
130
143
|
@scheme = '{{ default_server.scheme }}'
|
@@ -146,6 +159,10 @@ module {{ module_name }}
|
|
146
159
|
@inject_format = false
|
147
160
|
@force_ending_format = false
|
148
161
|
@compress = true
|
162
|
+
@http_proxyaddr = nil
|
163
|
+
@http_proxyport = nil
|
164
|
+
@http_proxyuser = nil
|
165
|
+
@http_proxypass = nil
|
149
166
|
@logger = defined?(Rails) ? Rails.logger : Logger.new(STDOUT)
|
150
167
|
@unstable_operations = {
|
151
168
|
{%- for version, apis in all_apis.items() %}
|
data/.github/workflows/test.yml
CHANGED
@@ -32,6 +32,9 @@ jobs:
|
|
32
32
|
fetch-depth: 0
|
33
33
|
ref: ${{ github.event.pull_request.head.sha }}
|
34
34
|
token: ${{ steps.get_token.outputs.token }}
|
35
|
+
- uses: actions/setup-python@v4
|
36
|
+
with:
|
37
|
+
python-version: '3.10'
|
35
38
|
- name: Install pre-commit
|
36
39
|
run: python -m pip install pre-commit
|
37
40
|
- name: set PY
|
data/.pre-commit-config.yaml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,31 @@
|
|
1
1
|
# CHANGELOG
|
2
2
|
|
3
|
+
## 2.2.0 / 2022-10-03
|
4
|
+
|
5
|
+
### Fixed
|
6
|
+
* Refactor RuleQuery models by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/1082
|
7
|
+
* Fix SearchSLO response structure by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/1084
|
8
|
+
### Added
|
9
|
+
* Add ListActiveConfigurations endpoint and add new filter[queried] param to list tag configurations endpoint by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/1017
|
10
|
+
* Add doesNotExist to synthetics operator enum by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/1059
|
11
|
+
* Add TopologyMapWidget to dashboard schema by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/1063
|
12
|
+
* Add Overall Status support to SLO Search API by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/1065
|
13
|
+
* Add support for proxy usage by @skarimo in https://github.com/DataDog/datadog-api-client-ruby/pull/1069
|
14
|
+
* Add APM Fargate to Usage Metering API by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/1058
|
15
|
+
* Add support for template variable multiselect in dashboards by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/1068
|
16
|
+
* Add storage option to widget query definitions by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/1072
|
17
|
+
* Add support for retrieving a security signal by ID by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/1077
|
18
|
+
* Add support for signal correlation API by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/1073
|
19
|
+
* Add support for SLO List widget by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/1076
|
20
|
+
* Add new historical_cost endpoint, and update estimate_cost by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/1071
|
21
|
+
* Add support for incident attachment APIs by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/1083
|
22
|
+
|
23
|
+
## New Contributors
|
24
|
+
* @nkzou made their first contribution in https://github.com/DataDog/datadog-api-client-ruby/pull/1057
|
25
|
+
* @dependabot made their first contribution in https://github.com/DataDog/datadog-api-client-ruby/pull/1091
|
26
|
+
|
27
|
+
**Full Changelog**: https://github.com/DataDog/datadog-api-client-ruby/compare/v2.1.0...v2.2.0
|
28
|
+
|
3
29
|
## 2.1.0 / 2022-08-31
|
4
30
|
|
5
31
|
### Added
|
data/README.md
CHANGED
@@ -138,6 +138,17 @@ config.debugging = true
|
|
138
138
|
client = DatadogAPIClient::APIClient.new(config)
|
139
139
|
```
|
140
140
|
|
141
|
+
### Configure proxy
|
142
|
+
|
143
|
+
You can configure the client to use proxy by setting `http_proxyaddr` and `http_proxyport` keys on configuration object:
|
144
|
+
|
145
|
+
```ruby
|
146
|
+
config = DatadogAPIClient::Configuration.new
|
147
|
+
config.http_proxyaddr = '127.0.0.1'
|
148
|
+
config.http_proxyport = '3128'
|
149
|
+
client = DatadogAPIClient::APIClient.new(config)
|
150
|
+
```
|
151
|
+
|
141
152
|
### Pagination
|
142
153
|
|
143
154
|
Several listing operations have a pagination method to help consume all the items available.
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# Create a new dashboard with slo list widget
|
2
|
+
|
3
|
+
require "datadog_api_client"
|
4
|
+
api_instance = DatadogAPIClient::V1::DashboardsAPI.new
|
5
|
+
|
6
|
+
body = DatadogAPIClient::V1::Dashboard.new({
|
7
|
+
title: "Example-Create_a_new_dashboard_with_slo_list_widget",
|
8
|
+
description: "",
|
9
|
+
widgets: [
|
10
|
+
DatadogAPIClient::V1::Widget.new({
|
11
|
+
layout: DatadogAPIClient::V1::WidgetLayout.new({
|
12
|
+
x: 0,
|
13
|
+
y: 0,
|
14
|
+
width: 60,
|
15
|
+
height: 21,
|
16
|
+
}),
|
17
|
+
definition: DatadogAPIClient::V1::SLOListWidgetDefinition.new({
|
18
|
+
title_size: "16",
|
19
|
+
title_align: DatadogAPIClient::V1::WidgetTextAlign::LEFT,
|
20
|
+
type: DatadogAPIClient::V1::SLOListWidgetDefinitionType::SLO_LIST,
|
21
|
+
requests: [
|
22
|
+
DatadogAPIClient::V1::SLOListWidgetRequest.new({
|
23
|
+
query: DatadogAPIClient::V1::SLOListWidgetQuery.new({
|
24
|
+
query_string: "env:prod AND service:my-app",
|
25
|
+
limit: 75,
|
26
|
+
}),
|
27
|
+
request_type: DatadogAPIClient::V1::SLOListWidgetRequestType::SLO_LIST,
|
28
|
+
}),
|
29
|
+
],
|
30
|
+
}),
|
31
|
+
}),
|
32
|
+
],
|
33
|
+
template_variables: [],
|
34
|
+
layout_type: DatadogAPIClient::V1::DashboardLayoutType::FREE,
|
35
|
+
is_read_only: false,
|
36
|
+
notify_list: [],
|
37
|
+
})
|
38
|
+
p api_instance.create_dashboard(body)
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# Create a new dashboard with topology_map widget
|
2
|
+
|
3
|
+
require "datadog_api_client"
|
4
|
+
api_instance = DatadogAPIClient::V1::DashboardsAPI.new
|
5
|
+
|
6
|
+
body = DatadogAPIClient::V1::Dashboard.new({
|
7
|
+
title: "Example-Create_a_new_dashboard_with_topology_map_widget",
|
8
|
+
description: "",
|
9
|
+
widgets: [
|
10
|
+
DatadogAPIClient::V1::Widget.new({
|
11
|
+
layout: DatadogAPIClient::V1::WidgetLayout.new({
|
12
|
+
x: 0,
|
13
|
+
y: 0,
|
14
|
+
width: 47,
|
15
|
+
height: 15,
|
16
|
+
}),
|
17
|
+
definition: DatadogAPIClient::V1::TopologyMapWidgetDefinition.new({
|
18
|
+
title: "",
|
19
|
+
title_size: "16",
|
20
|
+
title_align: DatadogAPIClient::V1::WidgetTextAlign::LEFT,
|
21
|
+
type: DatadogAPIClient::V1::TopologyMapWidgetDefinitionType::TOPOLOGY_MAP,
|
22
|
+
requests: [
|
23
|
+
DatadogAPIClient::V1::TopologyRequest.new({
|
24
|
+
request_type: DatadogAPIClient::V1::TopologyRequestType::TOPOLOGY,
|
25
|
+
query: DatadogAPIClient::V1::TopologyQuery.new({
|
26
|
+
data_source: DatadogAPIClient::V1::TopologyQueryDataSource::SERVICE_MAP,
|
27
|
+
service: "",
|
28
|
+
filters: [
|
29
|
+
"env:none",
|
30
|
+
"environment:*",
|
31
|
+
],
|
32
|
+
}),
|
33
|
+
}),
|
34
|
+
],
|
35
|
+
}),
|
36
|
+
}),
|
37
|
+
],
|
38
|
+
template_variables: [],
|
39
|
+
layout_type: DatadogAPIClient::V1::DashboardLayoutType::FREE,
|
40
|
+
is_read_only: false,
|
41
|
+
notify_list: [],
|
42
|
+
})
|
43
|
+
p api_instance.create_dashboard(body)
|
@@ -0,0 +1,55 @@
|
|
1
|
+
# Create a new dashboard with template variable presets using values returns "OK" response
|
2
|
+
|
3
|
+
require "datadog_api_client"
|
4
|
+
api_instance = DatadogAPIClient::V1::DashboardsAPI.new
|
5
|
+
|
6
|
+
body = DatadogAPIClient::V1::Dashboard.new({
|
7
|
+
description: nil,
|
8
|
+
is_read_only: false,
|
9
|
+
layout_type: DatadogAPIClient::V1::DashboardLayoutType::ORDERED,
|
10
|
+
notify_list: [],
|
11
|
+
reflow_type: DatadogAPIClient::V1::DashboardReflowType::AUTO,
|
12
|
+
restricted_roles: [],
|
13
|
+
template_variable_presets: [
|
14
|
+
DatadogAPIClient::V1::DashboardTemplateVariablePreset.new({
|
15
|
+
name: "my saved view",
|
16
|
+
template_variables: [
|
17
|
+
DatadogAPIClient::V1::DashboardTemplateVariablePresetValue.new({
|
18
|
+
name: "datacenter",
|
19
|
+
values: [
|
20
|
+
"*",
|
21
|
+
"my-host",
|
22
|
+
],
|
23
|
+
}),
|
24
|
+
],
|
25
|
+
}),
|
26
|
+
],
|
27
|
+
template_variables: [
|
28
|
+
DatadogAPIClient::V1::DashboardTemplateVariable.new({
|
29
|
+
available_values: [
|
30
|
+
"my-host",
|
31
|
+
"host1",
|
32
|
+
"host2",
|
33
|
+
],
|
34
|
+
defaults: [
|
35
|
+
"my-host",
|
36
|
+
],
|
37
|
+
name: "host1",
|
38
|
+
prefix: "host",
|
39
|
+
}),
|
40
|
+
],
|
41
|
+
title: "",
|
42
|
+
widgets: [
|
43
|
+
DatadogAPIClient::V1::Widget.new({
|
44
|
+
definition: DatadogAPIClient::V1::HostMapWidgetDefinition.new({
|
45
|
+
requests: DatadogAPIClient::V1::HostMapWidgetDefinitionRequests.new({
|
46
|
+
fill: DatadogAPIClient::V1::HostMapRequest.new({
|
47
|
+
q: "avg:system.cpu.user{*}",
|
48
|
+
}),
|
49
|
+
}),
|
50
|
+
type: DatadogAPIClient::V1::HostMapWidgetDefinitionType::HOSTMAP,
|
51
|
+
}),
|
52
|
+
}),
|
53
|
+
],
|
54
|
+
})
|
55
|
+
p api_instance.create_dashboard(body)
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# Create a new dashboard with logs_stream list_stream widget and storage parameter
|
2
|
+
|
3
|
+
require "datadog_api_client"
|
4
|
+
api_instance = DatadogAPIClient::V1::DashboardsAPI.new
|
5
|
+
|
6
|
+
body = DatadogAPIClient::V1::Dashboard.new({
|
7
|
+
layout_type: DatadogAPIClient::V1::DashboardLayoutType::ORDERED,
|
8
|
+
title: "Example-Create_a_new_dashboard_with_logs_stream_list_stream_widget_and_storage_parameter with list_stream widget",
|
9
|
+
widgets: [
|
10
|
+
DatadogAPIClient::V1::Widget.new({
|
11
|
+
definition: DatadogAPIClient::V1::ListStreamWidgetDefinition.new({
|
12
|
+
type: DatadogAPIClient::V1::ListStreamWidgetDefinitionType::LIST_STREAM,
|
13
|
+
requests: [
|
14
|
+
DatadogAPIClient::V1::ListStreamWidgetRequest.new({
|
15
|
+
columns: [
|
16
|
+
DatadogAPIClient::V1::ListStreamColumn.new({
|
17
|
+
width: DatadogAPIClient::V1::ListStreamColumnWidth::AUTO,
|
18
|
+
field: "timestamp",
|
19
|
+
}),
|
20
|
+
],
|
21
|
+
query: DatadogAPIClient::V1::ListStreamQuery.new({
|
22
|
+
data_source: DatadogAPIClient::V1::ListStreamSource::LOGS_STREAM,
|
23
|
+
query_string: "",
|
24
|
+
storage: "hot",
|
25
|
+
}),
|
26
|
+
response_format: DatadogAPIClient::V1::ListStreamResponseFormat::EVENT_LIST,
|
27
|
+
}),
|
28
|
+
],
|
29
|
+
}),
|
30
|
+
}),
|
31
|
+
],
|
32
|
+
})
|
33
|
+
p api_instance.create_dashboard(body)
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# Create a new dashboard with logs query table widget and storage parameter
|
2
|
+
|
3
|
+
require "datadog_api_client"
|
4
|
+
api_instance = DatadogAPIClient::V1::DashboardsAPI.new
|
5
|
+
|
6
|
+
body = DatadogAPIClient::V1::Dashboard.new({
|
7
|
+
layout_type: DatadogAPIClient::V1::DashboardLayoutType::ORDERED,
|
8
|
+
title: "Example-Create_a_new_dashboard_with_logs_query_table_widget_and_storage_parameter with query table widget and storage parameter",
|
9
|
+
widgets: [
|
10
|
+
DatadogAPIClient::V1::Widget.new({
|
11
|
+
definition: DatadogAPIClient::V1::TableWidgetDefinition.new({
|
12
|
+
type: DatadogAPIClient::V1::TableWidgetDefinitionType::QUERY_TABLE,
|
13
|
+
requests: [
|
14
|
+
DatadogAPIClient::V1::TableWidgetRequest.new({
|
15
|
+
queries: [
|
16
|
+
DatadogAPIClient::V1::FormulaAndFunctionEventQueryDefinition.new({
|
17
|
+
data_source: DatadogAPIClient::V1::FormulaAndFunctionEventsDataSource::LOGS,
|
18
|
+
name: "query1",
|
19
|
+
search: DatadogAPIClient::V1::FormulaAndFunctionEventQueryDefinitionSearch.new({
|
20
|
+
query: "",
|
21
|
+
}),
|
22
|
+
indexes: [
|
23
|
+
"*",
|
24
|
+
],
|
25
|
+
compute: DatadogAPIClient::V1::FormulaAndFunctionEventQueryDefinitionCompute.new({
|
26
|
+
aggregation: DatadogAPIClient::V1::FormulaAndFunctionEventAggregation::COUNT,
|
27
|
+
}),
|
28
|
+
group_by: [],
|
29
|
+
storage: "online_archives",
|
30
|
+
}),
|
31
|
+
],
|
32
|
+
formulas: [
|
33
|
+
DatadogAPIClient::V1::WidgetFormula.new({
|
34
|
+
conditional_formats: [],
|
35
|
+
cell_display_mode: DatadogAPIClient::V1::TableWidgetCellDisplayMode::BAR,
|
36
|
+
formula: "query1",
|
37
|
+
limit: DatadogAPIClient::V1::WidgetFormulaLimit.new({
|
38
|
+
count: 50,
|
39
|
+
order: DatadogAPIClient::V1::QuerySortOrder::DESC,
|
40
|
+
}),
|
41
|
+
}),
|
42
|
+
],
|
43
|
+
response_format: DatadogAPIClient::V1::FormulaAndFunctionResponseFormat::SCALAR,
|
44
|
+
}),
|
45
|
+
],
|
46
|
+
}),
|
47
|
+
}),
|
48
|
+
],
|
49
|
+
})
|
50
|
+
p api_instance.create_dashboard(body)
|
@@ -0,0 +1,41 @@
|
|
1
|
+
# Create a new dashboard with template variable defaults returns "OK" response
|
2
|
+
|
3
|
+
require "datadog_api_client"
|
4
|
+
api_instance = DatadogAPIClient::V1::DashboardsAPI.new
|
5
|
+
|
6
|
+
body = DatadogAPIClient::V1::Dashboard.new({
|
7
|
+
description: nil,
|
8
|
+
is_read_only: false,
|
9
|
+
layout_type: DatadogAPIClient::V1::DashboardLayoutType::ORDERED,
|
10
|
+
notify_list: [],
|
11
|
+
reflow_type: DatadogAPIClient::V1::DashboardReflowType::AUTO,
|
12
|
+
restricted_roles: [],
|
13
|
+
template_variables: [
|
14
|
+
DatadogAPIClient::V1::DashboardTemplateVariable.new({
|
15
|
+
available_values: [
|
16
|
+
"my-host",
|
17
|
+
"host1",
|
18
|
+
"host2",
|
19
|
+
],
|
20
|
+
defaults: [
|
21
|
+
"my-host",
|
22
|
+
],
|
23
|
+
name: "host1",
|
24
|
+
prefix: "host",
|
25
|
+
}),
|
26
|
+
],
|
27
|
+
title: "",
|
28
|
+
widgets: [
|
29
|
+
DatadogAPIClient::V1::Widget.new({
|
30
|
+
definition: DatadogAPIClient::V1::HostMapWidgetDefinition.new({
|
31
|
+
requests: DatadogAPIClient::V1::HostMapWidgetDefinitionRequests.new({
|
32
|
+
fill: DatadogAPIClient::V1::HostMapRequest.new({
|
33
|
+
q: "avg:system.cpu.user{*}",
|
34
|
+
}),
|
35
|
+
}),
|
36
|
+
type: DatadogAPIClient::V1::HostMapWidgetDefinitionType::HOSTMAP,
|
37
|
+
}),
|
38
|
+
}),
|
39
|
+
],
|
40
|
+
})
|
41
|
+
p api_instance.create_dashboard(body)
|
@@ -8,7 +8,7 @@ SYNTHETICS_API_TEST_MULTI_STEP_PUBLIC_ID = ENV["SYNTHETICS_API_TEST_MULTI_STEP_P
|
|
8
8
|
|
9
9
|
body = DatadogAPIClient::V1::SyntheticsGlobalVariable.new({
|
10
10
|
description: "",
|
11
|
-
name: "
|
11
|
+
name: "GLOBAL_VARIABLE_PAYLOAD_EXAMPLECREATEAGLOBALVARIABLEFROMTESTRETURNSOKRESPONSE",
|
12
12
|
tags: [],
|
13
13
|
value: DatadogAPIClient::V1::SyntheticsGlobalVariableValue.new({
|
14
14
|
secure: false,
|
@@ -0,0 +1,8 @@
|
|
1
|
+
# Get a list of attachments returns "OK" response
|
2
|
+
|
3
|
+
require "datadog_api_client"
|
4
|
+
DatadogAPIClient::V2.configure do |config|
|
5
|
+
config.unstable_operations["v2.list_incident_attachments".to_sym] = true
|
6
|
+
end
|
7
|
+
api_instance = DatadogAPIClient::V2::IncidentsAPI.new
|
8
|
+
p api_instance.list_incident_attachments("incident_id")
|
@@ -0,0 +1,11 @@
|
|
1
|
+
# Get incident attachments returns "OK" response
|
2
|
+
|
3
|
+
require "datadog_api_client"
|
4
|
+
DatadogAPIClient::V2.configure do |config|
|
5
|
+
config.unstable_operations["v2.list_incident_attachments".to_sym] = true
|
6
|
+
end
|
7
|
+
api_instance = DatadogAPIClient::V2::IncidentsAPI.new
|
8
|
+
|
9
|
+
# there is a valid "incident" in the system
|
10
|
+
INCIDENT_DATA_ID = ENV["INCIDENT_DATA_ID"]
|
11
|
+
p api_instance.list_incident_attachments(INCIDENT_DATA_ID)
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# Create, update, and delete incident attachments returns "OK" response
|
2
|
+
|
3
|
+
require "datadog_api_client"
|
4
|
+
DatadogAPIClient::V2.configure do |config|
|
5
|
+
config.unstable_operations["v2.update_incident_attachments".to_sym] = true
|
6
|
+
end
|
7
|
+
api_instance = DatadogAPIClient::V2::IncidentsAPI.new
|
8
|
+
|
9
|
+
body = DatadogAPIClient::V2::IncidentAttachmentUpdateRequest.new({
|
10
|
+
data: [
|
11
|
+
DatadogAPIClient::V2::IncidentAttachmentUpdateData.new({
|
12
|
+
attributes: DatadogAPIClient::V2::IncidentAttachmentPostmortemAttributes.new({
|
13
|
+
attachment: DatadogAPIClient::V2::IncidentAttachmentsPostmortemAttributesAttachmentObject.new({
|
14
|
+
document_url: "https://app.datadoghq.com/notebook/123",
|
15
|
+
title: "Postmortem IR-123",
|
16
|
+
}),
|
17
|
+
attachment_type: DatadogAPIClient::V2::IncidentAttachmentPostmortemAttachmentType::POSTMORTEM,
|
18
|
+
}),
|
19
|
+
id: "00000000-abcd-0002-0000-000000000000",
|
20
|
+
type: DatadogAPIClient::V2::IncidentAttachmentType::INCIDENT_ATTACHMENTS,
|
21
|
+
}),
|
22
|
+
DatadogAPIClient::V2::IncidentAttachmentUpdateData.new({
|
23
|
+
attributes: DatadogAPIClient::V2::IncidentAttachmentLinkAttributes.new({
|
24
|
+
attachment: DatadogAPIClient::V2::IncidentAttachmentLinkAttributesAttachmentObject.new({
|
25
|
+
document_url: "https://www.example.com/webstore-failure-runbook",
|
26
|
+
title: "Runbook for webstore service failures",
|
27
|
+
}),
|
28
|
+
attachment_type: DatadogAPIClient::V2::IncidentAttachmentLinkAttachmentType::LINK,
|
29
|
+
}),
|
30
|
+
type: DatadogAPIClient::V2::IncidentAttachmentType::INCIDENT_ATTACHMENTS,
|
31
|
+
}),
|
32
|
+
DatadogAPIClient::V2::IncidentAttachmentUpdateData.new({
|
33
|
+
id: "00000000-abcd-0003-0000-000000000000",
|
34
|
+
type: DatadogAPIClient::V2::IncidentAttachmentType::INCIDENT_ATTACHMENTS,
|
35
|
+
}),
|
36
|
+
],
|
37
|
+
})
|
38
|
+
p api_instance.update_incident_attachments("incident_id", body)
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# Create an incident attachment returns "OK" response
|
2
|
+
|
3
|
+
require "datadog_api_client"
|
4
|
+
DatadogAPIClient::V2.configure do |config|
|
5
|
+
config.unstable_operations["v2.update_incident_attachments".to_sym] = true
|
6
|
+
end
|
7
|
+
api_instance = DatadogAPIClient::V2::IncidentsAPI.new
|
8
|
+
|
9
|
+
# there is a valid "incident" in the system
|
10
|
+
INCIDENT_DATA_ID = ENV["INCIDENT_DATA_ID"]
|
11
|
+
|
12
|
+
body = DatadogAPIClient::V2::IncidentAttachmentUpdateRequest.new({
|
13
|
+
data: [
|
14
|
+
DatadogAPIClient::V2::IncidentAttachmentUpdateData.new({
|
15
|
+
type: DatadogAPIClient::V2::IncidentAttachmentType::INCIDENT_ATTACHMENTS,
|
16
|
+
attributes: DatadogAPIClient::V2::IncidentAttachmentLinkAttributes.new({
|
17
|
+
attachment_type: DatadogAPIClient::V2::IncidentAttachmentLinkAttachmentType::LINK,
|
18
|
+
attachment: DatadogAPIClient::V2::IncidentAttachmentLinkAttributesAttachmentObject.new({
|
19
|
+
document_url: "https://www.example.com/doc",
|
20
|
+
title: "Example-Create_an_incident_attachment_returns_OK_response",
|
21
|
+
}),
|
22
|
+
}),
|
23
|
+
}),
|
24
|
+
],
|
25
|
+
})
|
26
|
+
p api_instance.update_incident_attachments(INCIDENT_DATA_ID, body)
|
@@ -0,0 +1,8 @@
|
|
1
|
+
# Get a list of metrics with a tag filter returns "Success" response
|
2
|
+
|
3
|
+
require "datadog_api_client"
|
4
|
+
api_instance = DatadogAPIClient::V2::MetricsAPI.new
|
5
|
+
opts = {
|
6
|
+
filter_tags: "ExampleGetalistofmetricswithatagfilterreturnsSuccessresponse",
|
7
|
+
}
|
8
|
+
p api_instance.list_tag_configurations(opts)
|
@@ -3,10 +3,10 @@
|
|
3
3
|
require "datadog_api_client"
|
4
4
|
api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
|
5
5
|
|
6
|
-
body = DatadogAPIClient::V2::
|
6
|
+
body = DatadogAPIClient::V2::SecurityMonitoringStandardRuleCreatePayload.new({
|
7
7
|
name: "Example-Create_a_detection_rule_returns_OK_response",
|
8
8
|
queries: [
|
9
|
-
DatadogAPIClient::V2::
|
9
|
+
DatadogAPIClient::V2::SecurityMonitoringStandardRuleQuery.new({
|
10
10
|
query: "@test:true",
|
11
11
|
aggregation: DatadogAPIClient::V2::SecurityMonitoringRuleQueryAggregation::COUNT,
|
12
12
|
group_by_fields: [],
|
@@ -31,5 +31,6 @@ body = DatadogAPIClient::V2::SecurityMonitoringRuleCreatePayload.new({
|
|
31
31
|
message: "Test rule",
|
32
32
|
tags: [],
|
33
33
|
is_enabled: true,
|
34
|
+
type: DatadogAPIClient::V2::SecurityMonitoringRuleTypeCreate::LOG_DETECTION,
|
34
35
|
})
|
35
36
|
p api_instance.create_security_monitoring_rule(body)
|
@@ -3,9 +3,9 @@
|
|
3
3
|
require "datadog_api_client"
|
4
4
|
api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
|
5
5
|
|
6
|
-
body = DatadogAPIClient::V2::
|
6
|
+
body = DatadogAPIClient::V2::SecurityMonitoringStandardRuleCreatePayload.new({
|
7
7
|
queries: [
|
8
|
-
DatadogAPIClient::V2::
|
8
|
+
DatadogAPIClient::V2::SecurityMonitoringStandardRuleQuery.new({
|
9
9
|
aggregation: DatadogAPIClient::V2::SecurityMonitoringRuleQueryAggregation::GEO_DATA,
|
10
10
|
group_by_fields: [
|
11
11
|
"@usr.id",
|
@@ -3,10 +3,10 @@
|
|
3
3
|
require "datadog_api_client"
|
4
4
|
api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
|
5
5
|
|
6
|
-
body = DatadogAPIClient::V2::
|
6
|
+
body = DatadogAPIClient::V2::SecurityMonitoringStandardRuleCreatePayload.new({
|
7
7
|
name: "Example-Create_a_detection_rule_with_type_workload_security_returns_OK_response",
|
8
8
|
queries: [
|
9
|
-
DatadogAPIClient::V2::
|
9
|
+
DatadogAPIClient::V2::SecurityMonitoringStandardRuleQuery.new({
|
10
10
|
query: "@test:true",
|
11
11
|
aggregation: DatadogAPIClient::V2::SecurityMonitoringRuleQueryAggregation::COUNT,
|
12
12
|
group_by_fields: [],
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# Create a detection rule with type 'signal_correlation' returns "OK" response
|
2
|
+
|
3
|
+
require "datadog_api_client"
|
4
|
+
api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
|
5
|
+
|
6
|
+
# there is a valid "security_rule" in the system
|
7
|
+
SECURITY_RULE_ID = ENV["SECURITY_RULE_ID"]
|
8
|
+
|
9
|
+
# there is a valid "security_rule_bis" in the system
|
10
|
+
SECURITY_RULE_BIS_ID = ENV["SECURITY_RULE_BIS_ID"]
|
11
|
+
|
12
|
+
body = DatadogAPIClient::V2::SecurityMonitoringSignalRuleCreatePayload.new({
|
13
|
+
name: "Example-Create_a_detection_rule_with_type_signal_correlation_returns_OK_response_signal_rule",
|
14
|
+
queries: [
|
15
|
+
DatadogAPIClient::V2::SecurityMonitoringSignalRuleQuery.new({
|
16
|
+
rule_id: SECURITY_RULE_ID,
|
17
|
+
aggregation: DatadogAPIClient::V2::SecurityMonitoringRuleQueryAggregation::EVENT_COUNT,
|
18
|
+
correlated_by_fields: [
|
19
|
+
"host",
|
20
|
+
],
|
21
|
+
correlated_query_index: 1,
|
22
|
+
}),
|
23
|
+
DatadogAPIClient::V2::SecurityMonitoringSignalRuleQuery.new({
|
24
|
+
rule_id: SECURITY_RULE_BIS_ID,
|
25
|
+
aggregation: DatadogAPIClient::V2::SecurityMonitoringRuleQueryAggregation::EVENT_COUNT,
|
26
|
+
correlated_by_fields: [
|
27
|
+
"host",
|
28
|
+
],
|
29
|
+
}),
|
30
|
+
],
|
31
|
+
filters: [],
|
32
|
+
cases: [
|
33
|
+
DatadogAPIClient::V2::SecurityMonitoringRuleCaseCreate.new({
|
34
|
+
name: "",
|
35
|
+
status: DatadogAPIClient::V2::SecurityMonitoringRuleSeverity::INFO,
|
36
|
+
condition: "a > 0 && b > 0",
|
37
|
+
notifications: [],
|
38
|
+
}),
|
39
|
+
],
|
40
|
+
options: DatadogAPIClient::V2::SecurityMonitoringRuleOptions.new({
|
41
|
+
evaluation_window: DatadogAPIClient::V2::SecurityMonitoringRuleEvaluationWindow::FIFTEEN_MINUTES,
|
42
|
+
keep_alive: DatadogAPIClient::V2::SecurityMonitoringRuleKeepAlive::ONE_HOUR,
|
43
|
+
max_signal_duration: DatadogAPIClient::V2::SecurityMonitoringRuleMaxSignalDuration::ONE_DAY,
|
44
|
+
}),
|
45
|
+
message: "Test signal correlation rule",
|
46
|
+
tags: [],
|
47
|
+
is_enabled: true,
|
48
|
+
type: DatadogAPIClient::V2::SecurityMonitoringSignalRuleType::SIGNAL_CORRELATION,
|
49
|
+
})
|
50
|
+
p api_instance.create_security_monitoring_rule(body)
|
@@ -34,11 +34,12 @@ body = DatadogAPIClient::V2::SecurityMonitoringRuleUpdatePayload.new({
|
|
34
34
|
}),
|
35
35
|
}),
|
36
36
|
queries: [
|
37
|
-
DatadogAPIClient::V2::
|
37
|
+
DatadogAPIClient::V2::SecurityMonitoringStandardRuleQuery.new({
|
38
38
|
aggregation: DatadogAPIClient::V2::SecurityMonitoringRuleQueryAggregation::COUNT,
|
39
39
|
distinct_fields: [],
|
40
40
|
group_by_fields: [],
|
41
41
|
metrics: [],
|
42
|
+
query: "a > 3",
|
42
43
|
}),
|
43
44
|
],
|
44
45
|
tags: [],
|
@@ -1,8 +1,5 @@
|
|
1
1
|
# Get estimated cost across your account returns "OK" response
|
2
2
|
|
3
3
|
require "datadog_api_client"
|
4
|
-
DatadogAPIClient::V2.configure do |config|
|
5
|
-
config.unstable_operations["v2.get_estimated_cost_by_org".to_sym] = true
|
6
|
-
end
|
7
4
|
api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
|
8
|
-
p api_instance.get_estimated_cost_by_org(
|
5
|
+
p api_instance.get_estimated_cost_by_org()
|
@@ -1,11 +1,9 @@
|
|
1
1
|
# GetEstimatedCostByOrg with start_date returns "OK" response
|
2
2
|
|
3
3
|
require "datadog_api_client"
|
4
|
-
DatadogAPIClient::V2.configure do |config|
|
5
|
-
config.unstable_operations["v2.get_estimated_cost_by_org".to_sym] = true
|
6
|
-
end
|
7
4
|
api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
|
8
5
|
opts = {
|
6
|
+
view: "sub-org",
|
9
7
|
start_date: (Time.now + -5 * 86400),
|
10
8
|
}
|
11
|
-
p api_instance.get_estimated_cost_by_org(
|
9
|
+
p api_instance.get_estimated_cost_by_org(opts)
|