Class: LogicMonitor::V3
- Inherits:
-
Integration
- Object
- Integration
- LogicMonitor::V3
- Defined in:
- app/models/pager_tree/integrations/logic_monitor/v3.rb
Constant Summary collapse
- OPTIONS =
[ {key: :alert_acknowledged, type: :boolean, default: false}, {key: :logic_monitor_account_name, type: :string, default: nil}, {key: :access_id, type: :string, default: nil}, {key: :access_key, type: :string, default: nil}, {key: :bearer_token, type: :string, default: nil} ]
Instance Method Summary collapse
- #adapter_action ⇒ Object
- #adapter_incoming_can_defer? ⇒ Boolean
- #adapter_outgoing_interest?(event_name) ⇒ Boolean
- #adapter_process_create ⇒ Object
- #adapter_process_outgoing ⇒ Object
- #adapter_show_outgoing_webhook_delivery? ⇒ Boolean
- #adapter_supports_incoming? ⇒ Boolean
- #adapter_supports_outgoing? ⇒ Boolean
- #adapter_thirdparty_id ⇒ Object
Instance Method Details
#adapter_action ⇒ Object
46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'app/models/pager_tree/integrations/logic_monitor/v3.rb', line 46 def adapter_action alert_status = adapter_incoming_request_params.dig("alertstatus") case alert_status when "active", "test" :create when "ack" :acknowledge when "clear" :resolve else :other end end |
#adapter_incoming_can_defer? ⇒ Boolean
38 39 40 |
# File 'app/models/pager_tree/integrations/logic_monitor/v3.rb', line 38 def adapter_incoming_can_defer? true end |
#adapter_outgoing_interest?(event_name) ⇒ Boolean
30 31 32 |
# File 'app/models/pager_tree/integrations/logic_monitor/v3.rb', line 30 def adapter_outgoing_interest?(event_name) try("option_#{event_name}") || false end |
#adapter_process_create ⇒ Object
60 61 62 63 64 65 66 67 68 69 |
# File 'app/models/pager_tree/integrations/logic_monitor/v3.rb', line 60 def adapter_process_create Alert.new( title: _title, description: _description, urgency: _urgency, thirdparty_id: adapter_thirdparty_id, dedup_keys: [], additional_data: _additional_datums ) end |
#adapter_process_outgoing ⇒ Object
71 72 73 74 75 76 77 78 |
# File 'app/models/pager_tree/integrations/logic_monitor/v3.rb', line 71 def adapter_process_outgoing event = adapter_outgoing_event.event_name.to_s # only send sync to logic monitor if logic monitor is the source if event == "alert_acknowledged" && option_alert_acknowledged == true && adapter_outgoing_event.alert.source == self _on_acknowledge end end |
#adapter_show_outgoing_webhook_delivery? ⇒ Boolean
34 35 36 |
# File 'app/models/pager_tree/integrations/logic_monitor/v3.rb', line 34 def adapter_show_outgoing_webhook_delivery? true end |
#adapter_supports_incoming? ⇒ Boolean
22 23 24 |
# File 'app/models/pager_tree/integrations/logic_monitor/v3.rb', line 22 def adapter_supports_incoming? true end |
#adapter_supports_outgoing? ⇒ Boolean
26 27 28 |
# File 'app/models/pager_tree/integrations/logic_monitor/v3.rb', line 26 def adapter_supports_outgoing? true end |
#adapter_thirdparty_id ⇒ Object
42 43 44 |
# File 'app/models/pager_tree/integrations/logic_monitor/v3.rb', line 42 def adapter_thirdparty_id adapter_incoming_request_params.dig("internalid") end |