xcal-parktronic 1.1.1 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (32) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +10 -1
  3. data/lib/xcal/parktronic/routes/alarms.rb +20 -8
  4. data/lib/xcal/parktronic/routes/events.rb +33 -1
  5. data/lib/xcal/parktronic/routes/metrics.rb +18 -0
  6. data/lib/xcal/parktronic/version.rb +1 -1
  7. data/spec/lib/xcal/parktronic/routes/alarms_route_spec.rb +15 -3
  8. data/spec/lib/xcal/parktronic/routes/event_history_items_routes_spec.rb +2 -2
  9. data/spec/lib/xcal/parktronic/routes/events_route_spec.rb +9 -2
  10. data/spec/lib/xcal/parktronic/routes/metrics_routes_spec.rb +9 -0
  11. data/spec/lib/xcal/parktronic/routes/nested/events_spec.rb +13 -1
  12. data/spec/support/api_mock.rb +16 -0
  13. data/spec/support/fixtures/responses/alarm.json +5 -2
  14. data/spec/support/fixtures/responses/alarm_action.json +2 -2
  15. data/spec/support/fixtures/responses/alarm_actions.json +3 -3
  16. data/spec/support/fixtures/responses/alarm_events.json +333 -33
  17. data/spec/support/fixtures/responses/alarm_post.json +24 -4
  18. data/spec/support/fixtures/responses/alarm_tags.json +1 -1
  19. data/spec/support/fixtures/responses/alarms_page_1.json +51 -21
  20. data/spec/support/fixtures/responses/alarms_page_2.json +51 -21
  21. data/spec/support/fixtures/responses/alarms_post.json +2 -2
  22. data/spec/support/fixtures/responses/brouha_products_services.json +15 -0
  23. data/spec/support/fixtures/responses/event.json +34 -7
  24. data/spec/support/fixtures/responses/events_history_page_1.json +5 -5
  25. data/spec/support/fixtures/responses/events_history_page_2.json +5 -5
  26. data/spec/support/fixtures/responses/events_page_1.json +105 -0
  27. data/spec/support/fixtures/responses/metrics_calculate.json +13 -0
  28. data/spec/support/fixtures/responses/stack_changes_page_1.json +20 -10
  29. data/spec/support/fixtures/responses/stack_changes_page_2.json +20 -10
  30. data/xcal-parktronic.gemspec +0 -1
  31. metadata +9 -5
  32. data/spec/support/fixtures/responses/events.json +0 -42
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8057f2efafca620685764ed3dd5cc8267c77a123
4
- data.tar.gz: 7a47b24b82a219d3a0f314afc9717d58b2afd298
3
+ metadata.gz: a1daf819502ce921740c2c563961f2d61fb51382
4
+ data.tar.gz: bbcdcf236efc8cd55f1bdd782f0607056180e75e
5
5
  SHA512:
6
- metadata.gz: f23baad4026bad69c378f1de3f086da03bbad271d17318e382d3a6d1f347580c86edc8bd19979a0b6bb2d71d2e481a1191da064200ed8bfbde2fd15eb6962364
7
- data.tar.gz: b171c1c4bb465070bef286e792bb198df9f863b36cc296083f7accc1a00408905da58dd1aeabc59b246b317f0d16429d24195c9a3ca2de019832c0b93b3ba216
6
+ metadata.gz: d0d0d2f6913f3712fedcc262510d19c4b37bfb81c9ecaaf88b42128b82e41b8b2cd3ad6b986224170c4b5f197d92a435679fdac12db0583acf3f3383f0ef1825
7
+ data.tar.gz: 9e5476341e9251d358574ac731a44210c2112a4491b096ec4655c46bc128b973ecc54fe76cd8553d055db36e0f1d731744a54cf7f5aeaedf63865c27823ee0b9
data/README.md CHANGED
@@ -49,6 +49,8 @@ api.search_alarm(name: 'test alarm')
49
49
  api.search_alarm(tagged_with: 'test alarm', time_range: 120)
50
50
  api.search_alarm(where: {impact_level: 'Unknown', originating_system: 'test'}, time_range: 120)
51
51
  api.search_alarm(extends: ['latest_event', 'with_most_recent_events'], time_range: 120)
52
+
53
+ api.brouha_products_services
52
54
  ```
53
55
 
54
56
  ### Alarm Actions
@@ -69,6 +71,11 @@ api.event_tags( event_id )
69
71
  api.alarm( alarm_id ).get_events( page: 2, per_page: 4 )
70
72
  api.alarm( alarm_id ).get_all_events
71
73
  api.alarm( alarm_id ).post_event( event_params )
74
+
75
+ api.search_events(search: {subject: 'test event', incident_ticket_id: '23'})
76
+ api.search_events(scopes: {tagged_with: 'test event tag', general_filter: 'ticketed'})
77
+ api.search_events(where: {event_status: 'Critical', incident_ticket_id: 'IFS-23'})
78
+ api.search_events(extends: ['alarm_impact_level'])
72
79
  ```
73
80
 
74
81
  ### Events history
@@ -91,6 +98,8 @@ api.metric( metric_id ).get_metric_values
91
98
  api.metric( metric_id ).get_metric_values( page: 2, per_page: 4 )
