module Capistrano::Datadog

Public Class Methods

cap_version() click to toggle source
   # File lib/capistrano/datadog.rb
18 def self.cap_version()
19   if @cap_version.nil? then
20     if !defined? Configuration
21       @cap_version = ''
22     elsif Configuration.respond_to? :instance
23       @cap_version = :v2
24     else
25       @cap_version = :v3
26     end
27   end
28   @cap_version
29 end
reporter() click to toggle source

Singleton method for Reporter

   # File lib/capistrano/datadog.rb
14 def self.reporter()
15   @reporter || @reporter = Reporter.new
16 end
submit(api_key, use_getlogin=true, endpoint=nil) click to toggle source
   # File lib/capistrano/datadog.rb
31 def self.submit(api_key, use_getlogin=true, endpoint=nil)
32   begin
33     if api_key
34       dog = Dogapi::Client.new(api_key, nil, nil, nil, true, nil, endpoint, false)
35       reporter.report(use_getlogin).each do |event, hosts|
36         if hosts.size > 0
37           hosts.each do |host|
38             dog.emit_event event, host: host
39           end
40         else
41           dog.emit_event event
42         end
43       end
44     else
45       puts 'No api key set, not submitting to Datadog'
46     end
47   rescue Timeout::Error => e
48     puts 'Could not submit to Datadog, request timed out.'
49   rescue => e
50     puts "Could not submit to Datadog: #{e.inspect}\n#{e.backtrace.join("\n")}"
51   end
52 end