flapjack 1.0.0rc3 → 1.0.0rc5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -2
- data/.ruby-version +1 -0
- data/CHANGELOG.md +20 -0
- data/CONTRIBUTING.md +2 -2
- data/Gemfile +1 -1
- data/README.md +6 -16
- data/build.sh +13 -1
- data/etc/flapjack_config.yaml.example +98 -12
- data/features/cli.feature +8 -8
- data/features/cli_flapjack-nagios-receiver.feature +29 -37
- data/features/cli_flapper.feature +24 -12
- data/features/cli_simulate-failed-check.feature +2 -2
- data/features/notifications.feature +18 -1
- data/features/steps/cli_steps.rb +2 -2
- data/features/steps/notifications_steps.rb +71 -0
- data/features/support/env.rb +7 -6
- data/flapjack.gemspec +3 -1
- data/lib/flapjack/cli/flapper.rb +74 -25
- data/lib/flapjack/cli/import.rb +3 -4
- data/lib/flapjack/cli/maintenance.rb +182 -0
- data/lib/flapjack/cli/receiver.rb +110 -121
- data/lib/flapjack/cli/server.rb +30 -26
- data/lib/flapjack/cli/simulate.rb +2 -3
- data/lib/flapjack/data/contact.rb +1 -1
- data/lib/flapjack/data/entity.rb +425 -32
- data/lib/flapjack/data/entity_check.rb +212 -14
- data/lib/flapjack/data/event.rb +1 -1
- data/lib/flapjack/gateways/aws_sns.rb +134 -0
- data/lib/flapjack/gateways/aws_sns/alert.text.erb +5 -0
- data/lib/flapjack/gateways/aws_sns/rollup.text.erb +2 -0
- data/lib/flapjack/gateways/jabber.rb +2 -2
- data/lib/flapjack/gateways/jsonapi/check_methods.rb +1 -1
- data/lib/flapjack/gateways/jsonapi/contact_methods.rb +1 -1
- data/lib/flapjack/gateways/jsonapi/entity_methods.rb +15 -1
- data/lib/flapjack/gateways/jsonapi/metrics_methods.rb +4 -3
- data/lib/flapjack/gateways/jsonapi/report_methods.rb +1 -1
- data/lib/flapjack/gateways/web.rb +35 -16
- data/lib/flapjack/gateways/web/public/css/tablesort.css +0 -16
- data/lib/flapjack/gateways/web/public/js/backbone.jsonapi.js +1 -1
- data/lib/flapjack/gateways/web/public/js/jquery.tablesorter.widgets.js +0 -45
- data/lib/flapjack/gateways/web/public/js/modules/contact.js +2 -2
- data/lib/flapjack/gateways/web/public/js/modules/entity.js +2 -2
- data/lib/flapjack/gateways/web/public/js/modules/medium.js +4 -4
- data/lib/flapjack/gateways/web/public/js/self_stats.js +1 -1
- data/lib/flapjack/gateways/web/views/check.html.erb +10 -10
- data/lib/flapjack/gateways/web/views/checks.html.erb +1 -1
- data/lib/flapjack/gateways/web/views/contact.html.erb +5 -1
- data/lib/flapjack/gateways/web/views/edit_contacts.html.erb +3 -4
- data/lib/flapjack/gateways/web/views/entities.html.erb +1 -1
- data/lib/flapjack/gateways/web/views/index.html.erb +2 -2
- data/lib/flapjack/gateways/web/views/layout.erb +3 -3
- data/lib/flapjack/gateways/web/views/self_stats.html.erb +5 -6
- data/lib/flapjack/notifier.rb +4 -1
- data/lib/flapjack/patches.rb +8 -2
- data/lib/flapjack/pikelet.rb +3 -1
- data/lib/flapjack/version.rb +1 -1
- data/libexec/httpbroker.go +1 -1
- data/spec/lib/flapjack/coordinator_spec.rb +3 -3
- data/spec/lib/flapjack/data/contact_spec.rb +2 -2
- data/spec/lib/flapjack/data/entity_check_spec.rb +805 -53
- data/spec/lib/flapjack/data/entity_spec.rb +661 -0
- data/spec/lib/flapjack/gateways/aws_sns_spec.rb +123 -0
- data/spec/lib/flapjack/gateways/jabber_spec.rb +1 -1
- data/spec/lib/flapjack/gateways/jsonapi/check_methods_spec.rb +1 -1
- data/spec/lib/flapjack/gateways/jsonapi/entity_methods_spec.rb +2 -2
- data/spec/lib/flapjack/gateways/pagerduty_spec.rb +1 -1
- data/spec/lib/flapjack/gateways/web_spec.rb +11 -11
- data/spec/support/profile_all_formatter.rb +10 -10
- data/spec/support/uncolored_doc_formatter.rb +66 -4
- data/src/flapjack/event.go +1 -1
- data/tasks/benchmarks.rake +24 -20
- data/tasks/entities.rake +148 -0
- data/tmp/dummy_contacts.json +43 -0
- data/tmp/dummy_entities.json +37 -1
- metadata +43 -7
- data/tmp/test_entities.json +0 -1
@@ -0,0 +1,43 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"id": "362",
|
4
|
+
"first_name": "John",
|
5
|
+
"last_name": "Johnson",
|
6
|
+
"email": "johnj@example.com",
|
7
|
+
"media": {
|
8
|
+
"sms": "+61412345678",
|
9
|
+
"email": "johnj@example.com"
|
10
|
+
},
|
11
|
+
"tags": [
|
12
|
+
"source:titanium",
|
13
|
+
"foo"
|
14
|
+
]
|
15
|
+
},
|
16
|
+
{
|
17
|
+
"id": "363",
|
18
|
+
"first_name": "Jane",
|
19
|
+
"last_name": "Janeley",
|
20
|
+
"email": "janej@example.com",
|
21
|
+
"media": {
|
22
|
+
"email": "janej@example.com"
|
23
|
+
},
|
24
|
+
"tags": [
|
25
|
+
"source:titanium",
|
26
|
+
"bar"
|
27
|
+
]
|
28
|
+
},
|
29
|
+
{
|
30
|
+
"id": "364",
|
31
|
+
"first_name": "Roger",
|
32
|
+
"last_name": "Wilco",
|
33
|
+
"email": "rogerw@example.com",
|
34
|
+
"media": {
|
35
|
+
"jabber": "roger@conference.example.com"
|
36
|
+
},
|
37
|
+
"tags": [
|
38
|
+
"source:titanium",
|
39
|
+
"bar",
|
40
|
+
"foo"
|
41
|
+
]
|
42
|
+
}
|
43
|
+
]
|
data/tmp/dummy_entities.json
CHANGED
@@ -1 +1,37 @@
|
|
1
|
-
[
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"id": "10001",
|
4
|
+
"name": "clientx-app-01",
|
5
|
+
"contacts": [
|
6
|
+
"362",
|
7
|
+
"363",
|
8
|
+
"364"
|
9
|
+
],
|
10
|
+
"tags": [
|
11
|
+
"source:titanium",
|
12
|
+
"foo"
|
13
|
+
]
|
14
|
+
},
|
15
|
+
{
|
16
|
+
"id": "10002",
|
17
|
+
"name": "clientx-app-02",
|
18
|
+
"contacts": [
|
19
|
+
"362"
|
20
|
+
],
|
21
|
+
"tags": [
|
22
|
+
"source:titanium",
|
23
|
+
"bar"
|
24
|
+
]
|
25
|
+
},
|
26
|
+
{
|
27
|
+
"id": "10003",
|
28
|
+
"name": "clienty-app-01",
|
29
|
+
"contacts": [
|
30
|
+
"363",
|
31
|
+
"364"
|
32
|
+
],
|
33
|
+
"tags": [
|
34
|
+
"source:titanium"
|
35
|
+
]
|
36
|
+
}
|
37
|
+
]
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: flapjack
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.0rc5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Lindsay Holmwood
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2014-
|
13
|
+
date: 2014-08-20 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: dante
|
@@ -236,6 +236,20 @@ dependencies:
|
|
236
236
|
- - ">="
|
237
237
|
- !ruby/object:Gem::Version
|
238
238
|
version: '0'
|
239
|
+
- !ruby/object:Gem::Dependency
|
240
|
+
name: terminal-table
|
241
|
+
requirement: !ruby/object:Gem::Requirement
|
242
|
+
requirements:
|
243
|
+
- - ">="
|
244
|
+
- !ruby/object:Gem::Version
|
245
|
+
version: '0'
|
246
|
+
type: :runtime
|
247
|
+
prerelease: false
|
248
|
+
version_requirements: !ruby/object:Gem::Requirement
|
249
|
+
requirements:
|
250
|
+
- - ">="
|
251
|
+
- !ruby/object:Gem::Version
|
252
|
+
version: '0'
|
239
253
|
- !ruby/object:Gem::Dependency
|
240
254
|
name: activesupport
|
241
255
|
requirement: !ruby/object:Gem::Requirement
|
@@ -324,16 +338,30 @@ dependencies:
|
|
324
338
|
name: gli
|
325
339
|
requirement: !ruby/object:Gem::Requirement
|
326
340
|
requirements:
|
327
|
-
- -
|
341
|
+
- - '='
|
328
342
|
- !ruby/object:Gem::Version
|
329
|
-
version:
|
343
|
+
version: 2.12.0
|
330
344
|
type: :runtime
|
331
345
|
prerelease: false
|
332
346
|
version_requirements: !ruby/object:Gem::Requirement
|
333
347
|
requirements:
|
334
|
-
- -
|
348
|
+
- - '='
|
335
349
|
- !ruby/object:Gem::Version
|
336
|
-
version:
|
350
|
+
version: 2.12.0
|
351
|
+
- !ruby/object:Gem::Dependency
|
352
|
+
name: nokogiri
|
353
|
+
requirement: !ruby/object:Gem::Requirement
|
354
|
+
requirements:
|
355
|
+
- - '='
|
356
|
+
- !ruby/object:Gem::Version
|
357
|
+
version: 1.6.2.1
|
358
|
+
type: :runtime
|
359
|
+
prerelease: false
|
360
|
+
version_requirements: !ruby/object:Gem::Requirement
|
361
|
+
requirements:
|
362
|
+
- - '='
|
363
|
+
- !ruby/object:Gem::Version
|
364
|
+
version: 1.6.2.1
|
337
365
|
description: Flapjack is a distributed monitoring notification system that provides
|
338
366
|
a scalable method for processing streams of events from Nagios and deciding who
|
339
367
|
should be notified
|
@@ -346,6 +374,7 @@ files:
|
|
346
374
|
- ".gitignore"
|
347
375
|
- ".gitmodules"
|
348
376
|
- ".rspec"
|
377
|
+
- ".ruby-version"
|
349
378
|
- ".travis.yml"
|
350
379
|
- CHANGELOG.md
|
351
380
|
- CONTRIBUTING.md
|
@@ -387,6 +416,7 @@ files:
|
|
387
416
|
- lib/flapjack.rb
|
388
417
|
- lib/flapjack/cli/flapper.rb
|
389
418
|
- lib/flapjack/cli/import.rb
|
419
|
+
- lib/flapjack/cli/maintenance.rb
|
390
420
|
- lib/flapjack/cli/receiver.rb
|
391
421
|
- lib/flapjack/cli/server.rb
|
392
422
|
- lib/flapjack/cli/simulate.rb
|
@@ -409,6 +439,9 @@ files:
|
|
409
439
|
- lib/flapjack/filters/ok.rb
|
410
440
|
- lib/flapjack/filters/scheduled_maintenance.rb
|
411
441
|
- lib/flapjack/filters/unscheduled_maintenance.rb
|
442
|
+
- lib/flapjack/gateways/aws_sns.rb
|
443
|
+
- lib/flapjack/gateways/aws_sns/alert.text.erb
|
444
|
+
- lib/flapjack/gateways/aws_sns/rollup.text.erb
|
412
445
|
- lib/flapjack/gateways/email.rb
|
413
446
|
- lib/flapjack/gateways/email/alert.html.erb
|
414
447
|
- lib/flapjack/gateways/email/alert.text.erb
|
@@ -520,6 +553,7 @@ files:
|
|
520
553
|
- spec/lib/flapjack/filters/ok_spec.rb
|
521
554
|
- spec/lib/flapjack/filters/scheduled_maintenance_spec.rb
|
522
555
|
- spec/lib/flapjack/filters/unscheduled_maintenance_spec.rb
|
556
|
+
- spec/lib/flapjack/gateways/aws_sns_spec.rb
|
523
557
|
- spec/lib/flapjack/gateways/email_spec.rb
|
524
558
|
- spec/lib/flapjack/gateways/jabber_spec.rb
|
525
559
|
- spec/lib/flapjack/gateways/jsonapi/check_methods_spec.rb
|
@@ -554,6 +588,7 @@ files:
|
|
554
588
|
- src/flapjack/transport.go
|
555
589
|
- src/flapjack/transport_test.go
|
556
590
|
- tasks/benchmarks.rake
|
591
|
+
- tasks/entities.rake
|
557
592
|
- tasks/events.rake
|
558
593
|
- tasks/profile.rake
|
559
594
|
- tasks/support/flapjack_config_benchmark.yaml
|
@@ -566,12 +601,12 @@ files:
|
|
566
601
|
- tmp/create_events_ok_fail_ack_ok.rb
|
567
602
|
- tmp/create_events_ok_failure.rb
|
568
603
|
- tmp/create_events_ok_failure_ack.rb
|
604
|
+
- tmp/dummy_contacts.json
|
569
605
|
- tmp/dummy_entities.json
|
570
606
|
- tmp/generate_nagios_test_hosts.rb
|
571
607
|
- tmp/notification_rules.rb
|
572
608
|
- tmp/parse_config_yaml.rb
|
573
609
|
- tmp/redis_find_spurious_unknown_states.rb
|
574
|
-
- tmp/test_entities.json
|
575
610
|
- tmp/test_json_post.rb
|
576
611
|
- tmp/test_notification_rules_api.rb
|
577
612
|
homepage: http://flapjack.io/
|
@@ -636,6 +671,7 @@ test_files:
|
|
636
671
|
- spec/lib/flapjack/filters/ok_spec.rb
|
637
672
|
- spec/lib/flapjack/filters/scheduled_maintenance_spec.rb
|
638
673
|
- spec/lib/flapjack/filters/unscheduled_maintenance_spec.rb
|
674
|
+
- spec/lib/flapjack/gateways/aws_sns_spec.rb
|
639
675
|
- spec/lib/flapjack/gateways/email_spec.rb
|
640
676
|
- spec/lib/flapjack/gateways/jabber_spec.rb
|
641
677
|
- spec/lib/flapjack/gateways/jsonapi/check_methods_spec.rb
|
data/tmp/test_entities.json
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
[{"id":"10001","name":"client1-localhost-test-1","contacts":["0362","0363","0364"]},{"id":"10002","name":"client1-localhost-test-2","contacts":["0362"]},{"id":"10003","name":"client1-localhost-test-3","contacts":["0363","0364"]}]
|