Class: Deimos::Metrics::Datadog
- Defined in:
- lib/deimos/metrics/datadog.rb
Overview
A Metrics wrapper class for Datadog.
Instance Method Summary collapse
- 
  
    
      #gauge(metric_name, count, options = {})  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    :nodoc:. 
- 
  
    
      #histogram(metric_name, count, options = {})  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    :nodoc:. 
- 
  
    
      #increment(metric_name, options = {})  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    :nodoc:. 
- 
  
    
      #initialize(config, logger)  ⇒ Datadog 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    :nodoc:. 
- 
  
    
      #time(metric_name, options = {})  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    :nodoc:. 
Constructor Details
#initialize(config, logger) ⇒ Datadog
:nodoc:
| 10 11 12 13 14 15 16 17 18 19 20 21 22 | # File 'lib/deimos/metrics/datadog.rb', line 10 def initialize(config, logger) raise 'Metrics config must specify host_ip' if config[:host_ip].nil? raise 'Metrics config must specify host_port' if config[:host_port].nil? raise 'Metrics config must specify namespace' if config[:namespace].nil? logger.info("DatadogMetricsProvider configured with: #{config}") @client = ::Datadog::Statsd.new( config[:host_ip], config[:host_port] ) @client. = config[:tags] @client.namespace = config[:namespace] end | 
Instance Method Details
#gauge(metric_name, count, options = {}) ⇒ Object
:nodoc:
| 30 31 32 | # File 'lib/deimos/metrics/datadog.rb', line 30 def gauge(metric_name, count, ={}) @client.gauge(metric_name, count, ) end | 
#histogram(metric_name, count, options = {}) ⇒ Object
:nodoc:
| 35 36 37 | # File 'lib/deimos/metrics/datadog.rb', line 35 def histogram(metric_name, count, ={}) @client.histogram(metric_name, count, ) end | 
#increment(metric_name, options = {}) ⇒ Object
:nodoc:
| 25 26 27 | # File 'lib/deimos/metrics/datadog.rb', line 25 def increment(metric_name, ={}) @client.increment(metric_name, ) end | 
#time(metric_name, options = {}) ⇒ Object
:nodoc:
| 40 41 42 43 44 | # File 'lib/deimos/metrics/datadog.rb', line 40 def time(metric_name, ={}) @client.time(metric_name, ) do yield end end |