27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
# File 'lib/statsd/instrument/backends/udp_backend.rb', line 27
def generate_packet(metric)
packet = +""
if metric.type == :_e
escaped_title = metric.name.gsub("\n", "\\n")
escaped_text = metric.value.gsub("\n", "\\n")
packet << "_e{#{escaped_title.size},#{escaped_text.size}}:#{escaped_title}|#{escaped_text}"
packet << generate_metadata(metric, EVENT_OPTIONS)
elsif metric.type == :_sc
packet << "_sc|#{metric.name}|#{metric.value}"
packet << generate_metadata(metric, SERVICE_CHECK_OPTIONS)
else
packet << "#{metric.name}:#{metric.value}|#{metric.type}"
end
packet << "|@#{metric.sample_rate}" if metric.sample_rate < 1
packet << "|##{metric.tags.join(',')}" if metric.tags
packet
end
|