From fa5d547b8782fe22ea13752b1d42230e790fbc55 Mon Sep 17 00:00:00 2001 From: Moxie Marlinspike Date: Mon, 31 Aug 2015 17:17:53 -0700 Subject: [PATCH] Add README --- README.md | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..a2d1a84 --- /dev/null +++ b/README.md @@ -0,0 +1,51 @@ +# dropwizard-wavefront + +A Dropwizard Metrics reporter for [wavefront](https://www.wavefront.com). + +## Installing + +Add the maven dependency to your project: + +````` + + org.whispersystems + dropwizard-wavefront + {latest_version_here} + +````` + +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()); +````` \ No newline at end of file