From a6c5f82dfcf7a3dabf20bf317b9181c9cf3a2dc6 Mon Sep 17 00:00:00 2001 From: Nick Hammond Date: Thu, 8 May 2025 17:35:40 -0700 Subject: [PATCH 1/2] Fix monitor delete method --- lib/cronitor/monitor.rb | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/lib/cronitor/monitor.rb b/lib/cronitor/monitor.rb index 4c530e0..d3d51d6 100644 --- a/lib/cronitor/monitor.rb +++ b/lib/cronitor/monitor.rb @@ -5,6 +5,7 @@ class Monitor attr_reader :key, :api_key, :api_version, :env PING_RETRY_THRESHOLD = 3 + API_URL = 'https://cronitor.io/api/monitors'.freeze module Formats ALL = [ @@ -30,7 +31,7 @@ def self.put(opts = {}) opts.delete(:rollback) monitors = opts[:monitors] || [opts] - url = "https://cronitor.io/api/monitors" + url = Cronitor::Monitor::API_URL if opts[:format] == Cronitor::Monitor::Formats::YAML url = "#{url}.yaml" monitors['rollback'] = true if rollback @@ -79,7 +80,7 @@ def self.put(opts = {}) def self.delete(key) resp = HTTParty.delete( - "#{Cronitor.monitor_api_url}/#{key}", + "#{Cronitor::Monitor::API_URL}/#{key}", timeout: Cronitor.timeout, basic_auth: { username: Cronitor.api_key, @@ -158,7 +159,7 @@ def ok end def pause(hours = nil) - pause_url = "#{monitor_api_url}/#{key}/pause" + pause_url = "#{Cronitor::Monitor::API_URL}/#{key}/pause" pause_url += "/#{hours}" unless hours.nil? resp = HTTParty.get( @@ -186,11 +187,6 @@ def fallback_ping_api_url "https://cronitor.io/p/#{api_key}/#{key}" end - def monitor_api_url - "https://cronitor.io/api/monitors" - end - - private def fetch @@ -202,7 +198,7 @@ def fetch end HTTParty.get( - monitor_api_url, + Cronitor::Monitor::API_URL, basic_auth: { username: api_key, password: '' From 0e5386f1f18d6e4522aeaa866531d656340a7785 Mon Sep 17 00:00:00 2001 From: Nick Hammond Date: Thu, 8 May 2025 17:37:41 -0700 Subject: [PATCH 2/2] Update delete example in readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7b114f5..030c266 100644 --- a/README.md +++ b/README.md @@ -198,7 +198,7 @@ monitor = Cronitor::Monitor.new('heartbeat-monitor') monitor.pause(24) # pause alerting for 24 hours monitor.unpause # alias for .pause(0) monitor.ok # manually reset to a passing state alias for monitor.ping({state: ok}) -monitor.delete # destroy the monitor +Cronitor::Monitor.delete('heartbeat-monitor') # destroy the monitor ``` ## Package Configuration