class DatadogBackup::Monitors
Public Class Methods
new(options)
click to toggle source
Calls superclass method
DatadogBackup::Core::new
# File lib/datadog_backup/monitors.rb, line 34 def initialize(options) super(options) @banlist = %w[overall_state overall_state_modified matching_downtimes modified].freeze end
Public Instance Methods
all_monitors()
click to toggle source
# File lib/datadog_backup/monitors.rb, line 5 def all_monitors @all_monitors ||= get_all end
api_resource_name()
click to toggle source
# File lib/datadog_backup/monitors.rb, line 18 def api_resource_name 'monitor' end
api_service()
click to toggle source
# File lib/datadog_backup/monitors.rb, line 9 def api_service # The underlying class from Dogapi that talks to datadog client.instance_variable_get(:@monitor_svc) end
api_version()
click to toggle source
# File lib/datadog_backup/monitors.rb, line 14 def api_version 'v1' end
backup()
click to toggle source
# File lib/datadog_backup/monitors.rb, line 22 def backup all_monitors.map do |monitor| id = monitor['id'] write_file(dump(get_by_id(id)), filename(id)) end end
get_by_id(id)
click to toggle source
# File lib/datadog_backup/monitors.rb, line 29 def get_by_id(id) monitor = all_monitors.select { |monitor| monitor['id'].to_s == id.to_s }.first monitor.nil? ? {} : except(monitor) end