module DatadogRails
Constants
- BLACK
Colors
- BLUE
- BOLD
- CLEAR
Embed in a String to clear all previous ANSI sequences.
- CYAN
- GREEN
- MAGENTA
- RED
- VERSION
- WHITE
- YELLOW
Attributes
client[W]
configuration[W]
Public Class Methods
client()
click to toggle source
# File lib/datadog_rails.rb, line 34 def client @client ||= Statsd.new configuration.dogstatsd_host, configuration.dogstatsd_port end
color(text, color, bold=false)
click to toggle source
# File lib/datadog_rails.rb, line 62 def color(text, color, bold=false) bold = bold ? BOLD : "" "#{bold}#{color}#{text}#{CLEAR}" end
configuration()
click to toggle source
# File lib/datadog_rails.rb, line 24 def configuration @configuration ||= DatadogRails::Configuration.new end
configure() { |configuration| ... }
click to toggle source
# File lib/datadog_rails.rb, line 28 def configure yield(configuration) self.client = nil end
log_event(payload)
click to toggle source
# File lib/datadog_rails.rb, line 50 def log_event(payload) key_name = "#{configuration.application_name}.#{payload[:measurement]}" info = "\n" info << " \tmethod => #{payload[:action]}\n" info << " \tmetric => #{key_name}\n" info << " \tvalue => #{payload[:value]}\n" info << " \ttags => #{payload[:tags]}" Rails.logger.info color(" DatadogRails", GREEN, true) + color(info, WHITE, true) end
send_event_to_statsd(payload)
click to toggle source
# File lib/datadog_rails.rb, line 38 def send_event_to_statsd(payload) key_name = "#{configuration.application_name}.#{payload[:measurement]}" if payload[:action] == :increment client.increment key_name, :tags => payload[:tags] else client.histogram key_name, payload[:value], :tags => payload[:tags] end log_event(payload) if configuration.debug? end