Skip to content

satish-olx/exometer_report_graphite

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Exometer graphite reporter

Usage

This reporter is meant to be used with exometer_core.

exometer_report_graphite

The graphite reporter uses the TCP/IP protocol to forward subscribed-to metrics and data points to a graphite server, such as the one provided by http://hostedgraphite.com. When the graphite reporter receives a metric-datapoint value (subscribed to through exometer_report:subscriber()), the reporter will immediately forward the key-value pair to the graphite server.

Configuring Graphite Reporter

Below is an example of the a graphite reporter application environment, with its correct location in the hierarchy:

{exometer, [
    {report, [
        {reporters, [
            {exometer_report_graphite, [
                {connect_timeout, 5000},
                {prefix, "web_stats"},
                {host, "carbon.hostedgraphite.com"},
                {port, 2003},
                {api_key, "267d121c-8387-459a-9326-000000000000"}
            ]}
        ]}
    ]}
]}

The following attributes are available for configuration:

  • connect_timeout (milliseconds - default: 5000)
    Specifies how long the graphie reporter plugin shall wait for a tcp connection to complete before timing out. A timed out connection will not be reconnected to automatically. (To be fixed.)

  • prefix (string - default: "")
    Specifies an optional prefix to prepend all metric names with before they are sent to the graphite server.

  • host (string - default: "carbon.hostedgraphite.com")
    Specifies the name (or IP address) of the graphite server to report to.

  • port (integer - default: 2003)
    Specifies the TCP port on the given graphite server to connect to.

  • api_key (string - default: n/a)
    Specifies the api key to use when reporting to a hosted graphite server.

If prefix is not specified, but api_key is, each metrics will be reported as ApiKey.Metric.

If prefix is specified, but api_key is not, each metrics will be reported as Prefix.Metric.

if neither prefix or api_key is specified, each metric will be reported simply as Metric.

Lineage

This is a direct copy of the original graphite reporter from exometer. In order to use the graphite reporter in a project with a modern rebar3 based build system, I've extracted the graphite reporter to avoid issues in exometer's dependencies, since exometer_core works fine and has a maintained hex.pm package.

Overall project structure stolen from the exometer_report_statsd package and used as an initial skeleton.

About

Standalone exometer reporter for graphite.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Erlang 100.0%