You are viewing documentation for an outdated version. Do you wish to see documentation for the latest version?
Datadog is a monitoring service for IT, Operations and Development teams who write and run applications at scale, and want to turn the massive amounts of data produced by their apps, tools and services into actionable insight.
libraryDependencies += "io.kamon" %% "kamon-datadog" % "1.0.0"
<dependency>
<groupId>io.kamon</groupId>
<artifactId>kamon-datadog_2.13</artifactId>
<version>1.0.0</version>
</dependency>
implementation 'io.kamon:kamon-datadog_2.13:1.0.0'
Once you have the dependency on your classpath, add the Agent or API reporter to Kamon:
Kamon.addReporter(new DatadogAgentReporter())
// OR
Kamon.addReporter(new DatadogAPIReporter())
By default, the Agent reporter assumes that you have an instance of the Datadog Agent running in localhost and listening on
port 8125. If that is not the case you can use the kamon.datadog.agent.hostname
and kamon.datadog.agent.port
configuration
keys to point the module at your Datadog Agent installation.
When using the API reporter you must configure your API key using the kamon.datadog.http.api-key
configuration setting.
Since Kamon has access to the entire distribution of values for a given period, the API reporter can directly post the
data that would otherwise be summarized and sent by the Datadog Agent. Gauges andAll histogram-backed metrics will be reported as
follows:
You can refer to the Datadog documentation for more details.
Kamon keeps all timing measurements in nanoseconds and memory measurements in bytes. In order to scale those to other
units before sending to datadog set the time-units
and memory-units
config keys to desired units. Supported units are:
n - nanoseconds
µs - microseconds
ms - milliseconds
s - seconds
b - bytes
kb - kilobytes
mb - megabytes
gb - gigabytes
For example,
kamon.datadog.time-units = "ms"
will scale all timing measurements to milliseconds right before sending to datadog.
kamon-datadog
module and flushed periodically using the
configured kamon.metric.tick-interval
and kamon.datadog.max-packet-size
settings.kamon.metric.tick-interval
and kamon.datadog.agent.max-packet-size
settings to
find the right balance between network bandwidth utilisation and granularity on your metrics data.Creating a dashboard in the Datadog user interface is really simple, all metric names will match the Kamon metric names with the additional “qualifier” suffix. Here is a very simple example of a dashboard created with metrics reported by Kamon: