Sha256: d924b2cff1717d6376ce36e09198c4c5f192ce1e33ad19a520111fb0a4cba17b

Contents?: true

Size: 1.1 KB

Versions: 23

Compression:

Stored size: 1.1 KB

Contents

require 'rubygems' unless defined?(Gem)
require 'statsd'

module Vmpooler
  class Statsd
    attr_reader :server, :port, :prefix

    def initialize(params = {})
      if params['server'].nil? || params['server'].empty?
        raise ArgumentError, "Statsd server is required. Config: #{params.inspect}"
      end

      host    = params['server']
      @port   = params['port'] || 8125
      @prefix = params['prefix'] || 'vmpooler'
      @server = ::Statsd.new(host, @port)
    end

    def increment(label)
      server.increment(prefix + '.' + label)
    rescue => err
      $stderr.puts "Failure incrementing #{prefix}.#{label} on statsd server [#{server}:#{port}]: #{err}"
    end

    def gauge(label, value)
      server.gauge(prefix + '.' + label, value)
    rescue => err
      $stderr.puts "Failure updating gauge #{prefix}.#{label} on statsd server [#{server}:#{port}]: #{err}"
    end

    def timing(label, duration)
      server.timing(prefix + '.' + label, duration)
    rescue => err
      $stderr.puts "Failure updating timing #{prefix}.#{label} on statsd server [#{server}:#{port}]: #{err}"
    end
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
vmpooler-0.10.3 lib/vmpooler/statsd.rb
vmpooler-0.10.2 lib/vmpooler/statsd.rb
vmpooler-0.9.1 lib/vmpooler/statsd.rb
vmpooler-0.9.0 lib/vmpooler/statsd.rb
vmpooler-0.8.2 lib/vmpooler/statsd.rb
vmpooler-0.8.1 lib/vmpooler/statsd.rb
vmpooler-0.8.0 lib/vmpooler/statsd.rb
vmpooler-0.7.2 lib/vmpooler/statsd.rb
vmpooler-0.7.1 lib/vmpooler/statsd.rb
vmpooler-0.7.0 lib/vmpooler/statsd.rb
vmpooler-0.6.3 lib/vmpooler/statsd.rb
vmpooler-0.6.2 lib/vmpooler/statsd.rb
vmpooler-0.6.1 lib/vmpooler/statsd.rb
vmpooler-0.6.0 lib/vmpooler/statsd.rb
vmpooler-0.5.1 lib/vmpooler/statsd.rb
vmpooler-0.5.0 lib/vmpooler/statsd.rb
vmpooler-0.4.0 lib/vmpooler/statsd.rb
vmpooler-0.3.0 lib/vmpooler/statsd.rb
vmpooler-0.2.31 lib/vmpooler/statsd.rb
vmpooler-0.2.2 lib/vmpooler/statsd.rb