dsyman2 / dropwizard-wavefront

Dropwizard Metrics Reporter For Wavefront

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

dropwizard-wavefront

A Dropwizard Metrics reporter for wavefront.

Installing

Add the maven dependency to your project:

<dependency>
  <groupId>org.whispersystems</groupId>
  <artifactId>dropwizard-wavefront</artifactId>
  <version>{latest_version_here}</version>
</dependency>

Then you just need to tell Dropwizard where to find the reporter. From your module base dir:

$ mkdir -p /resources/META-INF/services/
$ echo "org.whispersystems.wavefront.WavefrontMetricsReporterFactory" > /resources/META-INF/services/io.dropwizard.metrics.ReporterFactory

Configuring

Add the following to your configuration yaml file:

metrics:
  reporters:
    - type: wavefront
      token: {your api token}
      hostname: "metrics.wavefront.com"
      frequency: 60 seconds

Done! Your metrics should now report to wavefront every 60 seconds.

Additional Gauges

There are system gauges for network, cpu, file descriptors, and memory available as well.

To use them:

environment.metrics().register(name(CpuUsageGauge.class, "cpu"), new CpuUsageGauge());
environment.metrics().register(name(FreeMemoryGauge.class, "free_memory"), new FreeMemoryGauge());
environment.metrics().register(name(NetworkSentGauge.class, "bytes_sent"), new NetworkSentGauge());
environment.metrics().register(name(NetworkReceivedGauge.class, "bytes_received"), new NetworkReceivedGauge());
environment.metrics().register(name(FileDescriptorGauge.class, "fd_count"), new FileDescriptorGauge());

About

Dropwizard Metrics Reporter For Wavefront

License:Apache License 2.0


Languages

Language:Java 100.0%