lib/eye/notify/datadog.rb in eye-patch-0.5.1 vs lib/eye/notify/datadog.rb in eye-patch-1.0.0
- old
+ new
@@ -1,12 +1,15 @@
# frozen_string_literal: true
require "dogapi"
module Eye
+
class Notify
+
class DataDog < Eye::Notify
+
param :aggregation_key, String
param :alert_type, String
param :api_key, String, true
param :source_type, String
param :tags, Array
@@ -14,30 +17,31 @@
def execute
options = {
alert_type: "error",
aggregation_key: msg_host + msg_full_name,
source_type: "None",
- tags: ["eye"]
+ tags: ["eye"],
}
options[:alert_type] = alert_type if alert_type
options[:aggregation_key] = aggregation_key if aggregation_key
options[:source_type] = source_type if source_type
options[:tags] = tags if tags
- dog = Dogapi::Client.new(api_key)
-
- dog.emit_event(
- Dogapi::Event.new(
- message_body,
- aggregation_key: options[:aggregation_key],
- alert_type: options[:alert_type],
- msg_title: message_subject,
- host: msg_host,
- source_type: options[:source_type],
- tags: options[:tags]
- )
+ event = Dogapi::Event.new(
+ message_body,
+ aggregation_key: options[:aggregation_key],
+ alert_type: options[:alert_type],
+ msg_title: message_subject,
+ host: msg_host,
+ source_type: options[:source_type],
+ tags: options[:tags],
)
+
+ Dogapi::Client.new(api_key).emit_event(event)
end
+
end
+
end
+
end