easymon 1.5 → 1.6.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 46eed6312dd05be2f1cc453b481dbbe26cbed28e6a9954d68aee4ed96b5d2935
4
- data.tar.gz: 57a512d8baf55d331a7386ccc80ea9879820cb2775327d321ba8d11d0b630660
3
+ metadata.gz: 86b570ebd2a55ff6dcf7757d7c579d63ccf3dd47142892496190896acdec5b7d
4
+ data.tar.gz: 7afc1c23c22405e8912021ef88c28eb3c8c8969497e0557e35c7f41319361282
5
5
  SHA512:
6
- metadata.gz: cfe6ee337e9353b08dd9dcb7b807f2f8881d471e884257fd8a21e48bf29f79fb6680ba29a56b2cea2b40ac365d46ca9566fa89c1df98808832e11bf93d45ee66
7
- data.tar.gz: 13e4c388db907301c04ed04a3fe25b8eba77b78e88496d3b1ac1a993980fb65ecf75db24c91b1f90ad230b47ad4c70919b973b587280a7ec9bd95d6b09433291
6
+ metadata.gz: 44168748e184ef6ec72532156b8ffd730ea384063ae8e342afa70ae314d656febb6c87e35390190d2e690713d19edcb970be1df8af1285c572db67409f435729
7
+ data.tar.gz: e0024e1e2acf5b2de4affc4cf84d04f3c8c4bf69a6750f27ea4738d6579e11039618639a378fc38d609f9bc6d37ec03897d86f2877be4c9e4a7bbd41fd4336e6
data/README.md CHANGED
@@ -203,7 +203,7 @@ module Easymon
203
203
  end
204
204
  end
205
205
  def database_configuration
206
- env = "#{Rails.env}_slave"
206
+ env = "#{Rails.env}_replica"
207
207
  config = YAML.load_file(Rails.root.join('config/database.yml'))[env]
208
208
  end
209
209
  end
@@ -4,6 +4,7 @@ module Easymon
4
4
 
5
5
  def initialize(klass)
6
6
  self.klass = klass
7
+ @query = "SELECT @@read_only for UPDATE"
7
8
  end
8
9
 
9
10
  def check
@@ -18,7 +19,7 @@ module Easymon
18
19
 
19
20
  private
20
21
  def database_writeable?
21
- klass.connection.execute("SELECT @@read_only").entries.flatten.first == 0
22
+ klass.connection.execute(@query).to_enum.first.first.to_i == 0
22
23
  rescue
23
24
  false
24
25
  end
@@ -2,10 +2,10 @@ module Easymon
2
2
  class SplitActiveRecordCheck
3
3
  attr_accessor :block
4
4
  attr_accessor :results
5
-
5
+
6
6
  # Here we pass a block so we get a fresh instance of ActiveRecord::Base or
7
7
  # whatever other class we might be using to make database connections
8
- #
8
+ #
9
9
  # For example, given the following other class:
10
10
  # module Easymon
11
11
  # class Base < ActiveRecord::Base
@@ -18,12 +18,12 @@ module Easymon
18
18
  # end
19
19
  #
20
20
  # def database_configuration
21
- # env = "#{Rails.env}_slave"
21
+ # env = "#{Rails.env}_replica"
22
22
  # config = YAML.load_file(Rails.root.join('config/database.yml'))[env]
23
23
  # end
24
24
  # end
25
25
  # end
26
- #
26
+ #
27
27
  # We would check both it and ActiveRecord::Base like so:
28
28
  # check = Easymon::SplitActiveRecordCheck.new {
29
29
  # [ActiveRecord::Base.connection, Easymon::Base.connection]
@@ -31,20 +31,20 @@ module Easymon
31
31
  # Easymon::Repository.add("split-database", check)
32
32
  def initialize(&block)
33
33
  self.block = block
34
- end
35
-
34
+ end
35
+
36
36
  # Assumes only 2 connections
37
37
  def check
38
38
  connections = Array(@block.call)
39
39
 
40
40
  results = connections.map{|connection| database_up?(connection) }
41
-
42
- master_status = results.first ? "Master: Up" : "Master: Down"
43
- slave_status = results.last ? "Slave: Up" : "Slave: Down"
44
-
45
- [(results.all? && results.count > 0), "#{master_status} - #{slave_status}"]
41
+
42
+ primary_status = results.first ? "Primary: Up" : "Primary: Down"
43
+ replica_status = results.last ? "Replica: Up" : "Replica: Down"
44
+
45
+ [(results.all? && results.count > 0), "#{primary_status} - #{replica_status}"]
46
46
  end
47
-
47
+
48
48
  private
49
49
  def database_up?(connection)
50
50
  connection.active?
@@ -1,3 +1,3 @@
1
1
  module Easymon
2
- VERSION = "1.5"
2
+ VERSION = "1.6.2"
3
3
  end
File without changes
@@ -17,10 +17,10 @@ test:
17
17
  host: 127.0.0.1
18
18
  port: 3306
19
19
 
20
- test_slave:
20
+ test_replica:
21
21
  adapter: mysql2
22
22
  encoding: utf8
23
- database: dummy_test_slave
23
+ database: dummy_test_replica
24
24
  username: root
25
25
  host: 127.0.0.1
26
26
  port: 3306
File without changes
@@ -8371,3 +8371,546 @@ ActiveRecordMysqlWriteableCheckTest: test_#check_returns_a_successful_result_on_
8371
8371
  TRANSACTION (0.2ms) ROLLBACK
8372
8372
  TRANSACTION (0.5ms) ROLLBACK
8373
8373
  TRANSACTION (0.1ms) ROLLBACK
