Akka Dropwizard Parent Pom

Dropwizard Metrics for Akka Actors

License

License

Categories

Categories

DropWizard Container Microservices Akka Reactive libraries
GroupId

GroupId

com.github.kevinconaway
ArtifactId

ArtifactId

akka-dropwizard-parent
Last Version

Last Version

1.2
Release Date

Release Date

Type

Type

pom
Description

Description

Akka Dropwizard Parent Pom
Dropwizard Metrics for Akka Actors
Project URL

Project URL

https://github.com/kevinconaway/akka-dropwizard
Source Code Management

Source Code Management

https://github.com/kevinconaway/akka-dropwizard

Download akka-dropwizard-parent

How to add to project

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

Dependencies

test (2)

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

Project Modules

  • akka-dropwizard-metrics
  • akka-dropwizard-agent
  • akka-dropwizard-agent-it

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