Setup JavaMelody for Quarkus

 

How to setup JavaMelody for Quarkus


Background

JavaMelody is a good profiling tool for Java backend related services exposing web content like REST and/or Servlets. Follow open-source project https://github.com/javamelody/javamelody

Quarkus is a Kubernetes Native Java stack crafted from Java libraries and standards. More info at https://quarkus.io/


  1. In Maven pom.xml file add Undertow and JavaMelody dependencies:

    …

    <dependency>

<groupId>io.quarkus</groupId>

<artifactId>quarkus-undertow</artifactId>

    </dependency>

    <dependency>

<groupId>net.bull.javamelody</groupId>

<artifactId>javamelody-core</artifactId>

<version>1.90.0</version>

    </dependency>

    …


  1. You need to exclude JavaMelody for ARC by defining property, for example in application.properties:

quarkus.arc.exclude-types=net.bull.javamelody.*


  1. Now JavaMelody should be set up and URL “/monitoring” should be available.


  1. Since dataSource bean isn’t available you need to enable profiling of the database in another way for Quarkus. Could be done by setting up / changing some properties for example in application.properties:

quarkus.datasource.db-kind=other

quarkus.datasource.jdbc.driver=net.bull.javamelody.JdbcDriver

quarkus.datasource.jdbc.url=jdbc:h2:mem:default;DB_CLOSE_DELAY=-1?driver=org.h2.Driver


 


  1. Now also the database and possible SQL executions should be seen in JavaMelody.


Enjoy profiling using JavaMelody also in Quarkus! Happy coding!


Fredrik

22-02-16


Comments