8374
+ TRANSACTION (0.2ms) BEGIN
8375
+ TRANSACTION (0.1ms) BEGIN
8376
+ ---------------------------------------------------------------------------------
8377
+ SplitActiveRecordCheckTest: test_#run_sets_failed_conditions_when_primary_is_down
8378
+ ---------------------------------------------------------------------------------
8379
+ TRANSACTION (0.1ms) BEGIN
8380
+ TRANSACTION (0.1ms) ROLLBACK
8381
+ TRANSACTION (0.1ms) ROLLBACK
8382
+ TRANSACTION (0.1ms) ROLLBACK
8383
+ TRANSACTION (0.1ms) BEGIN
8384
+ TRANSACTION (0.1ms) BEGIN
8385
+ TRANSACTION (0.1ms) BEGIN
8386
+ ---------------------------------------------------------------------------------
8387
+ SplitActiveRecordCheckTest: test_#run_sets_failed_conditions_when_replica_is_down
8388
+ ---------------------------------------------------------------------------------
8389
+ TRANSACTION (0.1ms) BEGIN
8390
+ TRANSACTION (0.1ms) ROLLBACK
8391
+ TRANSACTION (0.1ms) ROLLBACK
8392
+ TRANSACTION (0.1ms) ROLLBACK
8393
+ TRANSACTION (0.1ms) BEGIN
8394
+ TRANSACTION (0.4ms) BEGIN
8395
+ TRANSACTION (0.1ms) BEGIN
8396
+ -------------------------------------------------------------------------------
8397
+ SplitActiveRecordCheckTest: test_#run_sets_success_conditions_on_successful_run
8398
+ -------------------------------------------------------------------------------
8399
+ TRANSACTION (0.1ms) BEGIN
8400
+ TRANSACTION (0.1ms) ROLLBACK
8401
+ TRANSACTION (0.1ms) ROLLBACK
8402
+ TRANSACTION (0.1ms) ROLLBACK
8403
+ TRANSACTION (0.1ms) BEGIN
8404
+ TRANSACTION (0.1ms) BEGIN
8405
+ TRANSACTION (0.1ms) BEGIN
8406
+ ------------------------------------------------------
8407
+ SplitActiveRecordCheckTest: test_given_nil_as_a_config
8408
+ ------------------------------------------------------
8409
+ TRANSACTION (0.1ms) ROLLBACK
8410
+ TRANSACTION (0.1ms) ROLLBACK
8411
+ TRANSACTION (0.1ms) ROLLBACK
8412
+ TRANSACTION (0.1ms) BEGIN
8413
+ TRANSACTION (0.1ms) BEGIN
8414
+ TRANSACTION (0.1ms) BEGIN
8415
+ ----------------------------------------------------------------------------------------
8416
+ ActiveRecordMysqlWriteableCheckTest: test_#check_returns_a_failed_result_on_a_failed_run
8417
+ ----------------------------------------------------------------------------------------
8418
+ TRANSACTION (0.1ms) ROLLBACK
8419
+ TRANSACTION (0.1ms) ROLLBACK
8420
+ TRANSACTION (0.1ms) ROLLBACK
8421
+ TRANSACTION (0.2ms) BEGIN
8422
+ TRANSACTION (0.1ms) BEGIN
8423
+ TRANSACTION (0.1ms) BEGIN
8424
+ ------------------------------------------------------------------------------------------
8425
+ ActiveRecordMysqlWriteableCheckTest: test_#check_returns_a_successful_result_on_a_good_run
8426
+ ------------------------------------------------------------------------------------------
8427
+  (0.1ms) SELECT @@read_only for UPDATE
8428
+ TRANSACTION (0.1ms) ROLLBACK
8429
+ TRANSACTION (0.1ms) ROLLBACK
8430
+ TRANSACTION (0.1ms) ROLLBACK
8431
+ TRANSACTION (0.1ms) BEGIN
8432
+ TRANSACTION (0.1ms) BEGIN
8433
+ TRANSACTION (0.1ms) BEGIN
8434
+ --------------------------------------------------------------------------
8435
+ RepositoryTest: test_adds_checks_marked_critical_to_the_critical_checklist
8436
+ --------------------------------------------------------------------------
8437
+ TRANSACTION (0.1ms) ROLLBACK
8438
+ TRANSACTION (0.1ms) ROLLBACK
8439
+ TRANSACTION (0.1ms) ROLLBACK
8440
+ TRANSACTION (0.1ms) BEGIN
8441
+ TRANSACTION (0.1ms) BEGIN
8442
+ TRANSACTION (0.1ms) BEGIN
8443
+ --------------------------------------------
8444
+ RepositoryTest: test_fetches_a_check_by_name
8445
+ --------------------------------------------
8446
+ TRANSACTION (0.1ms) ROLLBACK
8447
+ TRANSACTION (0.1ms) ROLLBACK
8448
+ TRANSACTION (0.1ms) ROLLBACK
8449
+ TRANSACTION (0.1ms) BEGIN
8450
+ TRANSACTION (0.1ms) BEGIN
8451
+ TRANSACTION (0.1ms) BEGIN
8452
+ -----------------------------------------------------
8453
+ RepositoryTest: test_fetches_a_critical_check_by_name
8454
+ -----------------------------------------------------
8455
+ TRANSACTION (0.1ms) ROLLBACK
8456
+ TRANSACTION (0.1ms) ROLLBACK
8457
+ TRANSACTION (0.1ms) ROLLBACK
8458
+ TRANSACTION (0.1ms) BEGIN
8459
+ TRANSACTION (0.1ms) BEGIN
8460
+ TRANSACTION (0.1ms) BEGIN
8461
+ ---------------------------------------------------
8462
+ RepositoryTest: test_returns_a_checklist_when_asked
8463
+ ---------------------------------------------------
8464
+ TRANSACTION (0.1ms) ROLLBACK
8465
+ TRANSACTION (1.2ms) ROLLBACK
8466
+ TRANSACTION (0.7ms) ROLLBACK
8467
+ TRANSACTION (0.2ms) BEGIN
8468
+ TRANSACTION (0.1ms) BEGIN
8469
+ TRANSACTION (0.1ms) BEGIN
8470
+ ---------------------------------------------------------
8471
+ RepositoryTest: test_we_can_add_a_check_to_the_repository
8472
+ ---------------------------------------------------------
8473
+ TRANSACTION (0.4ms) ROLLBACK
8474
+ TRANSACTION (0.1ms) ROLLBACK
8475
+ TRANSACTION (0.1ms) ROLLBACK
8476
+ TRANSACTION (0.1ms) BEGIN
8477
+ TRANSACTION (0.1ms) BEGIN
8478
+ TRANSACTION (0.1ms) BEGIN
8479
+ --------------------------------------------------------------
8480
+ RepositoryTest: test_we_can_remove_a_check_from_the_repository
8481
+ --------------------------------------------------------------
8482
+ TRANSACTION (0.1ms) ROLLBACK
8483
+ TRANSACTION (0.1ms) ROLLBACK
8484
+ TRANSACTION (0.1ms) ROLLBACK
8485
+ TRANSACTION (0.1ms) BEGIN
8486
+ TRANSACTION (0.1ms) BEGIN
8487
+ TRANSACTION (0.1ms) BEGIN
8488
+ ----------------------------------------------------------------
8489
+ HttpCheckTest: test_#run_sets_failure_conditions_on_a_failed_run
8490
+ ----------------------------------------------------------------
8491
+ TRANSACTION (0.1ms) ROLLBACK
8492
+ TRANSACTION (0.1ms) ROLLBACK
8493
+ TRANSACTION (0.1ms) ROLLBACK
8494
+ TRANSACTION (0.1ms) BEGIN
8495
+ TRANSACTION (0.1ms) BEGIN
8496
+ TRANSACTION (0.1ms) BEGIN
8497
+ ------------------------------------------------------------------
8498
+ HttpCheckTest: test_#run_sets_failure_conditions_on_an_errored_run
8499
+ ------------------------------------------------------------------
8500
+ TRANSACTION (0.1ms) ROLLBACK
8501
+ TRANSACTION (0.2ms) ROLLBACK
8502
+ TRANSACTION (0.1ms) ROLLBACK
8503
+ TRANSACTION (0.1ms) BEGIN
8504
+ TRANSACTION (0.1ms) BEGIN
8505
+ TRANSACTION (0.1ms) BEGIN
8506
+ ------------------------------------------------------------------
8507
+ HttpCheckTest: test_#run_sets_success_conditions_on_successful_run
8508
+ ------------------------------------------------------------------
8509
+ TRANSACTION (0.1ms) ROLLBACK
8510
+ TRANSACTION (0.6ms) ROLLBACK
8511
+ TRANSACTION (0.1ms) ROLLBACK
8512
+ TRANSACTION (0.1ms) BEGIN
8513
+ TRANSACTION (0.1ms) BEGIN
8514
+ TRANSACTION (0.1ms) BEGIN
8515
+ --------------------------------------
8516
+ HttpCheckTest: test_given_nil_as_a_url
8517
+ --------------------------------------
8518
+ TRANSACTION (0.1ms) ROLLBACK
8519
+ TRANSACTION (0.1ms) ROLLBACK
8520
+ TRANSACTION (0.1ms) ROLLBACK
8521
+ TRANSACTION (0.1ms) BEGIN
8522
+ TRANSACTION (0.1ms) BEGIN
8523
+ TRANSACTION (0.1ms) BEGIN
8524
+ --------------------------------------------------------------------------
8525
+ RedisWriteableCheckTest: test_#run_sets_failure_conditions_on_a_failed_run
8526
+ --------------------------------------------------------------------------
8527
+ TRANSACTION (0.1ms) ROLLBACK
8528
+ TRANSACTION (0.1ms) ROLLBACK
8529
+ TRANSACTION (0.1ms) ROLLBACK
8530
+ TRANSACTION (0.1ms) BEGIN
8531
+ TRANSACTION (0.1ms) BEGIN
8532
+ TRANSACTION (0.1ms) BEGIN
8533
+ ----------------------------------------------------------------------------
8534
+ RedisWriteableCheckTest: test_#run_sets_success_conditions_on_successful_run
8535
+ ----------------------------------------------------------------------------
8536
+ TRANSACTION (0.1ms) ROLLBACK
8537
+ TRANSACTION (0.1ms) ROLLBACK
8538
+ TRANSACTION (0.1ms) ROLLBACK
8539
+ TRANSACTION (0.3ms) BEGIN
8540
+ TRANSACTION (0.1ms) BEGIN
8541
+ TRANSACTION (0.1ms) BEGIN
8542
+ ---------------------------------------------------------------------
8543
+ ChecklistTest: test_#response_status_returns_:ok_when_all_checks_pass
8544
+ ---------------------------------------------------------------------
8545
+ TRANSACTION (0.1ms) ROLLBACK
8546
+ TRANSACTION (0.1ms) ROLLBACK
8547
+ TRANSACTION (0.1ms) ROLLBACK
8548
+ TRANSACTION (0.1ms) BEGIN
8549
+ TRANSACTION (0.1ms) BEGIN
8550
+ TRANSACTION (0.1ms) BEGIN
8551
+ ------------------------------------------------------------------------------------
8552
+ ChecklistTest: test_#response_status_returns_:service_unavailable_when_a_check_fails
8553
+ ------------------------------------------------------------------------------------
8554
+ Dalli::Server#connect 127.0.0.1:11211
8555
+ 127.0.0.1:11211 failed (count: 0) Errno::ECONNREFUSED: Connection refused - connect(2) for "127.0.0.1" port 11211
8556
+ Dalli::Server#connect 127.0.0.1:11211
8557
+ 127.0.0.1:11211 failed (count: 1) Errno::ECONNREFUSED: Connection refused - connect(2) for "127.0.0.1" port 11211
8558
+ 127.0.0.1:11211 is down
8559
+ TRANSACTION (0.2ms) ROLLBACK
8560
+ TRANSACTION (0.2ms) ROLLBACK
8561
+ TRANSACTION (0.2ms) ROLLBACK
8562
+ TRANSACTION (0.1ms) BEGIN
8563
+ TRANSACTION (0.1ms) BEGIN
8564
+ TRANSACTION (0.1ms) BEGIN
8565
+ -----------------------------------------------------------------
8566
+ ChecklistTest: test_#success?_returns_false_when_results_is_empty
8567
+ -----------------------------------------------------------------
8568
+ TRANSACTION (0.2ms) ROLLBACK
8569
+ TRANSACTION (0.1ms) ROLLBACK
8570
+ TRANSACTION (0.1ms) ROLLBACK
8571
+ TRANSACTION (0.1ms) BEGIN
8572
+ TRANSACTION (0.1ms) BEGIN
8573
+ TRANSACTION (0.1ms) BEGIN
8574
+ ---------------------------------------------------------
8575
+ ChecklistTest: test_#timing_is_a_sum_of_all_check_results
8576
+ ---------------------------------------------------------
8577
+ TRANSACTION (0.1ms) ROLLBACK
8578
+ TRANSACTION (0.1ms) ROLLBACK
8579
+ TRANSACTION (0.1ms) ROLLBACK
8580
+ TRANSACTION (0.1ms) BEGIN
8581
+ TRANSACTION (0.1ms) BEGIN
8582
+ TRANSACTION (0.1ms) BEGIN
8583
+ -------------------------------------------------------------------------
8584
+ ChecklistTest: test_#to_s_returns_a_valid_representation_of_the_checklist
8585
+ -------------------------------------------------------------------------
8586
+ TRANSACTION (0.9ms) ROLLBACK
8587
+ TRANSACTION (0.1ms) ROLLBACK
8588
+ TRANSACTION (0.1ms) ROLLBACK
8589
+ TRANSACTION (0.2ms) BEGIN
8590
+ TRANSACTION (0.1ms) BEGIN
8591
+ TRANSACTION (0.4ms) BEGIN
8592
+ ----------------------------------------------
8593
+ ChecklistTest: test_can_look_up_checks_by_name
8594
+ ----------------------------------------------
8595
+ TRANSACTION (0.1ms) ROLLBACK
8596
+ TRANSACTION (0.1ms) ROLLBACK
8597
+ TRANSACTION (0.3ms) ROLLBACK
8598
+ TRANSACTION (0.1ms) BEGIN
8599
+ TRANSACTION (0.1ms) BEGIN
8600
+ TRANSACTION (0.1ms) BEGIN
8601
+ ---------------------------------------------
8602
+ ChecklistTest: test_cat_fetch_a_check_by_name
8603
+ ---------------------------------------------
8604
+ TRANSACTION (0.1ms) ROLLBACK
8605
+ TRANSACTION (0.1ms) ROLLBACK
8606
+ TRANSACTION (0.1ms) ROLLBACK
8607
+ TRANSACTION (0.1ms) BEGIN
8608
+ TRANSACTION (0.2ms) BEGIN
8609
+ TRANSACTION (0.1ms) BEGIN
8610
+ -------------------------------------------------------------------
8611
+ ChecklistTest: test_it_knows_the_number_of_checks_in_the_Repository
8612
+ -------------------------------------------------------------------
8613
+ TRANSACTION (0.1ms) ROLLBACK
8614
+ TRANSACTION (0.1ms) ROLLBACK
8615
+ TRANSACTION (0.1ms) ROLLBACK
8616
+ TRANSACTION (0.1ms) BEGIN
8617
+ TRANSACTION (0.1ms) BEGIN
8618
+ TRANSACTION (0.1ms) BEGIN
8619
+ ------------------------------------------
8620
+ ChecklistTest: test_it_will_run_each_check
8621
+ ------------------------------------------
8622
+ down_retry_delay not reached for 127.0.0.1:11211 (59.988 seconds left)
8623
+ down_retry_delay not reached for 127.0.0.1:11211 (59.988 seconds left)
8624
+ TRANSACTION (0.2ms) ROLLBACK
8625
+ TRANSACTION (0.1ms) ROLLBACK
8626
+ TRANSACTION (0.1ms) ROLLBACK
8627
+ TRANSACTION (0.1ms) BEGIN
8628
+ TRANSACTION (0.1ms) BEGIN
8629
+ TRANSACTION (0.1ms) BEGIN
8630
+ -----------------------------------------------------------------
8631
+ RedisCheckTest: test_#run_sets_failure_conditions_on_a_failed_run
8632
+ -----------------------------------------------------------------
8633
+ TRANSACTION (0.1ms) ROLLBACK
8634
+ TRANSACTION (0.1ms) ROLLBACK
8635
+ TRANSACTION (0.1ms) ROLLBACK
8636
+ TRANSACTION (0.1ms) BEGIN
8637
+ TRANSACTION (0.1ms) BEGIN
8638
+ TRANSACTION (0.1ms) BEGIN
8639
+ -------------------------------------------------------------------
8640
+ RedisCheckTest: test_#run_sets_success_conditions_on_successful_run
8641
+ -------------------------------------------------------------------
8642
+ TRANSACTION (0.1ms) ROLLBACK
8643
+ TRANSACTION (0.1ms) ROLLBACK
8644
+ TRANSACTION (0.1ms) ROLLBACK
8645
+ TRANSACTION (0.2ms) BEGIN
8646
+ TRANSACTION (0.1ms) BEGIN
8647
+ TRANSACTION (0.1ms) BEGIN
8648
+ ------------------------------------------
8649
+ RedisCheckTest: test_given_nil_as_a_config
8650
+ ------------------------------------------
8651
+ TRANSACTION (0.1ms) ROLLBACK
8652
+ TRANSACTION (0.1ms) ROLLBACK
8653
+ TRANSACTION (0.1ms) ROLLBACK
8654
+ TRANSACTION (0.1ms) BEGIN
8655
+ TRANSACTION (0.1ms) BEGIN
8656
+ TRANSACTION (0.1ms) BEGIN
8657
+ ----------------------------------------------------------------------------
8658
+ TrafficEnabledCheckTest: test_#check_sets_failure_conditions_on_a_failed_run
8659
+ ----------------------------------------------------------------------------
8660
+ TRANSACTION (0.1ms) ROLLBACK
8661
+ TRANSACTION (0.1ms) ROLLBACK
8662
+ TRANSACTION (0.1ms) ROLLBACK
8663
+ TRANSACTION (0.1ms) BEGIN
8664
+ TRANSACTION (0.1ms) BEGIN
8665
+ TRANSACTION (0.1ms) BEGIN
8666
+ ------------------------------------------------------------------------------
8667
+ TrafficEnabledCheckTest: test_#check_sets_success_conditions_on_successful_run
8668
+ ------------------------------------------------------------------------------
8669
+ TRANSACTION (0.1ms) ROLLBACK
8670
+ TRANSACTION (0.1ms) ROLLBACK
8671
+ TRANSACTION (0.1ms) ROLLBACK
8672
+ TRANSACTION (0.1ms) BEGIN
8673
+ TRANSACTION (0.1ms) BEGIN
8674
+ TRANSACTION (0.1ms) BEGIN
8675
+ ---------------------------------------------------------------------
8676
+ MemcachedCheckTest: test_#run_sets_failure_conditions_on_a_failed_run
8677
+ ---------------------------------------------------------------------
8678
+ TRANSACTION (0.1ms) ROLLBACK
8679
+ TRANSACTION (0.1ms) ROLLBACK
8680
+ TRANSACTION (0.1ms) ROLLBACK
8681
+ TRANSACTION (0.1ms) BEGIN
8682
+ TRANSACTION (0.1ms) BEGIN
8683
+ TRANSACTION (0.1ms) BEGIN
8684
+ -----------------------------------------------------------------------
8685
+ MemcachedCheckTest: test_#run_sets_success_conditions_on_successful_run
8686
+ -----------------------------------------------------------------------
8687
+ TRANSACTION (0.1ms) ROLLBACK
8688
+ TRANSACTION (0.1ms) ROLLBACK
8689
+ TRANSACTION (0.1ms) ROLLBACK
8690
+ TRANSACTION (0.1ms) BEGIN
8691
+ TRANSACTION (0.1ms) BEGIN
8692
+ TRANSACTION (0.1ms) BEGIN
8693
+ ------------------------------------------------------------------
8694
+ MemcachedCheckTest: test_fails_when_passed_a_cache_with_no_servers
8695
+ ------------------------------------------------------------------
8696
+ TRANSACTION (0.1ms) ROLLBACK
8697
+ TRANSACTION (0.1ms) ROLLBACK
8698
+ TRANSACTION (0.1ms) ROLLBACK
8699
+ TRANSACTION (0.1ms) BEGIN
8700
+ TRANSACTION (0.1ms) BEGIN
8701
+ TRANSACTION (0.1ms) BEGIN
8702
+ ---------------------------------------------------------
8703
+ MemcachedCheckTest: test_fails_when_passed_nil_as_a_cache
8704
+ ---------------------------------------------------------
8705
+ TRANSACTION (0.1ms) ROLLBACK
8706
+ TRANSACTION (0.1ms) ROLLBACK
8707
+ TRANSACTION (0.1ms) ROLLBACK
8708
+ TRANSACTION (0.1ms) BEGIN
8709
+ TRANSACTION (0.1ms) BEGIN
8710
+ TRANSACTION (0.1ms) BEGIN
8711
+ --------------------------------------------------------------------------------------
8712
+ ActiveRecordCheckOnPostgresqlTest: test_#check_returns_a_failed_result_on_a_failed_run
8713
+ --------------------------------------------------------------------------------------
8714
+ TRANSACTION (0.1ms) ROLLBACK
8715
+ TRANSACTION (0.1ms) ROLLBACK
8716
+ TRANSACTION (0.1ms) ROLLBACK
8717
+ TRANSACTION (0.1ms) BEGIN
8718
+ TRANSACTION (0.1ms) BEGIN
8719
+ TRANSACTION (0.1ms) BEGIN
8720
+ ----------------------------------------------------------------------------------------
8721
+ ActiveRecordCheckOnPostgresqlTest: test_#check_returns_a_successful_result_on_a_good_run
8722
+ ----------------------------------------------------------------------------------------
8723
+ TRANSACTION (0.1ms) ROLLBACK
8724
+ TRANSACTION (0.1ms) ROLLBACK
8725
+ TRANSACTION (0.1ms) ROLLBACK
8726
+ TRANSACTION (0.1ms) BEGIN
8727
+ TRANSACTION (0.1ms) BEGIN
8728
+ TRANSACTION (0.1ms) BEGIN
8729
+ --------------------------------------------------------------------------
8730
+ ActiveRecordCheckTest: test_#check_returns_a_failed_result_on_a_failed_run
8731
+ --------------------------------------------------------------------------
8732
+ TRANSACTION (0.1ms) ROLLBACK
8733
+ TRANSACTION (0.1ms) ROLLBACK
8734
+ TRANSACTION (0.1ms) ROLLBACK
8735
+ TRANSACTION (0.1ms) BEGIN
8736
+ TRANSACTION (0.1ms) BEGIN
8737
+ TRANSACTION (0.1ms) BEGIN
8738
+ ----------------------------------------------------------------------------
8739
+ ActiveRecordCheckTest: test_#check_returns_a_successful_result_on_a_good_run
8740
+ ----------------------------------------------------------------------------
8741
+ TRANSACTION (0.1ms) ROLLBACK
8742
+ TRANSACTION (0.1ms) ROLLBACK
8743
+ TRANSACTION (0.1ms) ROLLBACK
8744
+ TRANSACTION (0.1ms) BEGIN
8745
+ TRANSACTION (0.1ms) BEGIN
8746
+ TRANSACTION (0.1ms) BEGIN
8747
+ -------------------------------------------------
8748
+ ActiveRecordCheckTest: test_given_nil_as_a_config
8749
+ -------------------------------------------------
8750
+ TRANSACTION (0.1ms) ROLLBACK
8751
+ TRANSACTION (0.1ms) ROLLBACK
8752
+ TRANSACTION (0.1ms) ROLLBACK
8753
+ TRANSACTION (0.1ms) BEGIN
8754
+ TRANSACTION (0.1ms) BEGIN
8755
+ TRANSACTION (0.1ms) BEGIN
8756
+ ---------------------------------------------------------------------
8757
+ SemaphoreCheckTest: test_#run_sets_failure_conditions_on_a_failed_run
8758
+ ---------------------------------------------------------------------
8759
+ TRANSACTION (0.1ms) ROLLBACK
8760
+ TRANSACTION (0.1ms) ROLLBACK
8761
+ TRANSACTION (0.1ms) ROLLBACK
8762
+ TRANSACTION (0.1ms) BEGIN
8763
+ TRANSACTION (0.1ms) BEGIN
8764
+ TRANSACTION (0.1ms) BEGIN
8765
+ -----------------------------------------------------------------------
8766
+ SemaphoreCheckTest: test_#run_sets_success_conditions_on_successful_run
8767
+ -----------------------------------------------------------------------
8768
+ TRANSACTION (0.1ms) ROLLBACK
8769
+ TRANSACTION (0.1ms) ROLLBACK
8770
+ TRANSACTION (0.1ms) ROLLBACK
8771
+ TRANSACTION (0.1ms) BEGIN
8772
+ TRANSACTION (0.1ms) BEGIN
8773
+ TRANSACTION (0.1ms) BEGIN
8774
+ ------------------------------------------------------------
8775
+ Easymon::ChecksControllerTest: test_index_returns_valid_json
8776
+ ------------------------------------------------------------
8777
+ Processing by Easymon::ChecksController#index as JSON
8778
+ Completed 200 OK in 0ms (Views: 0.1ms | ActiveRecord: 0.0ms | Allocations: 342)
8779
+ TRANSACTION (0.1ms) ROLLBACK
8780
+ TRANSACTION (0.1ms) ROLLBACK
8781
+ TRANSACTION (0.1ms) ROLLBACK
8782
+ TRANSACTION (0.1ms) BEGIN
8783
+ TRANSACTION (0.1ms) BEGIN
8784
+ TRANSACTION (0.1ms) BEGIN
8785
+ ------------------------------------------------------------
8786
+ Easymon::ChecksControllerTest: test_index_when_a_check_fails
8787
+ ------------------------------------------------------------
8788
+ Processing by Easymon::ChecksController#index as HTML
8789
+ Rendering text template
8790
+ Rendered text template (Duration: 0.0ms | Allocations: 3)
8791
+ Completed 503 Service Unavailable in 1ms (Views: 0.2ms | ActiveRecord: 0.0ms | Allocations: 488)
8792
+ TRANSACTION (0.1ms) ROLLBACK
8793
+ TRANSACTION (0.6ms) ROLLBACK
8794
+ TRANSACTION (0.1ms) ROLLBACK
8795
+ TRANSACTION (0.1ms) BEGIN
8796
+ TRANSACTION (0.1ms) BEGIN
8797
+ TRANSACTION (0.5ms) BEGIN
8798
+ ---------------------------------------------------------------------
8799
+ Easymon::ChecksControllerTest: test_index_when_a_critical_check_fails
8800
+ ---------------------------------------------------------------------
8801
+ Processing by Easymon::ChecksController#index as HTML
8802
+ Rendering text template
8803
+ Rendered text template (Duration: 0.0ms | Allocations: 1)
8804
+ Completed 503 Service Unavailable in 0ms (Views: 0.1ms | ActiveRecord: 0.0ms | Allocations: 259)
8805
+ TRANSACTION (0.1ms) ROLLBACK
8806
+ TRANSACTION (0.1ms) ROLLBACK
8807
+ TRANSACTION (0.1ms) ROLLBACK
8808
+ TRANSACTION (0.1ms) BEGIN
8809
+ TRANSACTION (0.1ms) BEGIN
8810
+ TRANSACTION (0.1ms) BEGIN
8811
+ -------------------------------------------------------------------------
8812
+ Easymon::ChecksControllerTest: test_index_when_a_non-critical_check_fails
8813
+ -------------------------------------------------------------------------
8814
+ Processing by Easymon::ChecksController#index as HTML
8815
+ Rendering text template
8816
+ Rendered text template (Duration: 0.0ms | Allocations: 1)
8817
+ Completed 200 OK in 0ms (Views: 0.1ms | ActiveRecord: 0.0ms | Allocations: 312)
8818
+ TRANSACTION (0.1ms) ROLLBACK
8819
+ TRANSACTION (0.1ms) ROLLBACK
8820
+ TRANSACTION (0.1ms) ROLLBACK
8821
+ TRANSACTION (0.1ms) BEGIN
8822
+ TRANSACTION (0.1ms) BEGIN
8823
+ TRANSACTION (0.1ms) BEGIN
8824
+ --------------------------------------------------------------
8825
+ Easymon::ChecksControllerTest: test_index_when_all_checks_pass
8826
+ --------------------------------------------------------------
8827
+ Processing by Easymon::ChecksController#index as HTML
8828
+ Rendering text template
8829
+ Rendered text template (Duration: 0.0ms | Allocations: 1)
8830
+ Completed 200 OK in 0ms (Views: 0.1ms | ActiveRecord: 0.0ms | Allocations: 229)
8831
+ TRANSACTION (0.1ms) ROLLBACK
8832
+ TRANSACTION (0.1ms) ROLLBACK
8833
+ TRANSACTION (0.2ms) ROLLBACK
8834
+ TRANSACTION (0.1ms) BEGIN
8835
+ TRANSACTION (0.1ms) BEGIN
8836
+ TRANSACTION (0.1ms) BEGIN
8837
+ --------------------------------------------------------------------
8838
+ Easymon::ChecksControllerTest: test_index_when_no_checks_are_defined
8839
+ --------------------------------------------------------------------
8840
+ Processing by Easymon::ChecksController#index as HTML
8841
+ Rendering text template
8842
+ Rendered text template (Duration: 0.0ms | Allocations: 1)
8843
+ Completed 503 Service Unavailable in 0ms (Views: 0.0ms | ActiveRecord: 0.0ms | Allocations: 194)
8844
+ TRANSACTION (0.1ms) ROLLBACK
8845
+ TRANSACTION (0.1ms) ROLLBACK
8846
+ TRANSACTION (0.2ms) ROLLBACK
8847
+ TRANSACTION (0.1ms) BEGIN
8848
+ TRANSACTION (0.1ms) BEGIN
8849
+ TRANSACTION (0.1ms) BEGIN
8850
+ ----------------------------------------------------------------
8851
+ Easymon::ChecksControllerTest: test_return_403_if_not_authorized
8852
+ ----------------------------------------------------------------
8853
+ Processing by Easymon::ChecksController#index as HTML
8854
+ Filter chain halted as :authorize_request rendered or redirected
8855
+ Completed 403 Forbidden in 0ms (ActiveRecord: 0.0ms | Allocations: 79)
8856
+ Processing by Easymon::ChecksController#show as HTML
8857
+ Parameters: {"check"=>"database"}
8858
+ Filter chain halted as :authorize_request rendered or redirected
8859
+ Completed 403 Forbidden in 0ms (ActiveRecord: 0.0ms | Allocations: 71)
8860
+ TRANSACTION (0.1ms) ROLLBACK
8861
+ TRANSACTION (0.1ms) ROLLBACK
8862
+ TRANSACTION (0.1ms) ROLLBACK
8863
+ TRANSACTION (0.1ms) BEGIN
8864
+ TRANSACTION (0.1ms) BEGIN
8865
+ TRANSACTION (0.1ms) BEGIN
8866
+ ------------------------------------------------------------------
8867
+ Easymon::ChecksControllerTest: test_show_if_the_check_is_not_found
8868
+ ------------------------------------------------------------------
8869
+ Processing by Easymon::ChecksController#show as HTML
8870
+ Parameters: {"check"=>"database"}
8871
+ Rendering text template
8872
+ Rendered text template (Duration: 0.0ms | Allocations: 1)
8873
+ Completed 404 Not Found in 0ms (Views: 0.1ms | ActiveRecord: 0.0ms | Allocations: 204)
8874
+ TRANSACTION (0.1ms) ROLLBACK
8875
+ TRANSACTION (0.4ms) ROLLBACK
8876
+ TRANSACTION (0.2ms) ROLLBACK
8877
+ TRANSACTION (0.1ms) BEGIN
8878
+ TRANSACTION (0.1ms) BEGIN
8879
+ TRANSACTION (0.1ms) BEGIN
8880
+ -------------------------------------------------------------------
8881
+ Easymon::ChecksControllerTest: test_show_json_when_the_check_passes
8882
+ -------------------------------------------------------------------
8883
+ Processing by Easymon::ChecksController#show as JSON
8884
+ Parameters: {"check"=>"database"}
8885
+ Completed 200 OK in 0ms (Views: 0.0ms | ActiveRecord: 0.0ms | Allocations: 175)
8886
+ TRANSACTION (0.3ms) ROLLBACK
8887
+ TRANSACTION (0.1ms) ROLLBACK
8888
+ TRANSACTION (0.1ms) ROLLBACK
8889
+ TRANSACTION (0.1ms) BEGIN
8890
+ TRANSACTION (0.1ms) BEGIN
8891
+ TRANSACTION (0.1ms) BEGIN
8892
+ -------------------------------------------------------------
8893
+ Easymon::ChecksControllerTest: test_show_when_the_check_fails
8894
+ -------------------------------------------------------------
8895
+ Processing by Easymon::ChecksController#show as HTML
8896
+ Parameters: {"check"=>"database"}
8897
+ Rendering text template
8898
+ Rendered text template (Duration: 0.0ms | Allocations: 1)
8899
+ Completed 503 Service Unavailable in 0ms (Views: 0.1ms | ActiveRecord: 0.0ms | Allocations: 213)
8900
+ TRANSACTION (0.1ms) ROLLBACK
8901
+ TRANSACTION (0.1ms) ROLLBACK
8902
+ TRANSACTION (0.1ms) ROLLBACK
8903
+ TRANSACTION (0.1ms) BEGIN
8904
+ TRANSACTION (0.1ms) BEGIN
8905
+ TRANSACTION (0.1ms) BEGIN
8906
+ --------------------------------------------------------------
8907
+ Easymon::ChecksControllerTest: test_show_when_the_check_passes
8908
+ --------------------------------------------------------------
8909
+ Processing by Easymon::ChecksController#show as HTML
8910
+ Parameters: {"check"=>"database"}
8911
+ Rendering text template
8912
+ Rendered text template (Duration: 0.0ms | Allocations: 1)
8913
+ Completed 200 OK in 0ms (Views: 0.1ms | ActiveRecord: 0.0ms | Allocations: 188)
8914
+ TRANSACTION (0.1ms) ROLLBACK
8915
+ TRANSACTION (0.1ms) ROLLBACK
8916
+ TRANSACTION (0.1ms) ROLLBACK
data/test/test_helper.rb CHANGED
@@ -34,4 +34,4 @@ end
34
34
 
