Akka

Introduction

Akka is an extremely fast, concurrent tool framework written in Scala. Akka actor model provides a better model to build scalable, responsive and resilient applications. Akka is Open Source and available under the Apache 2 License. Download from http://akka.io/downloads.

Please review our support article on how to configure service monitors for instructions on how to initially access the Opsclarity configuration screen and to see which settings there are common to every service.  In this article, we'll go over all necessary specific details for managing the OpsClarity - Akka service integration:

 

Requirements

  • Make sure build is configured to use Cinnamon Agent:
 libraryDependencies ++= Seq( Cinnamon.library.cinnamonAkka, 
              Cinnamon.library.cinnamonCHMetrics ) 
  • Add cinnamon configuration in application.conf:
akka {
...
}
# add a Cinnamon configuration cinnamon { chmetrics.reporters += jmx-reporter akka.actors { "all" { includes = "/user/*" report-by = [class, group] } } }
  • Enable JMX when starting the service via following options:
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.port=JMX_PORT


 

Configure Akka Data Sources

There is one default Akka data source under the Configure Data Sources tab:

 

These are the field names (along with their default values) and a detailed description of what should go in each field:

Field Name Default Value Description
JMX URL service:jmx:rmi:///jndi/rmi:/_HOST:PORT_:PORT/jmxrmi

Please change PORT number to the JMX port
Ex: service:jmx:rmi:///jndi/rmi:/localhost:9191/jmxrmi

JAVAHOME No-default

Provide JAVA home:
Ex./usr/lib/jvm/java-8-oracle/jre

Service Name No-default

Provide a vaild service name
Ex: AkkaFrontEnd

User Name No-default If authentication is enabled, provide user name
Password No-default If authentication is enabled, provide password
Classpath No-default Input your Java classpath

 


Akka Metrics

These are the metrics we collect for Akka:

Metric Name Units Metric Description
actor-failure  Events  Count of actor failures
 dead-letter Messages Messages that could not be delivered to other actors go to dead-letters
 log-error Events  Count of actor errors
 log-warning Events  Count of actor warnings
 mailbox-size Messages Number of messages in actor mailbox
 mailbox-size-limit Events  Error when actor mailbox limit is reached
 mailbox-time Nanoseconds Time spent in actor mailbox
 mailbox-time-limit Events Error when message spends limit of time in actor mailbox
 processed-messages Messages  Number of messages processed by actor
 processing-time-limit  Events  Error when actor spends too long processing message
 processing-time.max  Nanoseconds  Maximum time spent processing a message in actor
 processing-time.mean  Nanoseconds  Average time spent processings a message in actor
 processing-time.min  Nanoseconds  Minimum time spent processing a message in actor
 processing-time.stddev Nanoseconds  Standard deviation of time spent processing a message in actor
 running-actors Count Number of actors running
 sent-messages  Messages Number of messages sent by an actor
 stash-size  Messages  Number of messages deferred to the stash queue by an actor
 stash-size-limit  Events Error when too many messages are deferred to the stash queue by an actor
 unhandled-message  Messages  Number of unhandled messages by an actor

 

 

If you have any questions or comments about this article, feel free to contact us at support@opsclarity.com.

Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.