com.github.kevinconaway:akka-dropwizard-metrics

Dropwizard Metrics for Akka Actors

License

License

Categories

Categories

DropWizard Container Microservices Metrics Application Testing & Monitoring Monitoring Akka Reactive libraries
GroupId

GroupId

com.github.kevinconaway
ArtifactId

ArtifactId

akka-dropwizard-metrics
Last Version

Last Version

1.2
Release Date

Release Date

Type

Type

jar
Description

Description

Dropwizard Metrics for Akka Actors

Download akka-dropwizard-metrics

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.kevinconaway/akka-dropwizard-metrics/ -->
<dependency>
    <groupId>com.github.kevinconaway</groupId>
    <artifactId>akka-dropwizard-metrics</artifactId>
    <version>1.2</version>
</dependency>
// https://jarcasting.com/artifacts/com.github.kevinconaway/akka-dropwizard-metrics/
implementation 'com.github.kevinconaway:akka-dropwizard-metrics:1.2'
// https://jarcasting.com/artifacts/com.github.kevinconaway/akka-dropwizard-metrics/
implementation ("com.github.kevinconaway:akka-dropwizard-metrics:1.2")
'com.github.kevinconaway:akka-dropwizard-metrics:jar:1.2'
<dependency org="com.github.kevinconaway" name="akka-dropwizard-metrics" rev="1.2">
  <artifact name="akka-dropwizard-metrics" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.github.kevinconaway', module='akka-dropwizard-metrics', version='1.2')
)
libraryDependencies += "com.github.kevinconaway" % "akka-dropwizard-metrics" % "1.2"
[com.github.kevinconaway/akka-dropwizard-metrics "1.2"]

Dependencies

compile (2)

Group / Artifact Type Version
io.dropwizard.metrics : metrics-core jar 3.2.6
com.typesafe.akka : akka-actor_2.12 jar 2.5.11

test (2)

Group / Artifact Type Version
junit : junit jar 4.12
org.assertj : assertj-core jar 3.9.1

Project Modules

There are no modules declared in this project.

Dropwizard Metrics for Akka Actors

build status

This project instruments an Akka ActorSystem to provide Dropwizard metrics for Actors. Currently, the following metrics are captured:

  • A Gauge for the size of an Actors mailbox
  • A Timer measuring how long a message sits in an Actors mailbox

Usage

This project is composed of two modules:

  • akka-dropwizard-agent, a java agent which performs the ActorSystem instrumentation
  • akka-dropwizard-metrics which contains the code to configure the agent.

First, include the akka-dropwizard-metrics module in your project:

    <dependency>
        <groupId>com.github.kevinconaway</groupId>
        <artifactId>akka-dropwizard-metrics</artifactId>
        <version>1.2</version>
    </dependency>

There is a singleton configuration class, AkkaDropwizard that must be configured before the ActorSystem is created

MetricRegistry registry = ...
AkkaDropwizard.configure(registry);

By default, the metrics will be stored under a root prefix called actor-metrics. You can customize this by providing an instance of AkkaDropwizardSettings to AkkaDropwizard

AkkaDropwizardSettings settings = ...
MetricRegistry registry = ...
AkkaDropwizard.configure(registry, settings);

The instrumentation is performed by a java agent that you need to run with your application. Add the following argument to your VM startup properties:

-javaagent:/path/to/akka-dropwizard-agent-1.2.jar

Compatibility Matrix

Below are the versions Akka and Dropwizard that this library uses in each version

This Project Akka Version Dropwizard Version Spring Boot Version
1.0 2.5.x (Scala 2.12) 3.2.x N/A
1.1 2.5.x (Scala 2.12) 3.2.x 2.0.x
1.2 2.5.x (Scala 2.12) 3.2.x 2.0.x

Versions

Version
1.2
1.1
1.0