35
35
  # setting up mocha *after* we load the test libraries as per
36
36
  # http://gofreerange.com/mocha/docs/
37
- require 'mocha/mini_test'
37
+ require 'mocha/minitest'
@@ -3,50 +3,50 @@ require 'test_helper'
3
3
  class SplitActiveRecordCheckTest < ActiveSupport::TestCase
4
4
 
5
5
  test "#run sets success conditions on successful run" do
6
- master = ActiveRecord::Base.connection
6
+ primary = ActiveRecord::Base.connection
7
7
  Easymon::Base.establish_connection
8
- slave = Easymon::Base.connection
8
+ replica = Easymon::Base.connection
9
9
 
10
- check = Easymon::SplitActiveRecordCheck.new { [master, slave] }
10
+ check = Easymon::SplitActiveRecordCheck.new { [primary, replica] }
11
11
 
12
12
  results = check.check
13
13
 
14
- assert_equal("Master: Up - Slave: Up", results[1])
14
+ assert_equal("Primary: Up - Replica: Up", results[1])
15
15
  assert_equal(true, results[0])
16
16
  end
17
17
 
18
- test "#run sets failed conditions when slave is down" do
19
- master = ActiveRecord::Base.connection
18
+ test "#run sets failed conditions when replica is down" do
19
+ primary = ActiveRecord::Base.connection
20
20
  Easymon::Base.establish_connection
