hawkular-client 0.1.2 → 0.2.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 +3 -3
- data/CHANGES.rdoc +8 -0
- data/README.rdoc +12 -5
- data/hawkularclient.gemspec +2 -2
- data/lib/alerts/alerts_api.rb +193 -0
- data/lib/{hawkularclient.rb → hawkular.rb} +93 -52
- data/lib/hawkular_all.rb +7 -0
- data/lib/inventory/inventory_api.rb +378 -0
- data/lib/metrics/metric_api.rb +20 -10
- data/lib/metrics/metrics_client.rb +52 -0
- data/lib/metrics/tenant_api.rb +1 -1
- data/lib/metrics/version.rb +3 -1
- data/lib/version.rb +8 -0
- data/spec/integration/alerts_spec.rb +143 -0
- data/spec/integration/inventory_spec.rb +191 -0
- data/spec/integration/metric_spec.rb +33 -0
- data/spec/spec_helper.rb +14 -1
- data/spec/unit/base_spec.rb +57 -0
- data/spec/vcr_cassettes/Alert/Alerts/Should_acknowledge_an_alert.yml +183 -0
- data/spec/vcr_cassettes/Alert/Alerts/Should_fetch_single_alert.yml +69 -0
- data/spec/vcr_cassettes/Alert/Alerts/Should_list_alerts.yml +85 -0
- data/spec/vcr_cassettes/Alert/Alerts/Should_list_alerts_for_trigger.yml +142 -0
- data/spec/vcr_cassettes/Alert/Alerts/Should_list_alerts_for_unknown_trigger.yml +46 -0
- data/spec/vcr_cassettes/Alert/Alerts/Should_resolve_an_alert.yml +181 -0
- data/spec/vcr_cassettes/Alert/Alerts/Should_resolve_an_alert2.yml +49 -0
- data/spec/vcr_cassettes/Alert/Triggers/Should_List_Triggers.yml +62 -0
- data/spec/vcr_cassettes/Alert/Triggers/Should_List_Triggers_for_ID.yml +55 -0
- data/spec/vcr_cassettes/Alert/Triggers/Should_List_Triggers_for_Tag.yml +68 -0
- data/spec/vcr_cassettes/Alert/Triggers/Should_List_Triggers_for_Tags.yml +68 -0
- data/spec/vcr_cassettes/Alert/Triggers/Should_get_a_single_Trigger_with_conditions.yml +138 -0
- data/spec/vcr_cassettes/Alert/Triggers/Should_get_a_single_metric_Trigger.yml +50 -0
- data/spec/vcr_cassettes/Gauge_metrics/Platform_mem.yml +44 -0
- data/spec/vcr_cassettes/Gauge_metrics/Platform_mem_def.yml +45 -0
- data/spec/vcr_cassettes/Inventory/Should_List_datasources_with_no_props.yml +228 -0
- data/spec/vcr_cassettes/Inventory/Should_list_URLs.yml +105 -0
- data/spec/vcr_cassettes/Inventory/Should_list_WildFlys.yml +104 -0
- data/spec/vcr_cassettes/Inventory/Should_list_WildFlys_with_props.yml +162 -0
- data/spec/vcr_cassettes/Inventory/Should_list_children_of_WildFly.yml +180 -0
- data/spec/vcr_cassettes/Inventory/Should_list_feeds.yml +102 -0
- data/spec/vcr_cassettes/Inventory/Should_list_heap_metrics_for_WildFlys.yml +308 -0
- data/spec/vcr_cassettes/Inventory/Should_list_metrics_for_WildFlys.yml +172 -0
- data/spec/vcr_cassettes/Inventory/Should_list_types_with_bad_feed.yml +101 -0
- data/spec/vcr_cassettes/Inventory/Should_list_types_with_feed.yml +109 -0
- data/spec/vcr_cassettes/Inventory/Should_list_types_without_feed.yml +110 -0
- data/spec/vcr_cassettes/Metrics/Status.yml +44 -0
- data/spec/vcr_cassettes/No_Tenant/Should_fail.yml +42 -0
- data/spec/vcr_cassettes/Tenants/Should_Get_Tenant_For_Explicit_Credentials.yml +50 -0
- data/spec/vcr_cassettes/Tenants/Should_Get_Tenant_For_Implicit_Credentials.yml +50 -0
- metadata +74 -3
@@ -0,0 +1,52 @@
|
|
1
|
+
|
2
|
+
require 'hawkular'
|
3
|
+
require 'json'
|
4
|
+
require 'rest-client'
|
5
|
+
require 'English'
|
6
|
+
|
7
|
+
require 'metrics/types'
|
8
|
+
require 'metrics/tenant_api'
|
9
|
+
require 'metrics/metric_api'
|
10
|
+
|
11
|
+
# Metrics module provides access to Hawkular Metrics REST API
|
12
|
+
# @see http://www.hawkular.org/docs/rest/rest-metrics.html Hawkular Metrics REST API Documentation
|
13
|
+
# @example Create Hawkular-Metrics client and start pushing some metric data
|
14
|
+
# # create client instance
|
15
|
+
# client = Hawkular::Metrics::Client::new("http://server","username",
|
16
|
+
# "password",{"tenant" => "your tenant ID"})
|
17
|
+
# # push gauge metric data for metric called "myGauge" (no need to create metric definition
|
18
|
+
# # unless you wish to specify data retention)
|
19
|
+
# client.gauges.push_data("myGauge", {:value => 3.1415925})
|
20
|
+
module Hawkular::Metrics
|
21
|
+
class Client < Hawkular::BaseClient
|
22
|
+
# @return [Tenants] access tenants API
|
23
|
+
attr_reader :tenants
|
24
|
+
# @return [Counters] access counters API
|
25
|
+
attr_reader :counters
|
26
|
+
# @return [Gauges] access gauges API
|
27
|
+
attr_reader :gauges
|
28
|
+
# @return [Availability] access counters API
|
29
|
+
attr_reader :avail
|
30
|
+
|
31
|
+
# Construct a new Hawkular Metrics client class.
|
32
|
+
# optional parameters
|
33
|
+
# @param entrypoint [String] Base url of the Hawkular (metrics) server
|
34
|
+
# @param credentials Hash of username, password, token(optional)
|
35
|
+
# @param options [Hash{String=>String}] client options
|
36
|
+
# @example initialize with Hawkular-tenant option
|
37
|
+
# Hawkular::Metrics::Client::new("http://server",
|
38
|
+
# {username:"username",password:"password"},
|
39
|
+
# {"tenant" => "your tenant ID"})
|
40
|
+
#
|
41
|
+
def initialize(entrypoint = 'http://localhost:8080/hawkular/metrics',
|
42
|
+
credentials = {},
|
43
|
+
options = {})
|
44
|
+
|
45
|
+
super(entrypoint, credentials, options)
|
46
|
+
@tenants = Client::Tenants.new self
|
47
|
+
@counters = Client::Counters.new self
|
48
|
+
@gauges = Client::Gauges.new self
|
49
|
+
@avail = Client::Availability.new self
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
data/lib/metrics/tenant_api.rb
CHANGED
data/lib/metrics/version.rb
CHANGED
data/lib/version.rb
ADDED
@@ -0,0 +1,143 @@
|
|
1
|
+
require "#{File.dirname(__FILE__)}/../vcr/vcr_setup"
|
2
|
+
require "#{File.dirname(__FILE__)}/../spec_helper"
|
3
|
+
|
4
|
+
module Hawkular::Alerts::RSpec
|
5
|
+
ALERTS_BASE = 'http://localhost:8080/hawkular/alerts'
|
6
|
+
creds = { username: 'jdoe', password: 'password' }
|
7
|
+
|
8
|
+
describe 'Alert/Triggers', :vcr do
|
9
|
+
it 'Should List Triggers' do
|
10
|
+
client = Hawkular::Alerts::AlertsClient.new(ALERTS_BASE, creds)
|
11
|
+
|
12
|
+
triggers = client.list_triggers
|
13
|
+
|
14
|
+
expect(triggers.size).to be(3)
|
15
|
+
end
|
16
|
+
|
17
|
+
it 'Should List Triggers for Tag' do
|
18
|
+
client = Hawkular::Alerts::AlertsClient.new(ALERTS_BASE, creds)
|
19
|
+
|
20
|
+
triggers = client.list_triggers [], ['resourceId|75bfdd05-d03d-481e-bf32-c724c7719d8b~Local']
|
21
|
+
|
22
|
+
expect(triggers.size).to be(7)
|
23
|
+
end
|
24
|
+
|
25
|
+
it 'Should List Triggers for Tags' do
|
26
|
+
client = Hawkular::Alerts::AlertsClient.new(ALERTS_BASE, creds)
|
27
|
+
|
28
|
+
triggers = client.list_triggers [], ['resourceId|75bfdd05-d03d-481e-bf32-c724c7719d8b~Local',
|
29
|
+
'app|MyShop']
|
30
|
+
|
31
|
+
expect(triggers.size).to be(7)
|
32
|
+
end
|
33
|
+
|
34
|
+
it 'Should List Triggers for ID' do
|
35
|
+
client = Hawkular::Alerts::AlertsClient.new(ALERTS_BASE, creds)
|
36
|
+
|
37
|
+
triggers = client.list_triggers ['75bfdd05-d03d-481e-bf32-c724c7719d8b~Local_jvm_pheap']
|
38
|
+
|
39
|
+
expect(triggers.size).to be(1)
|
40
|
+
end
|
41
|
+
|
42
|
+
it 'Should get a single metric Trigger' do
|
43
|
+
client = Hawkular::Alerts::AlertsClient.new(ALERTS_BASE, creds)
|
44
|
+
|
45
|
+
trigger = client.get_single_trigger('snert~Local_jvm_nheap')
|
46
|
+
|
47
|
+
expect(trigger).not_to be_nil
|
48
|
+
end
|
49
|
+
|
50
|
+
it 'Should get a single Trigger with conditions' do
|
51
|
+
client = Hawkular::Alerts::AlertsClient.new(ALERTS_BASE, creds)
|
52
|
+
|
53
|
+
trigger = client.get_single_trigger 'snert~Local_jvm_nheap', true
|
54
|
+
|
55
|
+
expect(trigger).not_to be_nil
|
56
|
+
expect(trigger.conditions.size).to be(1)
|
57
|
+
expect(trigger.dampenings.size).to be(1)
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
describe 'Alert/Alerts', :vcr do
|
62
|
+
it 'Should list alerts' do
|
63
|
+
client = Hawkular::Alerts::AlertsClient.new(ALERTS_BASE, creds)
|
64
|
+
|
65
|
+
alerts = client.list_alerts
|
66
|
+
|
67
|
+
expect(alerts).to_not be_nil
|
68
|
+
expect(alerts.size).to be(2)
|
69
|
+
end
|
70
|
+
|
71
|
+
it 'Should list alerts for trigger' do
|
72
|
+
client = Hawkular::Alerts::AlertsClient.new(ALERTS_BASE, creds)
|
73
|
+
|
74
|
+
alerts = client.get_alerts_for_trigger '75bfdd05-d03d-481e-bf32-c724c7719d8b~Local_jvm_pheap'
|
75
|
+
|
76
|
+
expect(alerts).to_not be_nil
|
77
|
+
expect(alerts.size).to be(1)
|
78
|
+
end
|
79
|
+
|
80
|
+
it 'Should list alerts for unknown trigger' do
|
81
|
+
client = Hawkular::Alerts::AlertsClient.new(ALERTS_BASE, creds)
|
82
|
+
|
83
|
+
alerts = client.get_alerts_for_trigger 'does-not-exist'
|
84
|
+
|
85
|
+
expect(alerts).to_not be_nil
|
86
|
+
expect(alerts.size).to be(0)
|
87
|
+
end
|
88
|
+
|
89
|
+
it 'Should fetch single alert' do
|
90
|
+
client = Hawkular::Alerts::AlertsClient.new(ALERTS_BASE, creds)
|
91
|
+
|
92
|
+
alert = client.get_single_alert(
|
93
|
+
'28026b36-8fe4-4332-84c8-524e173a68bf-snert~Local_jvm_garba-1446977734134')
|
94
|
+
|
95
|
+
expect(alert).to_not be_nil
|
96
|
+
expect(alert.alertId)
|
97
|
+
.to eql('28026b36-8fe4-4332-84c8-524e173a68bf-snert~Local_jvm_garba-1446977734134')
|
98
|
+
end
|
99
|
+
|
100
|
+
it 'Should resolve an alert' do
|
101
|
+
client = Hawkular::Alerts::AlertsClient.new(ALERTS_BASE, creds)
|
102
|
+
|
103
|
+
alert_id = '28026b36-8fe4-4332-84c8-524e173a68bf-snert~Local_jvm_garba-1446977734134'
|
104
|
+
alert = client.get_single_alert alert_id
|
105
|
+
|
106
|
+
expect(alert.status).to eql('OPEN')
|
107
|
+
|
108
|
+
client.resolve_alert(alert_id, 'Heiko', 'Hello Ruby World :-)')
|
109
|
+
|
110
|
+
alert = client.get_single_alert alert_id
|
111
|
+
expect(alert.status).to eql('RESOLVED')
|
112
|
+
end
|
113
|
+
|
114
|
+
# # TODO enable when the semantics on the server side is known
|
115
|
+
# it 'Should resolve an alert2' do
|
116
|
+
# client = Hawkular::Alerts::AlertsClient.new(ALERTS_BASE,creds)
|
117
|
+
#
|
118
|
+
# alert_id = '28026b36-8fe4-4332-84c8-524e173a68bf-snert~Local_jvm_garba-1446977734134'
|
119
|
+
# client.resolve_alert alert_id
|
120
|
+
#
|
121
|
+
# end
|
122
|
+
|
123
|
+
it 'Should acknowledge an alert' do
|
124
|
+
client = Hawkular::Alerts::AlertsClient.new(ALERTS_BASE, creds)
|
125
|
+
|
126
|
+
alert_id = '28026b36-8fe4-4332-84c8-524e173a68bf-snert~Local_jvm_garba-1446977734134'
|
127
|
+
client.get_single_alert alert_id
|
128
|
+
|
129
|
+
client.acknowledge_alert(alert_id, 'Heiko', 'Hello Ruby World :-)')
|
130
|
+
|
131
|
+
alert = client.get_single_alert alert_id
|
132
|
+
expect(alert.ackBy).to eql('Heiko')
|
133
|
+
end
|
134
|
+
end
|
135
|
+
|
136
|
+
# TODO: enable when alerts supports it
|
137
|
+
# describe 'Alerts' do
|
138
|
+
# it 'Should return the version' do
|
139
|
+
# data = @client.get_version_and_status
|
140
|
+
# expect(data).not_to be_nil
|
141
|
+
# end
|
142
|
+
# end
|
143
|
+
end
|
@@ -0,0 +1,191 @@
|
|
1
|
+
require "#{File.dirname(__FILE__)}/../vcr/vcr_setup"
|
2
|
+
require "#{File.dirname(__FILE__)}/../spec_helper"
|
3
|
+
|
4
|
+
module Hawkular::Inventory::RSpec
|
5
|
+
INVENTORY_BASE = 'http://localhost:8080/hawkular/inventory'
|
6
|
+
describe 'Tenants', :vcr do
|
7
|
+
it 'Should Get Tenant For Explicit Credentials' do
|
8
|
+
creds = { username: 'jdoe', password: 'password' }
|
9
|
+
|
10
|
+
client = Hawkular::Inventory::InventoryClient.new(INVENTORY_BASE, creds)
|
11
|
+
|
12
|
+
tenant = client.get_tenant(creds)
|
13
|
+
|
14
|
+
expect tenant.nil?
|
15
|
+
expect tenant.eql?('28026b36-8fe4-4332-84c8-524e173a68bf')
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'Should Get Tenant For Implicit Credentials' do
|
19
|
+
creds = { username: 'jdoe', password: 'password' }
|
20
|
+
|
21
|
+
client = Hawkular::Inventory::InventoryClient.new(INVENTORY_BASE, creds)
|
22
|
+
|
23
|
+
tenant = client.get_tenant
|
24
|
+
|
25
|
+
expect tenant.nil?
|
26
|
+
|
27
|
+
expect tenant.eql?('28026b36-8fe4-4332-84c8-524e173a68bf')
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
describe 'Inventory', :vcr do
|
32
|
+
it 'Should list feeds' do
|
33
|
+
creds = { username: 'jdoe', password: 'password' }
|
34
|
+
|
35
|
+
client = Hawkular::Inventory::InventoryClient.new(INVENTORY_BASE, creds)
|
36
|
+
client.impersonate
|
37
|
+
|
38
|
+
feeds = client.list_feeds
|
39
|
+
|
40
|
+
expect(feeds.size).to be(1)
|
41
|
+
end
|
42
|
+
|
43
|
+
it 'Should list types without feed' do
|
44
|
+
creds = { username: 'jdoe', password: 'password' }
|
45
|
+
|
46
|
+
client = Hawkular::Inventory::InventoryClient.new(INVENTORY_BASE, creds)
|
47
|
+
client.impersonate
|
48
|
+
|
49
|
+
types = client.list_resource_types
|
50
|
+
|
51
|
+
expect(types.size).to be(17)
|
52
|
+
end
|
53
|
+
|
54
|
+
it 'Should list types with feed' do
|
55
|
+
creds = { username: 'jdoe', password: 'password' }
|
56
|
+
|
57
|
+
client = Hawkular::Inventory::InventoryClient.new(INVENTORY_BASE, creds)
|
58
|
+
client.impersonate
|
59
|
+
|
60
|
+
types = client.list_resource_types('snert')
|
61
|
+
|
62
|
+
expect(types.size).to be(16)
|
63
|
+
end
|
64
|
+
|
65
|
+
it 'Should list types with bad feed' do
|
66
|
+
creds = { username: 'jdoe', password: 'password' }
|
67
|
+
|
68
|
+
client = Hawkular::Inventory::InventoryClient.new(INVENTORY_BASE, creds)
|
69
|
+
client.impersonate
|
70
|
+
|
71
|
+
type = 'does not exist'
|
72
|
+
types = client.list_resource_types(type)
|
73
|
+
expect(type).to eq('does not exist')
|
74
|
+
|
75
|
+
expect(types.size).to be(0)
|
76
|
+
end
|
77
|
+
|
78
|
+
it 'Should list WildFlys' do
|
79
|
+
creds = { username: 'jdoe', password: 'password' }
|
80
|
+
|
81
|
+
client = Hawkular::Inventory::InventoryClient.new(INVENTORY_BASE, creds)
|
82
|
+
client.impersonate
|
83
|
+
|
84
|
+
resources = client.list_resources_for_type('snert', 'WildFly Server')
|
85
|
+
|
86
|
+
expect(resources.size).to be(1)
|
87
|
+
wf = resources.first
|
88
|
+
expect(wf.properties.size).to be(0)
|
89
|
+
end
|
90
|
+
|
91
|
+
it 'Should list WildFlys with props' do
|
92
|
+
creds = { username: 'jdoe', password: 'password' }
|
93
|
+
|
94
|
+
client = Hawkular::Inventory::InventoryClient.new(INVENTORY_BASE, creds)
|
95
|
+
client.impersonate
|
96
|
+
|
97
|
+
resources = client.list_resources_for_type('snert', 'WildFly Server', true)
|
98
|
+
|
99
|
+
expect(resources.size).to be(1)
|
100
|
+
wf = resources.first
|
101
|
+
expect(wf.properties['Hostname']).to eq('snert')
|
102
|
+
end
|
103
|
+
|
104
|
+
it 'Should List datasources with no props' do
|
105
|
+
creds = { username: 'jdoe', password: 'password' }
|
106
|
+
|
107
|
+
client = Hawkular::Inventory::InventoryClient.new(INVENTORY_BASE, creds)
|
108
|
+
client.impersonate
|
109
|
+
|
110
|
+
resources = client.list_resources_for_type('snert', 'Datasource', true)
|
111
|
+
|
112
|
+
expect(resources.size).to be(2)
|
113
|
+
wf = resources.first
|
114
|
+
expect(wf.properties.size).to be(0) # They have no props
|
115
|
+
end
|
116
|
+
|
117
|
+
it 'Should list URLs' do
|
118
|
+
creds = { username: 'jdoe', password: 'password' }
|
119
|
+
|
120
|
+
client = Hawkular::Inventory::InventoryClient.new(INVENTORY_BASE, creds)
|
121
|
+
client.impersonate
|
122
|
+
|
123
|
+
resources = client.list_resources_for_type(nil, 'URL')
|
124
|
+
|
125
|
+
expect(resources.size).to be(1)
|
126
|
+
resource = resources[0]
|
127
|
+
expect(resource.instance_of? Hawkular::Inventory::Resource).to be_truthy
|
128
|
+
expect(resource.properties.size).to be(5)
|
129
|
+
expect(resource.properties['url']).to eq('http://bsd.de')
|
130
|
+
end
|
131
|
+
|
132
|
+
it 'Should list metrics for WildFlys' do
|
133
|
+
creds = { username: 'jdoe', password: 'password' }
|
134
|
+
|
135
|
+
client = Hawkular::Inventory::InventoryClient.new(INVENTORY_BASE, creds)
|
136
|
+
client.impersonate
|
137
|
+
|
138
|
+
resources = client.list_resources_for_type('snert', 'WildFly Server')
|
139
|
+
expect(resources.size).to be(1)
|
140
|
+
|
141
|
+
wild_fly = resources[0]
|
142
|
+
|
143
|
+
metrics = client.list_metrics_for_resource(wild_fly)
|
144
|
+
|
145
|
+
expect(metrics.size).to be(14)
|
146
|
+
end
|
147
|
+
|
148
|
+
it 'Should list children of WildFly' do
|
149
|
+
creds = { username: 'jdoe', password: 'password' }
|
150
|
+
|
151
|
+
client = Hawkular::Inventory::InventoryClient.new(INVENTORY_BASE, creds)
|
152
|
+
client.impersonate
|
153
|
+
|
154
|
+
resources = client.list_resources_for_type('snert', 'WildFly Server')
|
155
|
+
expect(resources.size).to be(1)
|
156
|
+
|
157
|
+
wild_fly = resources[0]
|
158
|
+
|
159
|
+
metrics = client.list_child_resources(wild_fly)
|
160
|
+
|
161
|
+
expect(metrics.size).to be(21)
|
162
|
+
end
|
163
|
+
|
164
|
+
it 'Should list heap metrics for WildFlys' do
|
165
|
+
creds = { username: 'jdoe', password: 'password' }
|
166
|
+
|
167
|
+
client = Hawkular::Inventory::InventoryClient.new(INVENTORY_BASE, creds)
|
168
|
+
client.impersonate
|
169
|
+
|
170
|
+
resources = client.list_resources_for_type('snert', 'WildFly Server')
|
171
|
+
expect(resources.size).to be(1)
|
172
|
+
|
173
|
+
wild_fly = resources[0]
|
174
|
+
|
175
|
+
metrics = client.list_metrics_for_resource(wild_fly, type: 'GAUGE', match: 'Metrics~Heap')
|
176
|
+
expect(metrics.size).to be(3)
|
177
|
+
|
178
|
+
metrics = client.list_metrics_for_resource(wild_fly, match: 'Metrics~Heap')
|
179
|
+
expect(metrics.size).to be(3)
|
180
|
+
|
181
|
+
metrics = client.list_metrics_for_resource(wild_fly, type: 'GAUGE')
|
182
|
+
expect(metrics.size).to be(10)
|
183
|
+
end
|
184
|
+
|
185
|
+
# TODO: enable when inventory supports it
|
186
|
+
# it 'Should return the version' do
|
187
|
+
# data = @client.get_version_and_status
|
188
|
+
# expect(data).not_to be_nil
|
189
|
+
# end
|
190
|
+
end
|
191
|
+
end
|
@@ -350,4 +350,37 @@ describe 'Gauge metrics' do
|
|
350
350
|
expect(data[0][1]).to eql(now)
|
351
351
|
end
|
352
352
|
end
|
353
|
+
|
354
|
+
it 'Should return platform memory def' do
|
355
|
+
tenant_id = '28026b36-8fe4-4332-84c8-524e173a68bf'
|
356
|
+
setup_client tenant: tenant_id
|
357
|
+
|
358
|
+
VCR.use_cassette('Gauge_metrics/Platform mem def') do
|
359
|
+
# The next id is not a real one, but shortened for rubocpo
|
360
|
+
mem_id = 'MI~R~[snert~platform~/OP_SYSTEM=Apple (Capitan) 42/MEMORY=Mem]~MT~Total Memory'
|
361
|
+
data = @client.gauges.get(mem_id)
|
362
|
+
|
363
|
+
expect(data).not_to be_nil
|
364
|
+
expect(data.id).not_to be_nil
|
365
|
+
expect(data.tenant_id).to eq(tenant_id)
|
366
|
+
end
|
367
|
+
end
|
368
|
+
|
369
|
+
it 'Should return platform memory' do
|
370
|
+
setup_client tenant: '28026b36-8fe4-4332-84c8-524e173a68bf'
|
371
|
+
|
372
|
+
VCR.use_cassette('Gauge_metrics/Platform mem') do
|
373
|
+
# The next id is not a real one, but shortened for rubocpo
|
374
|
+
mem_id = 'MI~R~[snert~platform~/OP_SYSTEM=Apple (Capitan) 42/MEMORY=Mem]~MT~Total Memory'
|
375
|
+
data = @client.gauges.get_data(mem_id)
|
376
|
+
expect(data.size).to be 71
|
377
|
+
end
|
378
|
+
end
|
379
|
+
|
380
|
+
it 'Should return the version' do
|
381
|
+
VCR.use_cassette('Metrics/Status') do
|
382
|
+
data = @client.fetch_version_and_status
|
383
|
+
expect(data).not_to be_nil
|
384
|
+
end
|
385
|
+
end
|
353
386
|
end
|