Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/chonton/dogstatd-client

A java client to push UDP messages to a local dogstatd.
https://github.com/chonton/dogstatd-client

java metrics up-for-adoption

Last synced: 3 days ago
JSON representation

A java client to push UDP messages to a local dogstatd.

Awesome Lists containing this project

README

        

# UP FOR ADOPTION

# dogstatd-client
A java client to push UDP messages to a local [dogstatd](http://docs.datadoghq.com/guides/dogstatsd/).

[Javadoc](https://chonton.github.io/dogstatd-client/0.0.3/apidocs/) and
[build reports](https://chonton.github.io/dogstatd-client/0.0.3/project-reports) are available.

### Requirements
* Minimal latency in the mainline processing
* Some, but not extreme buffering of outgoing messages
* Non-blocking write of UDP message
* Thread-safe sender
* Lack of dogstatd collector will be noted, but not cause failure of mainline processing

### Assumptions
* A local (on the same host) dogstatd collector
* Firing a UDP message per application event will be cheaper than in-process aggregation of events

## Use with Maven
To include dogstatd-client in your maven build, use the following fragment in your pom.
```xml

org.honton.chas
dogstatd-client
0.0.3

```

## Typical Java Use

### In setup code
```java
// you only need a single instance, Sender is thread safe and send method does not block caller
static public final Sender METRICS = new Sender();
```

### Sending some example metrics
```java
METRICS.send(new Histogram("histogram.name", latency);

METRICS.send(new Gauge("round", i, tag));

METRICS.send(new Counter("pi", 3.14));

METRICS.send(new Event("title", "message", "tag1", "tag2"));
```

## 0.2 to 0.3
- Added public constructors for Event
- Added public constructors for ServiceCheck
- Metric changed to abstract
- Tags changed to package protected
- Validator changed to package protected