21
- slave = Easymon::Base.connection
21
+ replica = Easymon::Base.connection
22
22
 
23
- slave.stubs(:active?).raises("boom")
23
+ replica.stubs(:active?).raises("boom")
24
24
 
25
- check = Easymon::SplitActiveRecordCheck.new { [master, slave] }
25
+ check = Easymon::SplitActiveRecordCheck.new { [primary, replica] }
26
26
  results = check.check
27
27
 
28
- assert_equal("Master: Up - Slave: Down", results[1])
28
+ assert_equal("Primary: Up - Replica: Down", results[1])
29
29
  assert_equal(false, results[0])
30
30
  end
31
31
 
32
- test "#run sets failed conditions when master is down" do
33
- master = ActiveRecord::Base.connection
32
+ test "#run sets failed conditions when primary is down" do
33
+ primary = ActiveRecord::Base.connection
34
34
  Easymon::Base.establish_connection
35
- slave = Easymon::Base.connection
35
+ replica = Easymon::Base.connection
36
36
 
37
- master.stubs(:active?).raises("boom")
37
+ primary.stubs(:active?).raises("boom")
38
38
 
39
- check = Easymon::SplitActiveRecordCheck.new { [master, slave] }
39
+ check = Easymon::SplitActiveRecordCheck.new { [primary, replica] }
40
40
  results = check.check
