dogapi 1.38.0 → 1.43.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.azure-pipelines/all.yml +43 -12
- data/.github/CODEOWNERS +10 -0
- data/.github/ISSUE_TEMPLATE/bug_report.md +36 -0
- data/.github/ISSUE_TEMPLATE/feature_request.md +23 -0
- data/.github/PULL_REQUEST_TEMPLATE.md +77 -0
- data/.github/labeler.yml +5 -0
- data/.github/workflows/labeler.yml +11 -0
- data/.github/workflows/stale.yml +39 -0
- data/.rubocop_todo.yml +30 -32
- data/CHANGELOG.md +28 -0
- data/CONTRIBUTING.md +111 -0
- data/DEVELOPMENT.md +11 -0
- data/Gemfile +1 -1
- data/Gemfile_1.9 +0 -1
- data/LICENSE +21 -20
- data/LICENSE-3rdparty.csv +6 -0
- data/README.rdoc +14 -0
- data/RELEASING.md +46 -0
- data/SUPPORT.md +9 -0
- data/dogapi.gemspec +2 -0
- data/examples/custom_metric.rb +1 -1
- data/lib/capistrano/README.md +4 -1
- data/lib/capistrano/datadog.rb +8 -4
- data/lib/capistrano/datadog/v2.rb +9 -1
- data/lib/capistrano/datadog/v3.rb +10 -1
- data/lib/dogapi.rb +4 -0
- data/lib/dogapi/common.rb +70 -12
- data/lib/dogapi/event.rb +4 -0
- data/lib/dogapi/facade.rb +99 -8
- data/lib/dogapi/metric.rb +4 -0
- data/lib/dogapi/v1.rb +6 -0
- data/lib/dogapi/v1/alert.rb +4 -0
- data/lib/dogapi/v1/aws_integration.rb +4 -0
- data/lib/dogapi/v1/aws_logs.rb +4 -0
- data/lib/dogapi/v1/azure_integration.rb +4 -0
- data/lib/dogapi/v1/comment.rb +4 -0
- data/lib/dogapi/v1/dash.rb +10 -4
- data/lib/dogapi/v1/dashboard.rb +16 -0
- data/lib/dogapi/v1/dashboard_list.rb +4 -0
- data/lib/dogapi/v1/embed.rb +4 -0
- data/lib/dogapi/v1/event.rb +4 -0
- data/lib/dogapi/v1/gcp_integration.rb +4 -0
- data/lib/dogapi/v1/hosts.rb +4 -0
- data/lib/dogapi/v1/integration.rb +4 -0
- data/lib/dogapi/v1/metadata.rb +4 -0
- data/lib/dogapi/v1/metric.rb +4 -0
- data/lib/dogapi/v1/monitor.rb +6 -2
- data/lib/dogapi/v1/screenboard.rb +4 -0
- data/lib/dogapi/v1/search.rb +4 -0
- data/lib/dogapi/v1/service_check.rb +4 -0
- data/lib/dogapi/v1/service_level_objective.rb +113 -0
- data/lib/dogapi/v1/snapshot.rb +4 -0
- data/lib/dogapi/v1/synthetics.rb +80 -0
- data/lib/dogapi/v1/tag.rb +4 -0
- data/lib/dogapi/v1/usage.rb +4 -0
- data/lib/dogapi/v1/user.rb +4 -0
- data/lib/dogapi/v2.rb +4 -0
- data/lib/dogapi/v2/dashboard_list.rb +4 -0
- data/lib/dogapi/version.rb +5 -1
- data/spec/integration/alert_spec.rb +4 -0
- data/spec/integration/aws_integration_spec.rb +4 -0
- data/spec/integration/aws_logs_spec.rb +4 -0
- data/spec/integration/azure_integration_spec.rb +4 -0
- data/spec/integration/comment_spec.rb +5 -0
- data/spec/integration/common_spec.rb +4 -0
- data/spec/integration/dash_spec.rb +7 -1
- data/spec/integration/dashboard_list_spec.rb +4 -0
- data/spec/integration/dashboard_spec.rb +15 -1
- data/spec/integration/embed_spec.rb +4 -0
- data/spec/integration/event_spec.rb +5 -0
- data/spec/integration/gcp_integration_spec.rb +4 -0
- data/spec/integration/integration_spec.rb +4 -0
- data/spec/integration/metadata_spec.rb +4 -0
- data/spec/integration/metric_spec.rb +4 -0
- data/spec/integration/monitor_spec.rb +15 -0
- data/spec/integration/screenboard_spec.rb +4 -0
- data/spec/integration/search_spec.rb +4 -0
- data/spec/integration/service_check_spec.rb +4 -0
- data/spec/integration/service_level_objective_spec.rb +73 -0
- data/spec/integration/snapshot_spec.rb +4 -0
- data/spec/integration/synthetics_spec.rb +131 -0
- data/spec/integration/tag_spec.rb +4 -0
- data/spec/integration/usage_spec.rb +4 -0
- data/spec/integration/user_spec.rb +4 -0
- data/spec/spec_helper.rb +17 -1
- data/spec/unit/capistrano_spec.rb +4 -0
- data/spec/unit/common_spec.rb +50 -0
- data/spec/unit/facade_spec.rb +4 -0
- metadata +24 -7
@@ -0,0 +1,113 @@
|
|
1
|
+
require 'dogapi'
|
2
|
+
|
3
|
+
module Dogapi
|
4
|
+
class V1 # for namespacing
|
5
|
+
|
6
|
+
# Implements Service Level Objectives endpoints
|
7
|
+
class ServiceLevelObjectiveService < Dogapi::APIService
|
8
|
+
|
9
|
+
API_VERSION = 'v1'
|
10
|
+
|
11
|
+
def create_service_level_objective(type, slo_name, thresholds, options = {})
|
12
|
+
body = {
|
13
|
+
type: type,
|
14
|
+
name: slo_name,
|
15
|
+
thresholds: thresholds
|
16
|
+
}
|
17
|
+
|
18
|
+
symbolized_options = Dogapi.symbolized_access(options)
|
19
|
+
if type.to_s == 'metric'
|
20
|
+
body[:query] = {
|
21
|
+
numerator: symbolized_options[:numerator],
|
22
|
+
denominator: symbolized_options[:denominator]
|
23
|
+
}
|
24
|
+
else
|
25
|
+
body[:monitor_search] = symbolized_options[:monitor_search] if symbolized_options[:monitor_search]
|
26
|
+
body[:monitor_ids] = symbolized_options[:monitor_ids] if symbolized_options[:monitor_ids]
|
27
|
+
body[:groups] = symbolized_options[:groups] if symbolized_options[:groups]
|
28
|
+
end
|
29
|
+
body[:tags] = symbolized_options[:tags] if symbolized_options[:tags]
|
30
|
+
body[:description] = symbolized_options[:description] if symbolized_options[:description]
|
31
|
+
|
32
|
+
request(Net::HTTP::Post, "/api/#{API_VERSION}/slo", nil, body, true)
|
33
|
+
end
|
34
|
+
|
35
|
+
def update_service_level_objective(slo_id, type, options = {})
|
36
|
+
body = {
|
37
|
+
type: type
|
38
|
+
}
|
39
|
+
|
40
|
+
symbolized_options = Dogapi.symbolized_access(options)
|
41
|
+
if type == 'metric'
|
42
|
+
if symbolized_options[:numerator] && symbolized_options[:denominator]
|
43
|
+
body[:query] = {
|
44
|
+
numerator: symbolized_options[:numerator],
|
45
|
+
denominator: symbolized_options[:denominator]
|
46
|
+
}
|
47
|
+
end
|
48
|
+
else
|
49
|
+
body[:monitor_search] = symbolized_options[:monitor_search] if symbolized_options[:monitor_search]
|
50
|
+
body[:monitor_ids] = symbolized_options[:monitor_ids] if symbolized_options[:monitor_ids]
|
51
|
+
body[:groups] = symbolized_options[:groups] if symbolized_options[:groups]
|
52
|
+
end
|
53
|
+
[:name, :thresholds, :tags, :description].each do |a|
|
54
|
+
body[a] = symbolized_options[a] if symbolized_options[a]
|
55
|
+
end
|
56
|
+
|
57
|
+
request(Net::HTTP::Put, "/api/#{API_VERSION}/slo/#{slo_id}", nil, body, true)
|
58
|
+
end
|
59
|
+
|
60
|
+
def get_service_level_objective(slo_id)
|
61
|
+
request(Net::HTTP::Get, "/api/#{API_VERSION}/slo/#{slo_id}", nil, nil, false)
|
62
|
+
end
|
63
|
+
|
64
|
+
def search_service_level_objective(slo_ids, query, offset, limit)
|
65
|
+
params = {}
|
66
|
+
params[:offset] = offset unless offset.nil?
|
67
|
+
params[:limit] = limit unless limit.nil?
|
68
|
+
if !slo_ids.nil?
|
69
|
+
params[:ids] = slo_ids.join(',')
|
70
|
+
else
|
71
|
+
params[:query] = query
|
72
|
+
end
|
73
|
+
|
74
|
+
request(Net::HTTP::Get, "/api/#{API_VERSION}/slo/", params, nil, false)
|
75
|
+
end
|
76
|
+
|
77
|
+
def delete_service_level_objective(slo_id)
|
78
|
+
request(Net::HTTP::Delete, "/api/#{API_VERSION}/slo/#{slo_id}", nil, nil, false)
|
79
|
+
end
|
80
|
+
|
81
|
+
def delete_many_service_level_objective(slo_ids)
|
82
|
+
body = {
|
83
|
+
ids: slo_ids
|
84
|
+
}
|
85
|
+
request(Net::HTTP::Delete, "/api/#{API_VERSION}/slo/", nil, body, true)
|
86
|
+
end
|
87
|
+
|
88
|
+
def delete_timeframes_service_level_objective(ops)
|
89
|
+
# ops is a hash of slo_id: [<timeframe>] to delete
|
90
|
+
request(Net::HTTP::Post, "/api/#{API_VERSION}/slo/bulk_delete", nil, ops, true)
|
91
|
+
end
|
92
|
+
|
93
|
+
def get_service_level_objective_history(slo_id, from_ts, to_ts)
|
94
|
+
params = {
|
95
|
+
from_ts: from_ts,
|
96
|
+
to_ts: to_ts
|
97
|
+
}
|
98
|
+
request(Net::HTTP::Get, "/api/#{API_VERSION}/slo/#{slo_id}/history", params, nil, false)
|
99
|
+
end
|
100
|
+
|
101
|
+
def can_delete_service_level_objective(slo_ids)
|
102
|
+
params = {}
|
103
|
+
params[:ids] = if slo_ids.is_a? Array
|
104
|
+
slo_ids.join(',')
|
105
|
+
else
|
106
|
+
slo_ids
|
107
|
+
end
|
108
|
+
request(Net::HTTP::Get, "/api/#{API_VERSION}/slo/can_delete", params, nil, false)
|
109
|
+
end
|
110
|
+
|
111
|
+
end
|
112
|
+
end
|
113
|
+
end
|
data/lib/dogapi/v1/snapshot.rb
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require 'dogapi'
|
2
6
|
|
3
7
|
module Dogapi
|
@@ -0,0 +1,80 @@
|
|
1
|
+
require 'dogapi'
|
2
|
+
|
3
|
+
module Dogapi
|
4
|
+
class V1 # for namespacing
|
5
|
+
# SyntheticsService is the class responsible for dealing with the synthetics
|
6
|
+
class SyntheticsService < Dogapi::APIService
|
7
|
+
|
8
|
+
API_VERSION = 'v1'
|
9
|
+
|
10
|
+
# Create a synthetics test: POST /v1/synthetics/tests/
|
11
|
+
def create_synthetics_test(type, config, options = {})
|
12
|
+
body = {
|
13
|
+
'type' => type,
|
14
|
+
'config' => config
|
15
|
+
}.merge(options)
|
16
|
+
|
17
|
+
request(Net::HTTP::Post, "/api/#{API_VERSION}/synthetics/tests", nil, body, true)
|
18
|
+
end
|
19
|
+
|
20
|
+
# Edit a synthetics test: PUT /v1/synthetics/tests/<SYNTHETICS_TEST_PUBLIC_ID>
|
21
|
+
def update_synthetics_test(test_id, type, config, options = {})
|
22
|
+
body = {
|
23
|
+
'type' => type,
|
24
|
+
'config' => config
|
25
|
+
}.merge(options)
|
26
|
+
|
27
|
+
request(Net::HTTP::Put, "/api/#{API_VERSION}/synthetics/tests/#{test_id}", nil, body, true)
|
28
|
+
end
|
29
|
+
|
30
|
+
# Delete synthetics tests
|
31
|
+
def delete_synthetics_tests(test_ids)
|
32
|
+
body = {
|
33
|
+
'public_ids' => test_ids
|
34
|
+
}
|
35
|
+
request(Net::HTTP::Post, "/api/#{API_VERSION}/synthetics/tests/delete", nil, body, true)
|
36
|
+
end
|
37
|
+
|
38
|
+
# Start of pause a synthetics test: POST /v1/synthetics/tests/<SYNTHETICS_TEST_PUBLIC_ID>/status
|
39
|
+
def start_pause_synthetics_test(test_id, new_status)
|
40
|
+
body = {
|
41
|
+
'new_status' => new_status
|
42
|
+
}
|
43
|
+
request(Net::HTTP::Put, "/api/#{API_VERSION}/synthetics/tests/#{test_id}/status", nil, body, true)
|
44
|
+
end
|
45
|
+
|
46
|
+
# Get all synthetics tests: GET /v1/synthetics/tests
|
47
|
+
def get_all_synthetics_tests
|
48
|
+
request(Net::HTTP::Get, "/api/#{API_VERSION}/synthetics/tests", nil, nil, false)
|
49
|
+
end
|
50
|
+
|
51
|
+
# Get info on a synthetics test: GET /v1/synthetics/tests/<SYNTHETICS_TEST_PUBLIC_ID>
|
52
|
+
def get_synthetics_test(test_id)
|
53
|
+
request(Net::HTTP::Get, "/api/#{API_VERSION}/synthetics/tests/#{test_id}", nil, nil, false)
|
54
|
+
end
|
55
|
+
|
56
|
+
# Get the most recent results for a synthetics test: GET /v1/synthetics/tests/<SYNTHETICS_TEST_PUBLIC_ID>/results
|
57
|
+
def get_synthetics_results(test_id)
|
58
|
+
request(Net::HTTP::Get, "/api/#{API_VERSION}/synthetics/tests/#{test_id}/results", nil, nil, false)
|
59
|
+
end
|
60
|
+
|
61
|
+
# Get a specific result for a synthetics test:
|
62
|
+
# GET /v1/synthetics/tests/<SYNTHETICS_TEST_PUBLIC_ID>/results/<RESULT_ID>
|
63
|
+
def get_synthetics_result(test_id, result_id)
|
64
|
+
request(Net::HTTP::Get, "/api/#{API_VERSION}/synthetics/tests/#{test_id}/results/#{result_id}", nil, nil, false)
|
65
|
+
end
|
66
|
+
|
67
|
+
# Get devices for browser checks: GET /v1/synthetics/browser/devices
|
68
|
+
def get_synthetics_devices
|
69
|
+
request(Net::HTTP::Get, "/api/#{API_VERSION}/synthetics/browser/devices", nil, nil, false)
|
70
|
+
end
|
71
|
+
|
72
|
+
# Get available locations: GET /v1/synthetics/locations
|
73
|
+
def get_synthetics_locations
|
74
|
+
request(Net::HTTP::Get, "/api/#{API_VERSION}/synthetics/locations", nil, nil, false)
|
75
|
+
end
|
76
|
+
|
77
|
+
end
|
78
|
+
|
79
|
+
end
|
80
|
+
end
|
data/lib/dogapi/v1/tag.rb
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require 'dogapi'
|
2
6
|
|
3
7
|
module Dogapi
|
data/lib/dogapi/v1/usage.rb
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require 'dogapi'
|
2
6
|
|
3
7
|
module Dogapi
|
data/lib/dogapi/v1/user.rb
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require 'dogapi'
|
2
6
|
|
3
7
|
module Dogapi
|
data/lib/dogapi/v2.rb
CHANGED
@@ -1 +1,5 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require 'dogapi/v2/dashboard_list'
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require 'dogapi'
|
2
6
|
|
3
7
|
module Dogapi
|
data/lib/dogapi/version.rb
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
module Dogapi
|
2
|
-
VERSION = '1.
|
6
|
+
VERSION = '1.43.0'
|
3
7
|
end
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require_relative '../spec_helper'
|
2
6
|
|
3
7
|
describe Dogapi::Client do
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require_relative '../spec_helper'
|
2
6
|
|
3
7
|
describe Dogapi::Client do
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require_relative '../spec_helper'
|
2
6
|
|
3
7
|
describe Dogapi::Client do
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require_relative '../spec_helper'
|
2
6
|
|
3
7
|
describe Dogapi::Client do
|
@@ -1,4 +1,9 @@
|
|
1
1
|
# encoding: utf-8
|
2
|
+
|
3
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
4
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
5
|
+
# Copyright 2011-Present Datadog, Inc.
|
6
|
+
|
2
7
|
require_relative '../spec_helper'
|
3
8
|
|
4
9
|
describe Dogapi::Client do
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require_relative '../spec_helper'
|
2
6
|
|
3
7
|
describe Dogapi::APIService do
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require_relative '../spec_helper'
|
2
6
|
|
3
7
|
describe Dogapi::Client do
|
@@ -19,12 +23,14 @@ describe Dogapi::Client do
|
|
19
23
|
'prefix' => 'host',
|
20
24
|
'default' => 'host:my-host'
|
21
25
|
}].freeze
|
26
|
+
READ_ONLY = false
|
22
27
|
|
23
28
|
DASH_BODY = {
|
24
29
|
title: TITLE,
|
25
30
|
description: DESCRIPTION,
|
26
31
|
graphs: GRAPHS,
|
27
|
-
template_variables: TEMPLATE_VARIABLES
|
32
|
+
template_variables: TEMPLATE_VARIABLES,
|
33
|
+
read_only: READ_ONLY
|
28
34
|
}.freeze
|
29
35
|
DASH_ARGS = DASH_BODY.values
|
30
36
|
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require_relative '../spec_helper'
|
2
6
|
|
3
7
|
describe Dogapi::Client do
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require_relative '../spec_helper'
|
2
6
|
|
3
7
|
describe Dogapi::Client do
|
@@ -22,6 +26,15 @@ describe Dogapi::Client do
|
|
22
26
|
'prefix' => 'host',
|
23
27
|
'default' => 'my-host'
|
24
28
|
}].freeze
|
29
|
+
TEMPLATE_VARIABLE_PRESETS = [{
|
30
|
+
'name' => 'preset1',
|
31
|
+
'template_variables' => [
|
32
|
+
{
|
33
|
+
'name' => 'host1',
|
34
|
+
'value' => 'my-host'
|
35
|
+
}
|
36
|
+
]
|
37
|
+
}].freeze
|
25
38
|
|
26
39
|
REQUIRED_ARGS = {
|
27
40
|
title: TITLE,
|
@@ -33,7 +46,8 @@ describe Dogapi::Client do
|
|
33
46
|
description: DESCRIPTION,
|
34
47
|
is_read_only: IS_READ_ONLY,
|
35
48
|
notify_list: NOTIFY_LIST,
|
36
|
-
template_variables: TEMPLATE_VARIABLES
|
49
|
+
template_variables: TEMPLATE_VARIABLES,
|
50
|
+
template_variable_presets: TEMPLATE_VARIABLE_PRESETS
|
37
51
|
}
|
38
52
|
DASHBOARD_ARGS = REQUIRED_ARGS.values + [OPTIONS]
|
39
53
|
DASHBOARD_PAYLOAD = REQUIRED_ARGS.merge(OPTIONS)
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require_relative '../spec_helper'
|
2
6
|
|
3
7
|
describe Dogapi::Client do
|
@@ -1,4 +1,9 @@
|
|
1
1
|
# encoding: utf-8
|
2
|
+
|
3
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
4
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
5
|
+
# Copyright 2011-Present Datadog, Inc.
|
6
|
+
|
2
7
|
require_relative '../spec_helper'
|
3
8
|
|
4
9
|
describe Dogapi::Client do
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require_relative '../spec_helper'
|
2
6
|
|
3
7
|
describe Dogapi::Client do
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require_relative '../spec_helper'
|
2
6
|
|
3
7
|
describe Dogapi::Client do
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require_relative '../spec_helper'
|
2
6
|
|
3
7
|
describe Dogapi::Client do
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require_relative '../spec_helper'
|
2
6
|
|
3
7
|
describe Dogapi::Client do
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
|
2
|
+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
|
3
|
+
# Copyright 2011-Present Datadog, Inc.
|
4
|
+
|
1
5
|
require_relative '../spec_helper'
|
2
6
|
|
3
7
|
describe Dogapi::Client do
|
@@ -47,6 +51,17 @@ describe Dogapi::Client do
|
|
47
51
|
:delete, "/monitor/#{MONITOR_ID}"
|
48
52
|
end
|
49
53
|
|
54
|
+
describe '#delete_monitor with options' do
|
55
|
+
it 'queries the api with options' do
|
56
|
+
url = api_url + "/monitor/#{MONITOR_ID}?force=true"
|
57
|
+
options = { 'force' => true }
|
58
|
+
stub_request(:delete, url).to_return(body: '{}').then.to_raise(StandardError)
|
59
|
+
expect(dog.send(:delete_monitor, MONITOR_ID, options)).to eq ['200', {}]
|
60
|
+
|
61
|
+
expect(WebMock).to have_requested(:delete, url)
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
50
65
|
describe '#get_all_monitors' do
|
51
66
|
it_behaves_like 'an api method with optional params',
|
52
67
|
:get_all_monitors, [],
|