hawkular-client 2.8.0 → 2.9.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +1 -4
- data/.travis/start_hawkular_services.sh +21 -0
- data/.travis/wait_for_services.rb +26 -10
- data/CHANGES.rdoc +26 -0
- data/README.rdoc +12 -1
- data/docker-compose.yml +4 -2
- data/hawkularclient.gemspec +2 -0
- data/lib/hawkular/alerts/alerts_api.rb +22 -1
- data/lib/hawkular/base_client.rb +29 -24
- data/lib/hawkular/client_utils.rb +42 -0
- data/lib/hawkular/env_config.rb +15 -0
- data/lib/hawkular/hawkular_client.rb +33 -25
- data/lib/hawkular/inventory/entities.rb +9 -0
- data/lib/hawkular/inventory/inventory_api.rb +13 -3
- data/lib/hawkular/logger.rb +14 -0
- data/lib/hawkular/metrics/metric_api.rb +24 -8
- data/lib/hawkular/operations/operations_api.rb +57 -25
- data/lib/hawkular/tokens/tokens_api.rb +4 -1
- data/lib/hawkular/version.rb +1 -1
- data/lib/hawkularclient.rb +8 -0
- data/spec/integration/alerts_spec.rb +50 -27
- data/spec/integration/env_config_spec.rb +39 -0
- data/spec/integration/hawkular_client_spec.rb +10 -7
- data/spec/integration/inventory_spec.rb +36 -3
- data/spec/integration/logger_spec.rb +36 -0
- data/spec/integration/metric_spec.rb +62 -3
- data/spec/integration/operations_spec.rb +112 -63
- data/spec/integration/tokens_spec.rb +6 -6
- data/spec/spec_helper.rb +20 -6
- data/spec/unit/base_spec.rb +25 -3
- data/spec/unit/canonical_path_spec.rb +2 -1
- data/spec/unit/client_spec.rb +2 -1
- data/spec/unit/deprecations_spec.rb +19 -0
- data/spec/vcr_cassettes/Alert/Alerts/Templates/Should_add_tags_to_existing_alert.yml +210 -0
- data/spec/vcr_cassettes/Alert/Alerts/Templates/Should_remove_tags_from_existing_alert.yml +257 -0
- data/spec/vcr_cassettes/Alert/Triggers/Templates/Should_get_the_action_definitions.yml +59 -22
- data/spec/vcr_cassettes/Inventory/NonSecure/inventory_0_17/Templates/Should_have_a_consistent_behaviour_when_creating_an_already_existing_resource.yml +714 -0
- data/spec/vcr_cassettes/Inventory/NonSecure/inventory_0_17/Templates/Should_return_data_from_get_entity.yml +230 -0
- data/spec/vcr_cassettes/Metrics/NonSecure/metrics_services/Templates/All_Tags_for_metrics/Should_fetch_all_metrics_with_some_tags.yml +1251 -0
- data/spec/vcr_cassettes/Metrics/NonSecure/metrics_services/Templates/Tags_Metrics/setup_client.yml +3 -3
- data/spec/vcr_cassettes/Operation/NonSecure/Helpers/Templates/agent_properties.yml +124 -0
- data/spec/vcr_cassettes/Operation/NonSecure/Helpers/Templates/get_feed.yml +7 -7
- data/spec/vcr_cassettes/Operation/NonSecure/Operation/Add_JDBC_driver_should_add_the_driver.json +4 -4
- data/spec/vcr_cassettes/Operation/NonSecure/Operation/Add_deployment_should_be_doable.json +4 -4
- data/spec/vcr_cassettes/Operation/NonSecure/Operation/Disable_should_be_performed_and_eventually_respond_with_success.json +4 -4
- data/spec/vcr_cassettes/Operation/NonSecure/Operation/Remove_JDBC_driver_should_be_performed_and_eventually_respond_with_success.json +3 -3
- data/spec/vcr_cassettes/Operation/NonSecure/Operation/Restart_can_be_run_multiple_times_in_parallel.json +5 -5
- data/spec/vcr_cassettes/Operation/NonSecure/Operation/Restart_should_be_performed_and_eventually_respond_with_success.json +4 -4
- data/spec/vcr_cassettes/Operation/NonSecure/Operation/Update_collection_intervals_should_be_performed_and_eventually_respond_with_success.json +23 -0
- metadata +57 -7
- data/lib/hawkular/hawkular_client_utils.rb +0 -41
@@ -1,5 +1,5 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
require_relative '../vcr/vcr_setup'
|
2
|
+
require_relative '../spec_helper'
|
3
3
|
|
4
4
|
module Hawkular::Token::RSpec
|
5
5
|
HAWKULAR_BASE = 'http://localhost:8080'.freeze
|
@@ -7,7 +7,7 @@ module Hawkular::Token::RSpec
|
|
7
7
|
it 'Should be able to list the available tokens' do
|
8
8
|
creds = { username: 'jdoe', password: 'password' }
|
9
9
|
options = { tenant: 'hawkular' }
|
10
|
-
client = Hawkular::Token::
|
10
|
+
client = Hawkular::Token::Client.new(HAWKULAR_BASE, creds, options)
|
11
11
|
tokens = client.get_tokens(creds)
|
12
12
|
expect(tokens).to be_empty
|
13
13
|
end
|
@@ -15,7 +15,7 @@ module Hawkular::Token::RSpec
|
|
15
15
|
it 'Should be able to create a new token for an actual user' do
|
16
16
|
creds = { username: 'jdoe', password: 'password' }
|
17
17
|
options = { tenant: 'hawkular' }
|
18
|
-
client = Hawkular::Token::
|
18
|
+
client = Hawkular::Token::Client.new(HAWKULAR_BASE, creds, options)
|
19
19
|
token = client.create_token(creds)
|
20
20
|
expect(token['key']).not_to be_nil
|
21
21
|
expect(token['secret']).not_to be_nil
|
@@ -25,7 +25,7 @@ module Hawkular::Token::RSpec
|
|
25
25
|
it 'Should get a 401 when attempting to create a token with a wrong password' do
|
26
26
|
creds = { username: 'jdoe', password: 'mywrongpassword' }
|
27
27
|
options = { tenant: 'hawkular' }
|
28
|
-
client = Hawkular::Token::
|
28
|
+
client = Hawkular::Token::Client.new(HAWKULAR_BASE, creds, options)
|
29
29
|
begin
|
30
30
|
client.create_token(creds)
|
31
31
|
fail 'Should have failed with 401'
|
@@ -37,7 +37,7 @@ module Hawkular::Token::RSpec
|
|
37
37
|
it 'Should get a 401 when attempting to create a token without a password' do
|
38
38
|
creds = { username: 'jdoe', password: '' }
|
39
39
|
options = { tenant: 'hawkular' }
|
40
|
-
client = Hawkular::Token::
|
40
|
+
client = Hawkular::Token::Client.new(HAWKULAR_BASE, creds, options)
|
41
41
|
begin
|
42
42
|
client.create_token(creds)
|
43
43
|
fail 'Should have failed with 401'
|
data/spec/spec_helper.rb
CHANGED
@@ -4,7 +4,7 @@ Coveralls.wear!
|
|
4
4
|
|
5
5
|
# Now the application requires.
|
6
6
|
require 'hawkular/hawkular_client'
|
7
|
-
require 'hawkular/
|
7
|
+
require 'hawkular/client_utils'
|
8
8
|
require 'rspec/core'
|
9
9
|
require 'rspec/mocks'
|
10
10
|
require 'socket'
|
@@ -18,11 +18,11 @@ module Hawkular::Inventory::RSpec
|
|
18
18
|
username: options[:username].nil? ? config['user'] : options[:username],
|
19
19
|
password: options[:password].nil? ? config['password'] : options[:password]
|
20
20
|
}
|
21
|
-
@client = Hawkular::Inventory::
|
21
|
+
@client = Hawkular::Inventory::Client.new(entrypoint, credentials, options)
|
22
22
|
end
|
23
23
|
|
24
24
|
def mock_inventory_client(for_version = '0.16.1.Final')
|
25
|
-
allow_any_instance_of(Hawkular::Inventory::
|
25
|
+
allow_any_instance_of(Hawkular::Inventory::Client).to receive(:fetch_version_and_status).and_return(
|
26
26
|
'Implementation-Version' => for_version
|
27
27
|
)
|
28
28
|
end
|
@@ -156,7 +156,7 @@ module Hawkular::Operations::RSpec
|
|
156
156
|
def wait_while
|
157
157
|
fast = WebSocketVCR.cassette && !WebSocketVCR.cassette.recording?
|
158
158
|
sleep_interval = SLEEP_SECONDS * (fast ? 1 : 10)
|
159
|
-
sleep_interval *=
|
159
|
+
sleep_interval *= 3 if ENV['TRAVIS']
|
160
160
|
attempt = 0
|
161
161
|
sleep sleep_interval while yield && (attempt += 1) < MAX_ATTEMPTS
|
162
162
|
if attempt == MAX_ATTEMPTS
|
@@ -181,7 +181,7 @@ end
|
|
181
181
|
module Helpers
|
182
182
|
def config
|
183
183
|
@config ||= YAML.load(
|
184
|
-
File.read(File.expand_path('endpoint.yml',
|
184
|
+
File.read(File.expand_path('endpoint.yml', __dir__))
|
185
185
|
)
|
186
186
|
end
|
187
187
|
|
@@ -196,6 +196,20 @@ module Helpers
|
|
196
196
|
"#{base['host']}:#{base['port']}"
|
197
197
|
end
|
198
198
|
|
199
|
+
def path_for_installed_agent(wf_server_path)
|
200
|
+
wf_server_path.to_resource('Local~%2Fsubsystem%3Dhawkular-wildfly-agent')
|
201
|
+
end
|
202
|
+
|
203
|
+
def in_container(inventory, resource_path)
|
204
|
+
properties = inventory.get_resource(resource_path, true).properties
|
205
|
+
properties.key?('In Container') ? (properties['In Container'] == 'true') : false
|
206
|
+
end
|
207
|
+
|
208
|
+
def immutable(inventory, resource_path)
|
209
|
+
properties = inventory.get_resource(resource_path, true).properties
|
210
|
+
properties.key?('Immutable') ? (properties['Immutable'] == 'true') : false
|
211
|
+
end
|
212
|
+
|
199
213
|
def make_template(base_directory, cassette_name, bindings)
|
200
214
|
cassette = cassette_name.gsub(/\s+/, '_')
|
201
215
|
input_file_path = "#{VCR.configuration.cassette_library_dir}/#{base_directory}/tmp/#{cassette}.yml"
|
@@ -291,7 +305,7 @@ RSpec.configure do |config|
|
|
291
305
|
config.include Hawkular::Inventory::RSpec
|
292
306
|
config.include Hawkular::Metrics::RSpec
|
293
307
|
config.include Hawkular::Operations::RSpec
|
294
|
-
config.include
|
308
|
+
config.include Hawkular::ClientUtils
|
295
309
|
config.include Hawkular::Inventory
|
296
310
|
|
297
311
|
# skip the tests that have the :skip metadata on them
|
data/spec/unit/base_spec.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
require_relative '../vcr/vcr_setup'
|
2
|
+
require_relative '../spec_helper'
|
3
3
|
|
4
4
|
describe 'Base Spec' do
|
5
5
|
it 'should know encode' do
|
@@ -77,13 +77,35 @@ describe 'Base Spec' do
|
|
77
77
|
expect(ret).to eq('a1%252%203%7c45%2f')
|
78
78
|
end
|
79
79
|
|
80
|
-
it 'should pass
|
80
|
+
it 'should pass through options to rest_client' do
|
81
|
+
proxy_uri = 'http://myproxy.com'
|
82
|
+
c = Hawkular::BaseClient.new('not-needed-for-this-test', {},
|
83
|
+
{ proxy: proxy_uri, timeout: 10 })
|
84
|
+
rc = c.rest_client('myurl')
|
85
|
+
|
86
|
+
expect(rc.options).to include(proxy: proxy_uri, timeout: 10)
|
87
|
+
end
|
88
|
+
|
89
|
+
# backward compatibility
|
90
|
+
it 'should pass :http_proxy_uri to rest_client :proxy' do
|
81
91
|
proxy_uri = 'http://myproxy.com'
|
82
92
|
c = Hawkular::BaseClient.new('not-needed-for-this-test', {},
|
83
93
|
{ http_proxy_uri: proxy_uri })
|
84
94
|
rc = c.rest_client('myurl')
|
85
95
|
|
86
96
|
expect(rc.options[:proxy]).to eq(proxy_uri)
|
97
|
+
expect(rc.options).to include(proxy: proxy_uri)
|
98
|
+
expect(rc.options).not_to have_key(:http_proxy_uri)
|
99
|
+
end
|
100
|
+
|
101
|
+
it 'should merge constructor, hawkular, and call headers' do
|
102
|
+
c = Hawkular::BaseClient.new('not-needed-for-this-test', {},
|
103
|
+
{ tenant: 'Me', headers: { 'X-Foo' => 'bar' } })
|
104
|
+
headers = c.http_headers('Referer' => 'them.example.com')
|
105
|
+
|
106
|
+
expect(headers).to include('Hawkular-Tenant': 'Me',
|
107
|
+
'Referer' => 'them.example.com',
|
108
|
+
'X-Foo' => 'bar')
|
87
109
|
end
|
88
110
|
|
89
111
|
it 'Should normalize different types of url and suffix combinations with or without slash' do
|
data/spec/unit/client_spec.rb
CHANGED
@@ -0,0 +1,19 @@
|
|
1
|
+
require_relative '../spec_helper'
|
2
|
+
|
3
|
+
describe 'Deprecations' do
|
4
|
+
def self.changed_constant(from:, to:)
|
5
|
+
describe to do
|
6
|
+
it 'is still accessible by its old name' do
|
7
|
+
expect(from).to eq to
|
8
|
+
end
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
describe 'pre-3.0' do
|
13
|
+
changed_constant from: HawkularUtilsMixin, to: Hawkular::ClientUtils
|
14
|
+
changed_constant from: Hawkular::Operations::OperationsClient, to: Hawkular::Operations::Client
|
15
|
+
changed_constant from: Hawkular::Alerts::AlertsClient, to: Hawkular::Alerts::Client
|
16
|
+
changed_constant from: Hawkular::Token::TokenClient, to: Hawkular::Token::Client
|
17
|
+
changed_constant from: Hawkular::Inventory::InventoryClient, to: Hawkular::Inventory::Client
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,210 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://<%= username %>:<%= password %>@localhost:8080/hawkular/alerts/
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Accept:
|
11
|
+
- application/json
|
12
|
+
Accept-Encoding:
|
13
|
+
- identity
|
14
|
+
User-Agent:
|
15
|
+
- hawkular-client-ruby
|
16
|
+
Hawkular-Tenant:
|
17
|
+
- hawkular
|
18
|
+
Content-Type:
|
19
|
+
- application/json
|
20
|
+
Host:
|
21
|
+
- localhost:8080
|
22
|
+
response:
|
23
|
+
status:
|
24
|
+
code: 200
|
25
|
+
message: OK
|
26
|
+
headers:
|
27
|
+
Expires:
|
28
|
+
- '0'
|
29
|
+
Cache-Control:
|
30
|
+
- no-cache, no-store, must-revalidate
|
31
|
+
X-Powered-By:
|
32
|
+
- Undertow/1
|
33
|
+
Server:
|
34
|
+
- WildFly/10
|
35
|
+
Pragma:
|
36
|
+
- no-cache
|
37
|
+
Date:
|
38
|
+
- Mon, 27 Feb 2017 23:22:51 GMT
|
39
|
+
X-Total-Count:
|
40
|
+
- '2'
|
41
|
+
Connection:
|
42
|
+
- keep-alive
|
43
|
+
Content-Type:
|
44
|
+
- application/json
|
45
|
+
Content-Length:
|
46
|
+
- '2578'
|
47
|
+
Link:
|
48
|
+
- <http://localhost:8080/hawkular/alerts/>; rel="current", <http://localhost:8080/hawkular/alerts/?page=0>;
|
49
|
+
rel="last"
|
50
|
+
body:
|
51
|
+
encoding: UTF-8
|
52
|
+
string: '[{"eventType":"ALERT","tenantId":"hawkular","id":"hello-world-trigger-1488237770801-406d7ed6-619e-4123-a427-4aa9bb97201a","ctime":1488237770801,"dataSource":"_none_","dataId":"hello-world-trigger","category":"ALERT","text":"A
|
53
|
+
mandatory Hello World Trigger","trigger":{"tenantId":"hawkular","id":"hello-world-trigger","name":"Hello
|
54
|
+
World Trigger","description":"A mandatory Hello World Trigger","type":"STANDARD","eventType":"ALERT","eventCategory":null,"eventText":null,"severity":"HIGH","autoDisable":false,"autoEnable":false,"autoResolve":false,"autoResolveAlerts":true,"autoResolveMatch":"ALL","enabled":true,"firingMatch":"ALL","source":"_none_"},"dampening":{"tenantId":"hawkular","triggerId":"hello-world-trigger","triggerMode":"FIRING","type":"STRICT","evalTrueSetting":1,"evalTotalSetting":1,"evalTimeSetting":0,"dampeningId":"hawkular-hello-world-trigger-FIRING"},"evalSets":[[{"evalTimestamp":1488237770800,"dataTimestamp":1488237770,"type":"THRESHOLD","condition":{"tenantId":"hawkular","triggerId":"hello-world-trigger","triggerMode":"FIRING","type":"THRESHOLD","conditionSetSize":1,"conditionSetIndex":1,"conditionId":"hawkular-hello-world-trigger-FIRING-1-1","dataId":"data-x","operator":"LT","threshold":5.0},"value":4.0}]],"severity":"HIGH","status":"OPEN","lifecycle":[{"status":"OPEN","user":"system","stime":1488237770801}]},{"eventType":"ALERT","tenantId":"hawkular","id":"a-trigger-1488237770802-b33d5fdf-b784-4f2f-a6b5-ddd65f94da44","ctime":1488237770802,"dataSource":"_none_","dataId":"a-trigger","category":"ALERT","text":"Just
|
55
|
+
a trigger","trigger":{"tenantId":"hawkular","id":"a-trigger","name":"A trigger
|
56
|
+
name","description":"Just a trigger","type":"STANDARD","eventType":"ALERT","eventCategory":null,"eventText":null,"severity":"HIGH","autoDisable":false,"autoEnable":false,"autoResolve":false,"autoResolveAlerts":true,"autoResolveMatch":"ALL","enabled":true,"firingMatch":"ALL","source":"_none_"},"dampening":{"tenantId":"hawkular","triggerId":"a-trigger","triggerMode":"FIRING","type":"STRICT","evalTrueSetting":1,"evalTotalSetting":1,"evalTimeSetting":0,"dampeningId":"hawkular-a-trigger-FIRING"},"evalSets":[[{"evalTimestamp":1488237770800,"dataTimestamp":1488237770,"type":"THRESHOLD","condition":{"tenantId":"hawkular","triggerId":"a-trigger","triggerMode":"FIRING","type":"THRESHOLD","conditionSetSize":1,"conditionSetIndex":1,"conditionId":"hawkular-a-trigger-FIRING-1-1","dataId":"data-x","operator":"LT","threshold":5.0},"value":4.0}]],"severity":"HIGH","status":"OPEN","lifecycle":[{"status":"OPEN","user":"system","stime":1488237770802}]}]'
|
57
|
+
http_version:
|
58
|
+
recorded_at: Mon, 27 Feb 2017 23:22:51 GMT
|
59
|
+
- request:
|
60
|
+
method: get
|
61
|
+
uri: http://<%= username %>:<%= password %>@localhost:8080/hawkular/alerts/?tags=new-tag-name%7Ctag_value&thin=true
|
62
|
+
body:
|
63
|
+
encoding: US-ASCII
|
64
|
+
string: ''
|
65
|
+
headers:
|
66
|
+
Accept:
|
67
|
+
- application/json
|
68
|
+
Accept-Encoding:
|
69
|
+
- identity
|
70
|
+
User-Agent:
|
71
|
+
- hawkular-client-ruby
|
72
|
+
Hawkular-Tenant:
|
73
|
+
- hawkular
|
74
|
+
Content-Type:
|
75
|
+
- application/json
|
76
|
+
Host:
|
77
|
+
- localhost:8080
|
78
|
+
response:
|
79
|
+
status:
|
80
|
+
code: 200
|
81
|
+
message: OK
|
82
|
+
headers:
|
83
|
+
Expires:
|
84
|
+
- '0'
|
85
|
+
Cache-Control:
|
86
|
+
- no-cache, no-store, must-revalidate
|
87
|
+
X-Powered-By:
|
88
|
+
- Undertow/1
|
89
|
+
Server:
|
90
|
+
- WildFly/10
|
91
|
+
Pragma:
|
92
|
+
- no-cache
|
93
|
+
Date:
|
94
|
+
- Mon, 27 Feb 2017 23:22:51 GMT
|
95
|
+
Connection:
|
96
|
+
- keep-alive
|
97
|
+
Content-Type:
|
98
|
+
- application/json
|
99
|
+
Content-Length:
|
100
|
+
- '2'
|
101
|
+
body:
|
102
|
+
encoding: UTF-8
|
103
|
+
string: "[]"
|
104
|
+
http_version:
|
105
|
+
recorded_at: Mon, 27 Feb 2017 23:22:51 GMT
|
106
|
+
- request:
|
107
|
+
method: put
|
108
|
+
uri: http://<%= username %>:<%= password %>@localhost:8080/hawkular/alerts/tags?alertIds=hello-world-trigger-1488237770801-406d7ed6-619e-4123-a427-4aa9bb97201a&tags=new-tag-name%7Ctag_value,othertag%7Cothervalue
|
109
|
+
body:
|
110
|
+
encoding: UTF-8
|
111
|
+
string: "{}"
|
112
|
+
headers:
|
113
|
+
Accept:
|
114
|
+
- application/json
|
115
|
+
Accept-Encoding:
|
116
|
+
- identity
|
117
|
+
User-Agent:
|
118
|
+
- hawkular-client-ruby
|
119
|
+
Hawkular-Tenant:
|
120
|
+
- hawkular
|
121
|
+
Content-Type:
|
122
|
+
- application/json
|
123
|
+
Content-Length:
|
124
|
+
- '2'
|
125
|
+
Host:
|
126
|
+
- localhost:8080
|
127
|
+
response:
|
128
|
+
status:
|
129
|
+
code: 200
|
130
|
+
message: OK
|
131
|
+
headers:
|
132
|
+
Expires:
|
133
|
+
- '0'
|
134
|
+
Cache-Control:
|
135
|
+
- no-cache, no-store, must-revalidate
|
136
|
+
X-Powered-By:
|
137
|
+
- Undertow/1
|
138
|
+
Server:
|
139
|
+
- WildFly/10
|
140
|
+
Pragma:
|
141
|
+
- no-cache
|
142
|
+
Date:
|
143
|
+
- Mon, 27 Feb 2017 23:22:51 GMT
|
144
|
+
Connection:
|
145
|
+
- keep-alive
|
146
|
+
Content-Type:
|
147
|
+
- application/json
|
148
|
+
Content-Length:
|
149
|
+
- '0'
|
150
|
+
body:
|
151
|
+
encoding: UTF-8
|
152
|
+
string: ''
|
153
|
+
http_version:
|
154
|
+
recorded_at: Mon, 27 Feb 2017 23:22:51 GMT
|
155
|
+
- request:
|
156
|
+
method: get
|
157
|
+
uri: http://<%= username %>:<%= password %>@localhost:8080/hawkular/alerts/?tags=new-tag-name%7Ctag_value&thin=true
|
158
|
+
body:
|
159
|
+
encoding: US-ASCII
|
160
|
+
string: ''
|
161
|
+
headers:
|
162
|
+
Accept:
|
163
|
+
- application/json
|
164
|
+
Accept-Encoding:
|
165
|
+
- identity
|
166
|
+
User-Agent:
|
167
|
+
- hawkular-client-ruby
|
168
|
+
Hawkular-Tenant:
|
169
|
+
- hawkular
|
170
|
+
Content-Type:
|
171
|
+
- application/json
|
172
|
+
Host:
|
173
|
+
- localhost:8080
|
174
|
+
response:
|
175
|
+
status:
|
176
|
+
code: 200
|
177
|
+
message: OK
|
178
|
+
headers:
|
179
|
+
Expires:
|
180
|
+
- '0'
|
181
|
+
Cache-Control:
|
182
|
+
- no-cache, no-store, must-revalidate
|
183
|
+
X-Powered-By:
|
184
|
+
- Undertow/1
|
185
|
+
Server:
|
186
|
+
- WildFly/10
|
187
|
+
Pragma:
|
188
|
+
- no-cache
|
189
|
+
Date:
|
190
|
+
- Mon, 27 Feb 2017 23:22:51 GMT
|
191
|
+
X-Total-Count:
|
192
|
+
- '1'
|
193
|
+
Connection:
|
194
|
+
- keep-alive
|
195
|
+
Content-Type:
|
196
|
+
- application/json
|
197
|
+
Content-Length:
|
198
|
+
- '816'
|
199
|
+
Link:
|
200
|
+
- <http://localhost:8080/hawkular/alerts/?tags=new-tag-name%7ctag_value&thin=true>;
|
201
|
+
rel="current", <http://localhost:8080/hawkular/alerts/?tags=new-tag-name%7ctag_value&thin=true&page=0>;
|
202
|
+
rel="last"
|
203
|
+
body:
|
204
|
+
encoding: UTF-8
|
205
|
+
string: '[{"eventType":"ALERT","tenantId":"hawkular","id":"hello-world-trigger-1488237770801-406d7ed6-619e-4123-a427-4aa9bb97201a","ctime":1488237770801,"dataSource":"_none_","dataId":"hello-world-trigger","category":"ALERT","text":"A
|
206
|
+
mandatory Hello World Trigger","tags":{"othertag":"othervalue","new-tag-name":"tag_value"},"trigger":{"tenantId":"hawkular","id":"hello-world-trigger","name":"Hello
|
207
|
+
World Trigger","description":"A mandatory Hello World Trigger","type":"STANDARD","eventType":"ALERT","eventCategory":null,"eventText":null,"severity":"HIGH","autoDisable":false,"autoEnable":false,"autoResolve":false,"autoResolveAlerts":true,"autoResolveMatch":"ALL","enabled":true,"firingMatch":"ALL","source":"_none_"},"severity":"HIGH","status":"OPEN","lifecycle":[{"status":"OPEN","user":"system","stime":1488237770801}]}]'
|
208
|
+
http_version:
|
209
|
+
recorded_at: Mon, 27 Feb 2017 23:22:51 GMT
|
210
|
+
recorded_with: VCR 3.0.3
|
@@ -0,0 +1,257 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://<%= username %>:<%= password %>@localhost:8080/hawkular/alerts/
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Accept:
|
11
|
+
- application/json
|
12
|
+
Accept-Encoding:
|
13
|
+
- identity
|
14
|
+
User-Agent:
|
15
|
+
- hawkular-client-ruby
|
16
|
+
Hawkular-Tenant:
|
17
|
+
- hawkular
|
18
|
+
Content-Type:
|
19
|
+
- application/json
|
20
|
+
Host:
|
21
|
+
- localhost:8080
|
22
|
+
response:
|
23
|
+
status:
|
24
|
+
code: 200
|
25
|
+
message: OK
|
26
|
+
headers:
|
27
|
+
Expires:
|
28
|
+
- '0'
|
29
|
+
Cache-Control:
|
30
|
+
- no-cache, no-store, must-revalidate
|
31
|
+
X-Powered-By:
|
32
|
+
- Undertow/1
|
33
|
+
Server:
|
34
|
+
- WildFly/10
|
35
|
+
Pragma:
|
36
|
+
- no-cache
|
37
|
+
Date:
|
38
|
+
- Tue, 28 Feb 2017 16:19:36 GMT
|
39
|
+
X-Total-Count:
|
40
|
+
- '2'
|
41
|
+
Connection:
|
42
|
+
- keep-alive
|
43
|
+
Content-Type:
|
44
|
+
- application/json
|
45
|
+
Content-Length:
|
46
|
+
- '2578'
|
47
|
+
Link:
|
48
|
+
- <http://localhost:8080/hawkular/alerts/>; rel="current", <http://localhost:8080/hawkular/alerts/?page=0>;
|
49
|
+
rel="last"
|
50
|
+
body:
|
51
|
+
encoding: UTF-8
|
52
|
+
string: '[{"eventType":"ALERT","tenantId":"hawkular","id":"hello-world-trigger-1488298775737-2d33eecd-a48a-49b9-87b2-f315068578cf","ctime":1488298775737,"dataSource":"_none_","dataId":"hello-world-trigger","category":"ALERT","text":"A
|
53
|
+
mandatory Hello World Trigger","trigger":{"tenantId":"hawkular","id":"hello-world-trigger","name":"Hello
|
54
|
+
World Trigger","description":"A mandatory Hello World Trigger","type":"STANDARD","eventType":"ALERT","eventCategory":null,"eventText":null,"severity":"HIGH","autoDisable":false,"autoEnable":false,"autoResolve":false,"autoResolveAlerts":true,"autoResolveMatch":"ALL","enabled":true,"firingMatch":"ALL","source":"_none_"},"dampening":{"tenantId":"hawkular","triggerId":"hello-world-trigger","triggerMode":"FIRING","type":"STRICT","evalTrueSetting":1,"evalTotalSetting":1,"evalTimeSetting":0,"dampeningId":"hawkular-hello-world-trigger-FIRING"},"evalSets":[[{"evalTimestamp":1488298775684,"dataTimestamp":1488298774,"type":"THRESHOLD","condition":{"tenantId":"hawkular","triggerId":"hello-world-trigger","triggerMode":"FIRING","type":"THRESHOLD","conditionSetSize":1,"conditionSetIndex":1,"conditionId":"hawkular-hello-world-trigger-FIRING-1-1","dataId":"data-x","operator":"LT","threshold":5.0},"value":4.0}]],"severity":"HIGH","status":"OPEN","lifecycle":[{"status":"OPEN","user":"system","stime":1488298775737}]},{"eventType":"ALERT","tenantId":"hawkular","id":"a-trigger-1488298775741-f3e64646-c22d-4349-8571-a0d34fdfd7ad","ctime":1488298775741,"dataSource":"_none_","dataId":"a-trigger","category":"ALERT","text":"Just
|
55
|
+
a trigger","trigger":{"tenantId":"hawkular","id":"a-trigger","name":"A trigger
|
56
|
+
name","description":"Just a trigger","type":"STANDARD","eventType":"ALERT","eventCategory":null,"eventText":null,"severity":"HIGH","autoDisable":false,"autoEnable":false,"autoResolve":false,"autoResolveAlerts":true,"autoResolveMatch":"ALL","enabled":true,"firingMatch":"ALL","source":"_none_"},"dampening":{"tenantId":"hawkular","triggerId":"a-trigger","triggerMode":"FIRING","type":"STRICT","evalTrueSetting":1,"evalTotalSetting":1,"evalTimeSetting":0,"dampeningId":"hawkular-a-trigger-FIRING"},"evalSets":[[{"evalTimestamp":1488298775683,"dataTimestamp":1488298774,"type":"THRESHOLD","condition":{"tenantId":"hawkular","triggerId":"a-trigger","triggerMode":"FIRING","type":"THRESHOLD","conditionSetSize":1,"conditionSetIndex":1,"conditionId":"hawkular-a-trigger-FIRING-1-1","dataId":"data-x","operator":"LT","threshold":5.0},"value":4.0}]],"severity":"HIGH","status":"OPEN","lifecycle":[{"status":"OPEN","user":"system","stime":1488298775741}]}]'
|
57
|
+
http_version:
|
58
|
+
recorded_at: Tue, 28 Feb 2017 16:19:36 GMT
|
59
|
+
- request:
|
60
|
+
method: put
|
61
|
+
uri: http://<%= username %>:<%= password %>@localhost:8080/hawkular/alerts/tags?alertIds=hello-world-trigger-1488298775737-2d33eecd-a48a-49b9-87b2-f315068578cf&tags=new-tag-name%7Ctag_value,othertag%7Cothervalue
|
62
|
+
body:
|
63
|
+
encoding: UTF-8
|
64
|
+
string: "{}"
|
65
|
+
headers:
|
66
|
+
Accept:
|
67
|
+
- application/json
|
68
|
+
Accept-Encoding:
|
69
|
+
- identity
|
70
|
+
User-Agent:
|
71
|
+
- hawkular-client-ruby
|
72
|
+
Hawkular-Tenant:
|
73
|
+
- hawkular
|
74
|
+
Content-Type:
|
75
|
+
- application/json
|
76
|
+
Content-Length:
|
77
|
+
- '2'
|
78
|
+
Host:
|
79
|
+
- localhost:8080
|
80
|
+
response:
|
81
|
+
status:
|
82
|
+
code: 200
|
83
|
+
message: OK
|
84
|
+
headers:
|
85
|
+
Expires:
|
86
|
+
- '0'
|
87
|
+
Cache-Control:
|
88
|
+
- no-cache, no-store, must-revalidate
|
89
|
+
X-Powered-By:
|
90
|
+
- Undertow/1
|
91
|
+
Server:
|
92
|
+
- WildFly/10
|
93
|
+
Pragma:
|
94
|
+
- no-cache
|
95
|
+
Date:
|
96
|
+
- Tue, 28 Feb 2017 16:19:36 GMT
|
97
|
+
Connection:
|
98
|
+
- keep-alive
|
99
|
+
Content-Type:
|
100
|
+
- application/json
|
101
|
+
Content-Length:
|
102
|
+
- '0'
|
103
|
+
body:
|
104
|
+
encoding: UTF-8
|
105
|
+
string: ''
|
106
|
+
http_version:
|
107
|
+
recorded_at: Tue, 28 Feb 2017 16:19:36 GMT
|
108
|
+
- request:
|
109
|
+
method: get
|
110
|
+
uri: http://<%= username %>:<%= password %>@localhost:8080/hawkular/alerts/?tags=new-tag-name%7Ctag_value&thin=true
|
111
|
+
body:
|
112
|
+
encoding: US-ASCII
|
113
|
+
string: ''
|
114
|
+
headers:
|
115
|
+
Accept:
|
116
|
+
- application/json
|
117
|
+
Accept-Encoding:
|
118
|
+
- identity
|
119
|
+
User-Agent:
|
120
|
+
- hawkular-client-ruby
|
121
|
+
Hawkular-Tenant:
|
122
|
+
- hawkular
|
123
|
+
Content-Type:
|
124
|
+
- application/json
|
125
|
+
Host:
|
126
|
+
- localhost:8080
|
127
|
+
response:
|
128
|
+
status:
|
129
|
+
code: 200
|
130
|
+
message: OK
|
131
|
+
headers:
|
132
|
+
Expires:
|
133
|
+
- '0'
|
134
|
+
Cache-Control:
|
135
|
+
- no-cache, no-store, must-revalidate
|
136
|
+
X-Powered-By:
|
137
|
+
- Undertow/1
|
138
|
+
Server:
|
139
|
+
- WildFly/10
|
140
|
+
Pragma:
|
141
|
+
- no-cache
|
142
|
+
Date:
|
143
|
+
- Tue, 28 Feb 2017 16:19:36 GMT
|
144
|
+
X-Total-Count:
|
145
|
+
- '1'
|
146
|
+
Connection:
|
147
|
+
- keep-alive
|
148
|
+
Content-Type:
|
149
|
+
- application/json
|
150
|
+
Content-Length:
|
151
|
+
- '816'
|
152
|
+
Link:
|
153
|
+
- <http://localhost:8080/hawkular/alerts/?tags=new-tag-name%7ctag_value&thin=true>;
|
154
|
+
rel="current", <http://localhost:8080/hawkular/alerts/?tags=new-tag-name%7ctag_value&thin=true&page=0>;
|
155
|
+
rel="last"
|
156
|
+
body:
|
157
|
+
encoding: UTF-8
|
158
|
+
string: '[{"eventType":"ALERT","tenantId":"hawkular","id":"hello-world-trigger-1488298775737-2d33eecd-a48a-49b9-87b2-f315068578cf","ctime":1488298775737,"dataSource":"_none_","dataId":"hello-world-trigger","category":"ALERT","text":"A
|
159
|
+
mandatory Hello World Trigger","tags":{"othertag":"othervalue","new-tag-name":"tag_value"},"trigger":{"tenantId":"hawkular","id":"hello-world-trigger","name":"Hello
|
160
|
+
World Trigger","description":"A mandatory Hello World Trigger","type":"STANDARD","eventType":"ALERT","eventCategory":null,"eventText":null,"severity":"HIGH","autoDisable":false,"autoEnable":false,"autoResolve":false,"autoResolveAlerts":true,"autoResolveMatch":"ALL","enabled":true,"firingMatch":"ALL","source":"_none_"},"severity":"HIGH","status":"OPEN","lifecycle":[{"status":"OPEN","user":"system","stime":1488298775737}]}]'
|
161
|
+
http_version:
|
162
|
+
recorded_at: Tue, 28 Feb 2017 16:19:36 GMT
|
163
|
+
- request:
|
164
|
+
method: delete
|
165
|
+
uri: http://<%= username %>:<%= password %>@localhost:8080/hawkular/alerts/tags?alertIds=hello-world-trigger-1488298775737-2d33eecd-a48a-49b9-87b2-f315068578cf&tagNames=new-tag-name
|
166
|
+
body:
|
167
|
+
encoding: US-ASCII
|
168
|
+
string: ''
|
169
|
+
headers:
|
170
|
+
Accept:
|
171
|
+
- application/json
|
172
|
+
Accept-Encoding:
|
173
|
+
- identity
|
174
|
+
User-Agent:
|
175
|
+
- hawkular-client-ruby
|
176
|
+
Hawkular-Tenant:
|
177
|
+
- hawkular
|
178
|
+
Content-Type:
|
179
|
+
- application/json
|
180
|
+
Host:
|
181
|
+
- localhost:8080
|
182
|
+
response:
|
183
|
+
status:
|
184
|
+
code: 200
|
185
|
+
message: OK
|
186
|
+
headers:
|
187
|
+
Expires:
|
188
|
+
- '0'
|
189
|
+
Cache-Control:
|
190
|
+
- no-cache, no-store, must-revalidate
|
191
|
+
X-Powered-By:
|
192
|
+
- Undertow/1
|
193
|
+
Server:
|
194
|
+
- WildFly/10
|
195
|
+
Pragma:
|
196
|
+
- no-cache
|
197
|
+
Date:
|
198
|
+
- Tue, 28 Feb 2017 16:19:36 GMT
|
199
|
+
Connection:
|
200
|
+
- keep-alive
|
201
|
+
Content-Type:
|
202
|
+
- application/json
|
203
|
+
Content-Length:
|
204
|
+
- '0'
|
205
|
+
body:
|
206
|
+
encoding: UTF-8
|
207
|
+
string: ''
|
208
|
+
http_version:
|
209
|
+
recorded_at: Tue, 28 Feb 2017 16:19:36 GMT
|
210
|
+
- request:
|
211
|
+
method: get
|
212
|
+
uri: http://<%= username %>:<%= password %>@localhost:8080/hawkular/alerts/?tags=new-tag-name%7Ctag_value&thin=true
|
213
|
+
body:
|
214
|
+
encoding: US-ASCII
|
215
|
+
string: ''
|
216
|
+
headers:
|
217
|
+
Accept:
|
218
|
+
- application/json
|
219
|
+
Accept-Encoding:
|
220
|
+
- identity
|
221
|
+
User-Agent:
|
222
|
+
- hawkular-client-ruby
|
223
|
+
Hawkular-Tenant:
|
224
|
+
- hawkular
|
225
|
+
Content-Type:
|
226
|
+
- application/json
|
227
|
+
Host:
|
228
|
+
- localhost:8080
|
229
|
+
response:
|
230
|
+
status:
|
231
|
+
code: 200
|
232
|
+
message: OK
|
233
|
+
headers:
|
234
|
+
Expires:
|
235
|
+
- '0'
|
236
|
+
Cache-Control:
|
237
|
+
- no-cache, no-store, must-revalidate
|
238
|
+
X-Powered-By:
|
239
|
+
- Undertow/1
|
240
|
+
Server:
|
241
|
+
- WildFly/10
|
242
|
+
Pragma:
|
243
|
+
- no-cache
|
244
|
+
Date:
|
245
|
+
- Tue, 28 Feb 2017 16:19:36 GMT
|
246
|
+
Connection:
|
247
|
+
- keep-alive
|
248
|
+
Content-Type:
|
249
|
+
- application/json
|
250
|
+
Content-Length:
|
251
|
+
- '2'
|
252
|
+
body:
|
253
|
+
encoding: UTF-8
|
254
|
+
string: "[]"
|
255
|
+
http_version:
|
256
|
+
recorded_at: Tue, 28 Feb 2017 16:19:36 GMT
|
257
|
+
recorded_with: VCR 3.0.3
|