41
41
 
42
- assert_equal("Master: Down - Slave: Up", results[1])
42
+ assert_equal("Primary: Down - Replica: Up", results[1])
43
43
  assert_equal(false, results[0])
44
44
  end
45
45
 
46
46
  test "given nil as a config" do
47
47
  check = Easymon::SplitActiveRecordCheck.new { }
48
48
  results = check.check
49
- assert_equal("Master: Down - Slave: Down", results[1])
49
+ assert_equal("Primary: Down - Replica: Down", results[1])
50
50
  assert_equal(false, results[0])
51
51
  end
52
52
  end
@@ -63,8 +63,8 @@ module Easymon
63
63
  end
64
64
 
65
65
  def database_configuration
66
- env = "#{Rails.env}_slave"
67
- config = YAML.load_file(Rails.root.join('config/database.yml'))[env]
66
+ env = "#{Rails.env}_replica"
67
+ YAML.load_file(Rails.root.join('config/database.yml'))[env]
68
68
  end
69
69
  end
70
70
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: easymon
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.5'
4
+ version: 1.6.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nathan Anderson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-05-06 00:00:00.000000000 Z
11
+ date: 2022-06-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: redis
@@ -70,28 +70,28 @@ dependencies:
70
70
  requirements:
71
71
  - - "~>"
