NAME
Net::StatsD::Client::Telegraf - Send data to the statsd plugin of
telegraf, with support for influxDB's tagging system
SYNOPSIS
use Net::Statsd::Client::Telegraf;
my $stats = Net::Statsd::Client->new(prefix => "service.frobnitzer.", tags => { job => "my_program" } );
$stats->increment("requests", tags => { foo => "bar" }, sample_rate => 0.2 );
my $timer = $stats->timer("request_duration");
# ... do something expensive ...
my $elapsed_ms = $timer->finish;
DESCRIPTION
Net::StatsD::Client::Telegraf is a tiny layer on top of
Net::StatsD::Client to add support for tags as implemented by the
statsd collector of telegraf. Defaults tags can be passed as a hashref
in the tags attributes, each methods also accept a tags arguments to
add tags for the current statsd call
ATTRIBUTES
Net::Statsd::Client::Telegraf takes the exact same parameters as
Net::StatsD::Client, plus an additionnal tags, for the documentation of
the other attribute of the constructor, please refer to
Net::StatsD::Client
tags
Optional: A hashref containing key values to be used as tags in the
metrics name, as accepted by influxDB and telegraf
METHODS
Being a layer on top of Net::Statsd::Client,
Net::Statsd::Client::Telegraf exposes the exact same methods, the only
difference begin in the parameters, for all of its methods,
Net::Statsd::Client accepts an optional parameter sample_rate, instead
Net::Statsd::Client::Telegraf accept a lsit of options in key value
format The key being sample_rate and tags.
$stats->increment(
"metric_name",
tags => {
name1 => "value1",
name2 => "value2",
},
sample_rate => 0.2
);
$stats->increment($metric, [%options] )
Increment the named counter metric.
$stats->decrement($metric, [%options] )
Decrement the named counter metric.
$stats->update($metric, $count, [%options] )
Add $count to the value of the named counter metric.
$stats->timing_ms($metric, $time, [%options] )
Record an event of duration $time milliseconds for the named timing
metric.
$stats->timer($metric, [%options] )
Returns a Net::Statsd::Client::Timer object for the named timing
metric. The timer begins when you call this method, and ends when you
call finish on the timer. Calling finish on the timer returns the
elapsed time in milliseconds.
$stats->gauge($metric, $value, [%options] )
Send a value for the named gauge metric. Instead of adding up like
counters or producing a large number of quantiles like timings, gauges
simply take the last value sent in any time period, and don't require
scaling.
$statsd->set_add($metric, $value, [%options] )
Add a value to the named set metric. Sets count the number of *unique*
values they see in each time period, letting you estimate, for example,
the number of users using a site at a time by adding their userids to a
set each time they load a page.
SEE ALSO
This module is a tiny layer on top of Net::Stats::Client, to add the
tags functionality
AUTHOR
Pierre VIGIER <pierre.vigier@gmail.com>
COPYRIGHT
Copyright 2018- Pierre VIGIER
LICENSE
This library is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
SEE ALSO