NAME

Net::Statsd::Client - Send data to StatsD / Graphite

VERSION

version 0.34

SYNOPSIS

use Net::Statsd::Client
my $stats = Net::Statsd::Client->new(prefix => "service.frobnitzer.");
$stats->increment("requests"); # service.frobnitzer.requests++ in graphite

my $timer = $stats->timer("request_duration");
# ... do something expensive ...
my $elapsed_ms = $timer->finish;

ATTRIBUTES

host

Optional: The hostname of the StatsD server to connect to. Defaults to localhost.

port

Optional: The port number to connect to. Defaults to 8125.

prefix

Optional: A prefix to be added to all metric names logged throught his object.

sample_rate

Optional: A value between 0 and 1, determines what fraction of events will actually be sent to the server. This sets the default sample rate, which can be overridden on a case-by-case basis when sending an event (for instance, you might choose to send errors at a 100% sample rate, but other events at 1%).

warning_callback

Optional: A function that will be called with a message if a timer is destroyed unexpectedly (see Net::Statsd::Timer). If this is not set the builtin warn will be used.

METHODS

$stats->increment($metric, [$sample_rate])

Increment the named counter metric.

$stats->decrement($metric, [$sample_rate])

Decrement the named counter metric.

$stats->update($metric, $count, [$sample_rate])

Add $count to the value of the named counter metric.

$stats->timing_ms($metric, $time, [$sample_rate])

Record an event of duration $time milliseconds for the named timing metric.

$stats->timer($metric, [$sample_rate])

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, [$sample_rate])

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, [$sample_rate])

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.

AUTHOR

Andrew Rodland <arodland@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2018 by Andrew Rodland.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.