72
72
  - !ruby/object:Gem::Version
73
- version: '0.18'
73
+ version: '1.2'
74
74
  type: :development
75
75
  prerelease: false
76
76
  version_requirements: !ruby/object:Gem::Requirement
77
77
  requirements:
78
78
  - - "~>"
79
79
  - !ruby/object:Gem::Version
80
- version: '0.18'
80
+ version: '1.2'
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: mocha
83
83
  requirement: !ruby/object:Gem::Requirement
84
84
  requirements:
85
85
  - - "~>"
86
86
  - !ruby/object:Gem::Version
87
- version: '1.1'
87
+ version: '1.11'
88
88
  type: :development
89
89
  prerelease: false
90
90
  version_requirements: !ruby/object:Gem::Requirement
91
91
  requirements:
92
92
  - - "~>"
93
93
  - !ruby/object:Gem::Version
94
- version: '1.1'
94
+ version: '1.11'
95
95
  - !ruby/object:Gem::Dependency
96
96
  name: dalli
97
97
  requirement: !ruby/object:Gem::Requirement
@@ -142,6 +142,7 @@ files:
142
142
  - test/controllers/easymon/checks_controller_test.rb
143
143
  - test/dummy/README.rdoc
144
144
  - test/dummy/Rakefile
145
+ - test/dummy/app/assets/config/manifest.js
145
146
  - test/dummy/app/assets/javascripts/application.js