92
99
  api.metric( metric_id ).get_value_groups
93
100
  api.metric( metric_id ).get_value_groups( page: 2, per_page: 4 )
101
+
102
+ api.metrics_calculate_summary( start_time: start_time, end_time: end_time, ids: [metric_id_1, metric_id_2] )
94
103
  ```
95
104
 
96
105
  ### Data Center Service States
@@ -125,4 +134,4 @@ api.stack_changes( time_range: { time_offset: -1, start_date: 0, start_time: 144
125
134
  api.command_notifications
126
135
  api.command_notifications( page: 1, per_page: 2 )
127
136
  api.update_command_notification( command_notification_id )
128
- ```
137
+ ```
@@ -136,20 +136,32 @@ module Xcal
136
136
  custom_scopes[:tagged_with] = args[:tagged_with] unless args[:tagged_with].nil?
137
137
 
138
138
  # Params for request
139
- scopes = URI.escape(custom_scopes.to_json)
140
- search = URI.escape({name: args.fetch(:name, '')}.to_json)
141
- extends = URI.escape(args.fetch(:extends, []).to_json)
142
- filter = URI.escape(args.fetch(:filter, filter).to_json)
143
- where = URI.escape(args.fetch(:where, '').to_json)
144
- page = args.fetch(:page, 1)
145
- per_page = args.fetch(:per_page, 100)
139
+ scopes = URI.escape(custom_scopes.to_json)
140
+ search = URI.escape({name: args.fetch(:name, '')}.to_json)
141
+ extends = URI.escape(args.fetch(:extends, []).to_json)
142
+ filter = URI.escape(args.fetch(:filter, filter).to_json)
143
+ where = URI.escape(args.fetch(:where, '').to_json)
144
+ order = URI.escape(args.fetch(:order, '').to_json) if args[:order]
145
+ page = args.fetch(:page, 1)
146
+ per_page = args.fetch(:per_page, 100)
146
147
 
147
- response = get_response("/#{api_version}/alarms/search?page=#{page}&per_page=#{per_page}&scopes=#{scopes}&search=#{search}&extends=#{extends}&filter=#{filter}&where=#{where}&access_token=#{access_token}")
148
+ response = get_response("/#{api_version}/alarms/search?page=#{page}&per_page=#{per_page}&scopes=#{scopes}&search=#{search}&extends=#{extends}&filter=#{filter}&where=#{where}&order=#{order}&access_token=#{access_token}")
148
149
 
149
150
  generic_response = Xcal::Parktronic::GenericResponse.new(response.body)
150
151
  response.code == '200' && generic_response.has_key?(:alarms) ? generic_response.alarms.map(&:alarm) : generic_response
151
152
  end
152
153
 
154
+ # Fetches brouha products services
155
+ #
156
+ # ==== Examples
157
+ # api.brouha_products_services
158
+ # api.get_brouha_products_services
159
+ def get_brouha_products_services
160
+ response = get_response("/#{api_version}/alarms/brouha_products_services?access_token=#{access_token}")
161
+ generic_response = Xcal::Parktronic::GenericResponse.new(response.body)
162
+ generic_response if response.code == '200'
163
+ end
164
+ alias :brouha_products_services :get_brouha_products_services
153
165
  end
154
166
  end
155
167
  end
@@ -58,8 +58,40 @@ module Xcal
58
58
  end
59
59
  alias :event_tags :get_event_tags
60
60
 
61
+ # Search events by attributes or tag or scopes or filter
62
+ #
63
+ # ==== Parameters
64
+ # * +search+ hash, attribute_name => search_word
65
+ # * +page+ integer, page number, defaults to 1
66
+ # * +per_page+ integer, per page value, defaults to 100
67
+ # * +where+ 'where' hash of conditions for searching
68
+ # * +extends+ array, may include: alarm_impact_level
69
+ # * +scopes+ array, may include: select_brouha_open, grouped_unticketed_events, general_filter, tagged_with
70
+ #
71
+ # ==== Examples
72
+ # api.search_events(search: {subject: 'test event'})
73
+ # api.search_events(scopes: {tagged_with: 'test event', general_filter: 'ticketed'})
74
+ # api.search_events(where: {event_status: 'Critical'})
75
+ # api.search_events(extends: ['alarm_impact_level'])
76
+
77
+ def search_events(args = {})
78
+ # Params for request
79
+ scopes = URI.escape(args.fetch(:scopes, {}).to_json)
80
+ search = URI.escape(args.fetch(:search, {}).to_json)
81
+ extends = URI.escape(args.fetch(:extends, []).to_json)
82
+ filter = URI.escape(args.fetch(:filter, {events: ''}).to_json)
83
+ where = URI.escape(args.fetch(:where, '').to_json)
84
+ order = URI.escape(args.fetch(:order, '').to_json) if args[:order]
85
+ page = args.fetch(:page, 1)
86
+ per_page = args.fetch(:per_page, 100)
87
+
88
+ response = get_response("/#{api_version}/events/search?page=#{page}&per_page=#{per_page}&scopes=#{scopes}&search=#{search}&extends=#{extends}&filter=#{filter}&where=#{where}&access_token=#{access_token}")
89
+
90
+ generic_response = Xcal::Parktronic::GenericResponse.new(response.body)
91
+ response.code == '200' && generic_response.has_key?(:events) ? generic_response.events.map(&:event) : generic_response
92
+ end
61
93
  end
62
94
 
63
95
  end
64
96
  end
65
- end
97
+ end
@@ -94,6 +94,24 @@ module Xcal
94
94
  Xcal::Parktronic::GenericResponse.new(response.body)
95
95
  end
96
96
 
97
+ # Calculate metrics summary
98
+ #
99
+ # ==== Parameters
100
+ # * +start_time+
101
+ # * +end_time+
102
+ # * +ids+ list of metrics id
103
+ #
104
+ # ==== Examples
105
+ # api.metrics_calculate_summary('2015-05-01', '2015-06-01', [1,2,3,4,5])
106
+ # api.get_metrics_calculate_summary('2015-05-01', '2015-06-01', [1,2,3,4,5])
107
+ def get_metrics_calculate_summary(start_time, end_time, ids = [] )
108
+ params = "access_token=#{access_token}&start_time=#{start_time}&end_time=#{end_time}&metric_ids=#{ids.join(',')}"
109
+ response = get_response("/#{api_version}/metrics/calculate_summary?#{params}")
110
+ generic_response = Xcal::Parktronic::GenericResponse.new(response.body)
111
+ response.code == '200' ? Xcal::Parktronic::GenericResponse.new(generic_response.summary, self) : generic_response
112
+ end
113
+ alias :metrics_calculate_summary :get_metrics_calculate_summary
114
+
97
115
  end
98
116
 
99
117
  end
@@ -1,5 +1,5 @@
1
1
  module Xcal
2
2
  module Parktronic
3
- VERSION = '1.1.1'
3
+ VERSION = '1.2.0'
4
4
  end
5
5
  end
@@ -30,6 +30,12 @@ describe Xcal::Parktronic::ApiClient do
30
30
 
31
31
  expect(alarm.id.to_s).to eql('2')
32
32
  end
33
+
34
+ it 'responds to search_alarm' do
35
+ alarms = nil
36
+ expect { alarms = api_http_client.search_alarm }.not_to raise_error
37
+ expect(alarms).to be_a Array
38
+ end
33
39
  end
34
40
 
35
41
  context 'posting' do
@@ -58,8 +64,14 @@ describe Xcal::Parktronic::ApiClient do
58
64
  alarm = api_http_client.get_alarm(2)
59
65
 
60
66
  expect{alarm.get_events.first.id}.not_to raise_error
61
- expect(alarm.get_events.first.id).to eql(73)
62
- expect(alarm.get_events.last.id).to eql(370)
67
+ expect(alarm.get_events.first.id).to eql(1)
68
+ expect(alarm.get_events.last.id).to eql(10)
69
+ end
70
+ end
71
+
72
+ describe '#get_brouha_products_services' do
73
+ it 'gives hash of brouha products services' do
74
+ expect{ api_http_client.brouha_products_services }.not_to raise_error
63
75
  end
64
76
  end
65
77
 
@@ -69,4 +81,4 @@ describe Xcal::Parktronic::ApiClient do
69
81
  end
70
82
  end
71
83
  end
72
- end
84
+ end
@@ -15,12 +15,12 @@ describe Xcal::Parktronic::ApiClient do
15
15
  it 'responds with the correct set of events history' do
16
16
  event_history_items = api_http_client.get_paged_event_history_items(page: 1, per_page: 5)
17
17
  expect(event_history_items.first.event_id.to_s).to eql('1')
18
- expect(event_history_items.first.incident_status).to eql('Resolved')
18
+ expect(event_history_items.first.event_status).to eql('Resolved')
19
19
  expect(event_history_items.first.initiated_at).to eql('2013-12-30T21:03:39.000Z')
20
20
 
21
21
 
22
22
  expect(event_history_items.last.event_id.to_s).to eql('2')
23
- expect(event_history_items.last.incident_status).to eql('ACKNOWLEDGED')
23
+ expect(event_history_items.last.event_status).to eql('ACKNOWLEDGED')
24
24
  expect(event_history_items.last.initiated_at).to eql('2013-12-26T21:03:39.000Z')
25
25
  end
26
26
  end
@@ -6,7 +6,6 @@ describe Xcal::Parktronic::ApiClient do
6
6
  let(:api_invalid_client){ Xcal::Parktronic::ApiClient.new(endpoint: 'http://api.mock') }
7
7
 
8
8
  context 'events route' do
9
-
10
9
  describe '#get_event' do
11
10
  it 'should get event by id' do
12
11
  expect{ api_http_client.get_event(1) }.not_to raise_error
@@ -28,6 +27,14 @@ describe Xcal::Parktronic::ApiClient do
28
27
  expect{ api_http_client.get_event_tags(1) }.not_to raise_error
29
28
  end
30
29
  end
30
+
31
+ describe '#search_events' do
32
+ it 'responds to search_events' do
33
+ events = nil
34
+ expect { events = api_http_client.search_events }.not_to raise_error
35
+ expect(events).to be_a Array
36
+ end
37
+ end
31
38
  end
32
39
 
33
- end
40
+ end
@@ -67,5 +67,14 @@ describe Xcal::Parktronic::ApiClient do
67
67
  expect(metric.get_metric_values.last.value).to eql('4.880')
68
68
  end
69
69
  end
70
+
71
+ describe '#get_metrics_calculate_summary' do
72
+ it 'gives metrics calculate summary' do
73
+ expect{ api_http_client.get_metrics_calculate_summary }.to raise_error
74
+ expect{ api_http_client.get_metrics_calculate_summary('2015-05-05') }.to raise_error
75
+ expect{ api_http_client.get_metrics_calculate_summary('2015-05-05', '2015-05-06') }.not_to raise_error
76
+ expect{ api_http_client.get_metrics_calculate_summary('2015-05-05', '2015-05-06', [1,2]) }.not_to raise_error
77
+ end
78
+ end
70
79
  end
71
80
  end
@@ -7,6 +7,18 @@ describe Xcal::Parktronic::ApiClient do
7
7
 
8
8
  context 'alarms route' do
9
9
 
10
+ describe '#get_paged_events' do
11
+ it 'responds with the correct set of events' do
12
+ events = nil
13
+ expect{ events = api_http_client.alarm(2).get_paged_events(page: 1, per_page: 10) }.not_to raise_error
14
+ expect(events.first.id.to_s).to eql('1')
15
+ expect(events.first.subject).to eql('Event Subject 1')
16
+
17
+ expect(events.last.id.to_s).to eql('10')
18
+ expect(events.last.subject).to eql('Event Subject 10')
19
+ end
20
+ end
21
+
10
22
  describe '#get_all_events' do
11
23
  it 'should return events for alarm' do
12
24
  expect{ api_http_client.alarm(2).get_all_events }.not_to raise_error
@@ -22,4 +34,4 @@ describe Xcal::Parktronic::ApiClient do
22
34
  end
23
35
 
24
36
  end
25
- end
37
+ end
@@ -22,6 +22,14 @@ class ApiMock < Sinatra::Base
22
22
  end
23
23
  end
24
24
 
25
+ get '/:version/alarms/brouha_products_services' do
26
+ json_response 200, 'brouha_products_services.json'
27
+ end
28
+
29
+ get '/:version/alarms/search' do
30
+ json_response 200, 'alarms_page_1.json'
31
+ end
32
+
25
33
  get '/:version/alarms/:id' do
26
34
  json_response 200, 'alarm.json'
27
35
  end
@@ -78,6 +86,10 @@ class ApiMock < Sinatra::Base
78
86
  end
79
87
  end
80
88
 
89
+ get '/:version/metrics/calculate_summary' do
90
+ json_response 200, 'metrics_calculate.json'
91
+ end
92
+
81
93
  get '/:version/metrics/:id' do
82
94
  json_response 200, 'metric.json'
83
95
  end
@@ -103,6 +115,10 @@ class ApiMock < Sinatra::Base
103
115
  end
104
116
  end
105
117
 
118
+ get '/:version/events/search' do
119
+ json_response 200, 'events_page_1.json'
120
+ end
121
+
106
122
  get '/:version/events/:id' do
107
123
  json_response 200, 'event.json'
108
124
  end
@@ -16,6 +16,9 @@
16
16
  "upper_threshold":null,
17
17
  "lower_threshold":null,
18
18
  "added_at":"2013-07-05T13:56:42.000Z",
19
- "last_reviewed_at":null
19
+ "last_reviewed_at":null,
20
+ "application_name": null,
21
+ "itrc_application_id": null,
22
+ "service_desk": null
20
23
  }
21
- }
24
+ }
@@ -10,10 +10,10 @@
10
10
  },
11
11
  "jira_username":"",
12
12
  "jira_password":"",
13
- "jira_endpoint":"https://www.teamccp.com/jira",
13
+ "jira_endpoint":"https://www.jira_project.com/jira",
14
14
  "jira_project":"",
15
15
  "jira_issue_type":"",
16
16
  "jira_issue_key":"",
17
17
  "jira_fields":{},
18
18
  "remote_command":""
19
- }
19
+ }
@@ -11,7 +11,7 @@
11
11
  },
12
12
  "jira_username":"",
13
13
  "jira_password":"",
14
- "jira_endpoint":"https://www.teamccp.com/jira",
14
+ "jira_endpoint":"https://www.jira_project.com/jira",
15
15
  "jira_project":"",
16
16
  "jira_issue_type":"",
17
17
  "jira_issue_key":"",
@@ -30,11 +30,11 @@
30
30
  "value":"qwr"},
31
31
  "jira_username":"",
32
32
  "jira_password":"",
33
- "jira_endpoint":"https://www.teamccp.com/jira",
33
+ "jira_endpoint":"https://www.jira_project.com/jira",
34
34
  "jira_project":"",
35
35
  "jira_issue_type":"",
36
36
  "jira_issue_key":"",
37
37
  "jira_fields":{},
38
38
  "remote_command":""
39
39
  }
40
- ]
40
+ ]
@@ -7,8 +7,8 @@
7
7
  "events":[
8
8
  {
9
9
  "event":{
10
- "id":73,
11
- "subject":"Event Subject",
10
+ "id":1,
11
+ "subject":"Event Subject 1",
12
12
  "description":"Event description",
13
13
  "host_impacted":"Host Impacted 1",
14
14
  "service_impacted":"Service Impacted 1",
@@ -19,13 +19,43 @@
19
19
  "external_incident_id":null,
20
20
  "incident_status":null,
21
21
  "initiated_at":"2013-04-02T00:02:44.000Z",
22
- "created_at":"2013-04-02T00:03:30.000Z"
22
+ "created_at":"2013-04-02T00:03:30.000Z",
23
+ "additional_description": null,
24
+ "event_status": "UP",
25
+ "jira_browse_issue_path": null,
26
+ "brouha_browse_issue_path": null,
27
+ "service_now_browse_issue_path": null,
28
+ "first_event_initiated_at": "2014-05-29T15:33:23.000Z",
29
+ "created_at": "2014-05-29T15:30:15.576Z",
30
+ "updated_at": "2014-05-29T15:33:29.329Z",
31
+ "acknowledged_by": null,
32
+ "acknowledged_at": null,
33
+ "snoozed_by": null,
34
+ "snoozed_for": null,
35
+ "snoozed_at": null,
36
+ "snoozed_comment": null,
37
+ "application_name": null,
38
+ "itrc_application_id": null,
39
+ "service_desk": "Service desk",
40
+ "incident_ticket_id": null,
41
+ "incident_ticket_sor": null,
42
+ "ticketed_by": null,
43
+ "ticketed_at": null,
44
+ "received_by_oiv_at": "2014-05-29T15:33:23.000Z",
45
+ "acknowledged_by_user": null,
46
+ "snoozed_by_user": null,
47
+ "ticketed_by_user": null,
48
+ "sub_type": null,
49
+ "host_ip_address": null,
50
+ "incident_ticket_auto_correlated": false,
51
+ "incident_ticket_auto_correlated_at": null,
52
+ "snoozed": false
23
53
  }
24
54
  },
25
55
  {
26
56
  "event":{
27
- "id":74,
28
- "subject":"Event Subject",
57
+ "id":2,
58
+ "subject":"Event Subject 2",
29
59
  "description":"Event description",
30
60
  "host_impacted":"Host Impacted 1",
31
61
  "service_impacted":"Service Impacted 2",
@@ -36,13 +66,43 @@
36
66
  "external_incident_id":null,
37
67
  "incident_status":null,
38
68
  "initiated_at":"2013-04-02T00:03:52.000Z",
39
- "created_at":"2013-04-02T00:04:37.000Z"
69
+ "created_at":"2013-04-02T00:04:37.000Z",
70
+ "additional_description": null,
71
+ "event_status": "UP",
72
+ "jira_browse_issue_path": null,
73
+ "brouha_browse_issue_path": null,
74
+ "service_now_browse_issue_path": null,
75
+ "first_event_initiated_at": "2014-05-29T15:33:23.000Z",
76
+ "created_at": "2014-05-29T15:30:15.576Z",
77
+ "updated_at": "2014-05-29T15:33:29.329Z",
78
+ "acknowledged_by": null,
79
+ "acknowledged_at": null,
80
+ "snoozed_by": null,
81
+ "snoozed_for": null,
82
+ "snoozed_at": null,
83
+ "snoozed_comment": null,
84
+ "application_name": null,
85
+ "itrc_application_id": null,
86
+ "service_desk": "Service desk",
87
+ "incident_ticket_id": null,
88
+ "incident_ticket_sor": null,
89
+ "ticketed_by": null,
90
+ "ticketed_at": null,
91
+ "received_by_oiv_at": "2014-05-29T15:33:23.000Z",
92
+ "acknowledged_by_user": null,
93
+ "snoozed_by_user": null,
94
+ "ticketed_by_user": null,
95
+ "sub_type": null,
96
+ "host_ip_address": null,
97
+ "incident_ticket_auto_correlated": false,
98
+ "incident_ticket_auto_correlated_at": null,
99
+ "snoozed": false
40
100
  }
41
101
  },
42
102
  {
43
103
  "event":{
44
- "id":93,
45
- "subject":"Event Subject",
104
+ "id":3,
105
+ "subject":"Event Subject 3",
46
106
  "description":"Event description",
47
107
  "host_impacted":"Host Impacted 3",
48
108
  "service_impacted":"Service Impacted 3",
@@ -53,13 +113,43 @@
53
113
  "external_incident_id":null,
54
114
  "incident_status":null,
55
115
  "initiated_at":"2013-04-02T01:00:45.000Z",
56
- "created_at":"2013-04-02T01:01:31.000Z"
116
+ "created_at":"2013-04-02T01:01:31.000Z",
117
+ "additional_description": null,
118
+ "event_status": "UP",
119
+ "jira_browse_issue_path": null,
120
+ "brouha_browse_issue_path": null,
121
+ "service_now_browse_issue_path": null,
122
+ "first_event_initiated_at": "2014-05-29T15:33:23.000Z",
123
+ "created_at": "2014-05-29T15:30:15.576Z",
124
+ "updated_at": "2014-05-29T15:33:29.329Z",
125
+ "acknowledged_by": null,
126
+ "acknowledged_at": null,
127
+ "snoozed_by": null,
128
+ "snoozed_for": null,
129
+ "snoozed_at": null,
130
+ "snoozed_comment": null,
131
+ "application_name": null,
132
+ "itrc_application_id": null,
133
+ "service_desk": "Service desk",
134
+ "incident_ticket_id": null,
135
+ "incident_ticket_sor": null,
136
+ "ticketed_by": null,
137
+ "ticketed_at": null,
138
+ "received_by_oiv_at": "2014-05-29T15:33:23.000Z",
139
+ "acknowledged_by_user": null,
140
+ "snoozed_by_user": null,
141
+ "ticketed_by_user": null,
142
+ "sub_type": null,
143
+ "host_ip_address": null,
144
+ "incident_ticket_auto_correlated": false,
145
+ "incident_ticket_auto_correlated_at": null,
146
+ "snoozed": false
57
147
  }
58
148
  },
59
149
  {
60
150
  "event":{
61
- "id":190,
62
- "subject":"Event Subject",
151
+ "id":4,
152
+ "subject":"Event Subject 4",
63
153
  "description":"Event description",
64
154
  "host_impacted":"Host Impacted 4",
65
155
  "service_impacted":"Service Impacted 4",
@@ -70,13 +160,43 @@
70
160
  "external_incident_id":null,
71
161
  "incident_status":null,
72
162
  "initiated_at":"2013-04-02T05:44:31.000Z",
73
- "created_at":"2013-04-02T05:45:18.000Z"
163
+ "created_at":"2013-04-02T05:45:18.000Z",
164
+ "additional_description": null,
165
+ "event_status": "UP",
166
+ "jira_browse_issue_path": null,
167
+ "brouha_browse_issue_path": null,
168
+ "service_now_browse_issue_path": null,
169
+ "first_event_initiated_at": "2014-05-29T15:33:23.000Z",
170
+ "created_at": "2014-05-29T15:30:15.576Z",
171
+ "updated_at": "2014-05-29T15:33:29.329Z",
172
+ "acknowledged_by": null,
173
+ "acknowledged_at": null,
174
+ "snoozed_by": null,
175
+ "snoozed_for": null,
176
+ "snoozed_at": null,
177
+ "snoozed_comment": null,
178
+ "application_name": null,
179
+ "itrc_application_id": null,
180
+ "service_desk": "Service desk",
181
+ "incident_ticket_id": null,
182
+ "incident_ticket_sor": null,
183
+ "ticketed_by": null,
184
+ "ticketed_at": null,
185
+ "received_by_oiv_at": "2014-05-29T15:33:23.000Z",
186
+ "acknowledged_by_user": null,
187
+ "snoozed_by_user": null,
188
+ "ticketed_by_user": null,
189
+ "sub_type": null,
190
+ "host_ip_address": null,
191
+ "incident_ticket_auto_correlated": false,
192
+ "incident_ticket_auto_correlated_at": null,
193
+ "snoozed": false
74
194
  }
75
195
  },
76
196
  {
77
197
  "event":{
78
- "id":201,
79
- "subject":"Event Subject",
198
+ "id":5,
199
+ "subject":"Event Subject 5",
80
200
  "description":"Event description",
81
201
  "host_impacted":"Host Impacted 5",
82
202
  "service_impacted":"Service Impacted 5",
@@ -87,13 +207,43 @@
87
207
  "external_incident_id":null,
88
208
  "incident_status":null,
89
209
  "initiated_at":"2013-04-02T06:04:48.000Z",
90
- "created_at":"2013-04-02T06:05:36.000Z"
210
+ "created_at":"2013-04-02T06:05:36.000Z",
211
+ "additional_description": null,
212
+ "event_status": "UP",
213
+ "jira_browse_issue_path": null,
214
+ "brouha_browse_issue_path": null,
215
+ "service_now_browse_issue_path": null,
216
+ "first_event_initiated_at": "2014-05-29T15:33:23.000Z",
217
+ "created_at": "2014-05-29T15:30:15.576Z",
218
+ "updated_at": "2014-05-29T15:33:29.329Z",
219
+ "acknowledged_by": null,
220
+ "acknowledged_at": null,
221
+ "snoozed_by": null,
222
+ "snoozed_for": null,
223
+ "snoozed_at": null,
224
+ "snoozed_comment": null,
225
+ "application_name": null,
226
+ "itrc_application_id": null,
227
+ "service_desk": "Service desk",
228
+ "incident_ticket_id": null,
229
+ "incident_ticket_sor": null,
230
+ "ticketed_by": null,
231
+ "ticketed_at": null,
232
+ "received_by_oiv_at": "2014-05-29T15:33:23.000Z",
233
+ "acknowledged_by_user": null,
234
+ "snoozed_by_user": null,
235
+ "ticketed_by_user": null,
236
+ "sub_type": null,
237
+ "host_ip_address": null,
238
+ "incident_ticket_auto_correlated": false,
239
+ "incident_ticket_auto_correlated_at": null,
240
+ "snoozed": false
91
241
  }
92
242
  },
93
243
  {
94
244
  "event":{
95
- "id":240,
96
- "subject":"Event Subject",
245
+ "id":6,
246
+ "subject":"Event Subject 6",
97
247
  "description":"Event description",
98
248
  "host_impacted":"Host Impacted 6",
99
249
  "service_impacted":"Service Impacted 6",
@@ -104,13 +254,43 @@
104
254
  "external_incident_id":null,
105
255
  "incident_status":null,
106
256
  "initiated_at":"2013-04-02T08:22:52.000Z",
107
- "created_at":"2013-04-02T08:23:38.000Z"
257
+ "created_at":"2013-04-02T08:23:38.000Z",
258
+ "additional_description": null,
259
+ "event_status": "UP",
260
+ "jira_browse_issue_path": null,
261
+ "brouha_browse_issue_path": null,
262
+ "service_now_browse_issue_path": null,
263
+ "first_event_initiated_at": "2014-05-29T15:33:23.000Z",
264
+ "created_at": "2014-05-29T15:30:15.576Z",
265
+ "updated_at": "2014-05-29T15:33:29.329Z",
266
+ "acknowledged_by": null,
267
+ "acknowledged_at": null,
268
+ "snoozed_by": null,
269
+ "snoozed_for": null,
270
+ "snoozed_at": null,
271
+ "snoozed_comment": null,
272
+ "application_name": null,
273
+ "itrc_application_id": null,
274
+ "service_desk": "Service desk",
275
+ "incident_ticket_id": null,
276
+ "incident_ticket_sor": null,
277
+ "ticketed_by": null,
278
+ "ticketed_at": null,
279
+ "received_by_oiv_at": "2014-05-29T15:33:23.000Z",
280
+ "acknowledged_by_user": null,
281
+ "snoozed_by_user": null,
282
+ "ticketed_by_user": null,
283
+ "sub_type": null,
284
+ "host_ip_address": null,
285
+ "incident_ticket_auto_correlated": false,
286
+ "incident_ticket_auto_correlated_at": null,
287
+ "snoozed": false
108
288
  }
109
289
  },
110
290
  {
111
291
  "event":{
112
- "id":312,
113
- "subject":"Event Subject",
292
+ "id":7,
293
+ "subject":"Event Subject 7",
114
294
  "description":"Event description",
115
295
  "host_impacted":"Host Impacted 7",
116
296
  "service_impacted":"Service Impacted 7",
@@ -121,13 +301,43 @@
121
301
  "external_incident_id":null,
122
302
  "incident_status":null,
123
303
  "initiated_at":"2013-04-02T11:36:52.000Z",
124
- "created_at":"2013-04-02T11:37:38.000Z"
304
+ "created_at":"2013-04-02T11:37:38.000Z",
305
+ "additional_description": null,
306
+ "event_status": "UP",
307
+ "jira_browse_issue_path": null,
308
+ "brouha_browse_issue_path": null,
309
+ "service_now_browse_issue_path": null,
310
+ "first_event_initiated_at": "2014-05-29T15:33:23.000Z",
311
+ "created_at": "2014-05-29T15:30:15.576Z",
312
+ "updated_at": "2014-05-29T15:33:29.329Z",
313
+ "acknowledged_by": null,
314
+ "acknowledged_at": null,
315
+ "snoozed_by": null,
316
+ "snoozed_for": null,
317
+ "snoozed_at": null,
318
+ "snoozed_comment": null,
319
+ "application_name": null,
320
+ "itrc_application_id": null,
321
+ "service_desk": "Service desk",
322
+ "incident_ticket_id": null,
323
+ "incident_ticket_sor": null,
324
+ "ticketed_by": null,
325
+ "ticketed_at": null,
326
+ "received_by_oiv_at": "2014-05-29T15:33:23.000Z",
327
+ "acknowledged_by_user": null,
328
+ "snoozed_by_user": null,
329
+ "ticketed_by_user": null,
330
+ "sub_type": null,
331
+ "host_ip_address": null,
332
+ "incident_ticket_auto_correlated": false,
333
+ "incident_ticket_auto_correlated_at": null,
334
+ "snoozed": false
125
335
  }
126
336
  },
127
337
  {
128
338
  "event":{
129
- "id":318,
130
- "subject":"Event Subject",
339
+ "id":8,
340
+ "subject":"Event Subject 8",
131
341
  "description":"Event description",
132
342
  "host_impacted":"Host Impacted 8",
133
343
  "service_impacted":"Service Impacted 8",
@@ -138,13 +348,43 @@
138
348
  "external_incident_id":null,
139
349
  "incident_status":null,
140
350
  "initiated_at":"2013-04-02T12:03:48.000Z",
141
- "created_at":"2013-04-02T12:04:36.000Z"
351
+ "created_at":"2013-04-02T12:04:36.000Z",
352
+ "additional_description": null,
353
+ "event_status": "UP",
354
+ "jira_browse_issue_path": null,
355
+ "brouha_browse_issue_path": null,
356
+ "service_now_browse_issue_path": null,
357
+ "first_event_initiated_at": "2014-05-29T15:33:23.000Z",
358
+ "created_at": "2014-05-29T15:30:15.576Z",
359
+ "updated_at": "2014-05-29T15:33:29.329Z",
360
+ "acknowledged_by": null,
361
+ "acknowledged_at": null,
362
+ "snoozed_by": null,
363
+ "snoozed_for": null,
364
+ "snoozed_at": null,
365
+ "snoozed_comment": null,
366
+ "application_name": null,
367
+ "itrc_application_id": null,
368
+ "service_desk": "Service desk",
369
+ "incident_ticket_id": null,
370
+ "incident_ticket_sor": null,
371
+ "ticketed_by": null,
372
+ "ticketed_at": null,
373
+ "received_by_oiv_at": "2014-05-29T15:33:23.000Z",
374
+ "acknowledged_by_user": null,
375
+ "snoozed_by_user": null,
376
+ "ticketed_by_user": null,
377
+ "sub_type": null,
378
+ "host_ip_address": null,
379
+ "incident_ticket_auto_correlated": false,
380
+ "incident_ticket_auto_correlated_at": null,
381
+ "snoozed": false
142
382
  }
143
383
  },
144
384
  {
145
385
  "event":{
146
- "id":334,
147
- "subject":"Event Subject",
386
+ "id":9,
387
+ "subject":"Event Subject 9",
148
388
  "description":"Event description",
149
389
  "host_impacted":"Host Impacted 9",
150
390
  "service_impacted":"Service Impacted 9",
@@ -155,16 +395,46 @@
155
395
  "external_incident_id":null,
156
396
  "incident_status":null,
157
397
  "initiated_at":"2013-04-02T12:53:18.000Z",
158
- "created_at":"2013-04-02T12:54:03.000Z"
398
+ "created_at":"2013-04-02T12:54:03.000Z",
399
+ "additional_description": null,
400
+ "event_status": "UP",
401
+ "jira_browse_issue_path": null,
402
+ "brouha_browse_issue_path": null,
403
+ "service_now_browse_issue_path": null,
404
+ "first_event_initiated_at": "2014-05-29T15:33:23.000Z",
405
+ "created_at": "2014-05-29T15:30:15.576Z",
406
+ "updated_at": "2014-05-29T15:33:29.329Z",
407
+ "acknowledged_by": null,
408
+ "acknowledged_at": null,
409
+ "snoozed_by": null,
410
+ "snoozed_for": null,
411
+ "snoozed_at": null,
412
+ "snoozed_comment": null,
413
+ "application_name": null,
414
+ "itrc_application_id": null,
415
+ "service_desk": "Service desk",
416
+ "incident_ticket_id": null,
417
+ "incident_ticket_sor": null,
418
+ "ticketed_by": null,
419
+ "ticketed_at": null,
420
+ "received_by_oiv_at": "2014-05-29T15:33:23.000Z",
421
+ "acknowledged_by_user": null,
422
+ "snoozed_by_user": null,
423
+ "ticketed_by_user": null,
424
+ "sub_type": null,
425
+ "host_ip_address": null,
426
+ "incident_ticket_auto_correlated": false,
427
+ "incident_ticket_auto_correlated_at": null,
428
+ "snoozed": false
159
429
  }
160
430
  },
161
431
  {
162
432
  "event":{
163
- "id":370,
164
- "subject":"Event Subject",
433
+ "id":10,
434
+ "subject":"Event Subject 10",
165
435
  "description":"Event description",
166
- "host_impacted":"Host Impacted 11",
167
- "service_impacted":"Service Impacted 11",
436
+ "host_impacted":"Host Impacted 10",
437
+ "service_impacted":"Service Impacted 10",
168
438
  "aggregated_count":1,
169
439
  "event_hash":"5f96a3b2cf595fb8316bd1d20503f46e7da99286",
170
440
  "alarm_id":16,
@@ -172,9 +442,39 @@
172
442
  "external_incident_id":null,
173
443
  "incident_status":null,
174
444
  "initiated_at":"2013-04-02T14:27:18.000Z",
175
- "created_at":"2013-04-02T14:28:03.000Z"
445
+ "created_at":"2013-04-02T14:28:03.000Z",
446
+ "additional_description": null,
447
+ "event_status": "UP",
448
+ "jira_browse_issue_path": null,
449
+ "brouha_browse_issue_path": null,
450
+ "service_now_browse_issue_path": null,
451
+ "first_event_initiated_at": "2014-05-29T15:33:23.000Z",
452
+ "created_at": "2014-05-29T15:30:15.576Z",
453
+ "updated_at": "2014-05-29T15:33:29.329Z",
454
+ "acknowledged_by": null,
455
+ "acknowledged_at": null,
456
+ "snoozed_by": null,
457
+ "snoozed_for": null,
458
+ "snoozed_at": null,
459
+ "snoozed_comment": null,
460
+ "application_name": null,
461
+ "itrc_application_id": null,
462
+ "service_desk": "Service desk",
463
+ "incident_ticket_id": null,
464
+ "incident_ticket_sor": null,
465
+ "ticketed_by": null,
466
+ "ticketed_at": null,
467
+ "received_by_oiv_at": "2014-05-29T15:33:23.000Z",
468
+ "acknowledged_by_user": null,
469
+ "snoozed_by_user": null,
470
+ "ticketed_by_user": null,
471
+ "sub_type": null,
472
+ "host_ip_address": null,
473
+ "incident_ticket_auto_correlated": false,
474
+ "incident_ticket_auto_correlated_at": null,
475
+ "snoozed": false
176
476
  }
177
477
  }
178
478
  ]
179
479
  }
180
- ]
480
+ ]