Class: StatsD::Instrument::DogStatsDDatagram

Inherits:
Datagram
  • Object
show all
Defined in:
lib/statsd/instrument/dogstatsd_datagram.rb

Overview

Note:

This class is part of the new Client implementation that is intended to become the new default in the next major release of this library.

The Datagram class parses and inspects a StatsD datagrams

Instance Attribute Summary

Attributes inherited from Datagram

#source

Instance Method Summary collapse

Methods inherited from Datagram

#eql?, #hash, #initialize, #inspect, #sample_rate, #tags, #type

Constructor Details

This class inherits a constructor from StatsD::Instrument::Datagram

Instance Method Details

#aggregation_keyObject



31
32
33
# File 'lib/statsd/instrument/dogstatsd_datagram.rb', line 31

def aggregation_key
  parsed_datagram[:aggregation_key]
end

#alert_typeObject



43
44
45
# File 'lib/statsd/instrument/dogstatsd_datagram.rb', line 43

def alert_type
  parsed_datagram[:alert_type]
end

#hostnameObject



23
24
25
# File 'lib/statsd/instrument/dogstatsd_datagram.rb', line 23

def hostname
  parsed_datagram[:hostname]
end

#messageObject



47
48
49
# File 'lib/statsd/instrument/dogstatsd_datagram.rb', line 47

def message
  parsed_datagram[:message]
end

#nameObject



8
9
10
11
12
13
# File 'lib/statsd/instrument/dogstatsd_datagram.rb', line 8

def name
  @name ||= case type
  when :_e then parsed_datagram[:name].gsub('\n', "\n")
  else super
  end
end

#priorityObject



39
40
41
# File 'lib/statsd/instrument/dogstatsd_datagram.rb', line 39

def priority
  parsed_datagram[:priority]
end

#source_type_nameObject



35
36
37
# File 'lib/statsd/instrument/dogstatsd_datagram.rb', line 35

def source_type_name
  parsed_datagram[:source_type_name]
end

#timestampObject



27
28
29
# File 'lib/statsd/instrument/dogstatsd_datagram.rb', line 27

def timestamp
  Time.at(Integer(parsed_datagram[:timestamp])).utc
end

#valueObject



15
16
17
18
19
20
21
# File 'lib/statsd/instrument/dogstatsd_datagram.rb', line 15

def value
  @value ||= case type
  when :_sc then Integer(parsed_datagram[:value])
  when :_e then parsed_datagram[:value].gsub('\n', "\n")
  else super
  end
end