146
147
  - test/dummy/app/assets/javascripts/easymon.js
147
148
  - test/dummy/app/assets/stylesheets/application.css
@@ -173,6 +174,7 @@ files:
173
174
  - test/dummy/config/memcached.yml
174
175
  - test/dummy/config/redis.yml
175
176
  - test/dummy/config/routes.rb
177
+ - test/dummy/config/storage.yml
176
178
  - test/dummy/log/development.log
177
179
  - test/dummy/log/test.log
178
180
  - test/dummy/public/404.html
@@ -237,6 +239,7 @@ test_files:
237
239
  - test/dummy/app/views/easymon/index.html.erb
238
240
  - test/dummy/app/views/easymon/show.html.erb
239
241
  - test/dummy/app/views/layouts/application.html.erb
242
+ - test/dummy/app/assets/config/manifest.js
240
243
  - test/dummy/app/assets/javascripts/easymon.js
241
244
  - test/dummy/app/assets/javascripts/application.js
242
245
  - test/dummy/app/assets/stylesheets/application.css
@@ -250,6 +253,7 @@ test_files:
250
253
  - test/dummy/config/environments/test.rb
251
254
  - test/dummy/config/environment.rb
252
255
  - test/dummy/config/redis.yml
256
+ - test/dummy/config/storage.yml
253
257
  - test/dummy/config/application.rb
254
258
  - test/dummy/config/memcached.yml
255
259
  - test/dummy/config/database.yml