<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Wreulicke</title>
    <description>The latest articles on DEV Community by Wreulicke (@wreulicke).</description>
    <link>https://dev.to/wreulicke</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F41561%2Ff3d8e555-87ec-408c-9b0a-5c6588a4ae3a.jpg</url>
      <title>DEV Community: Wreulicke</title>
      <link>https://dev.to/wreulicke</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/wreulicke"/>
    <language>en</language>
    <item>
      <title>Export application metrics with Micrometer for Prometheus on your Micronaut application.</title>
      <dc:creator>Wreulicke</dc:creator>
      <pubDate>Sat, 25 Aug 2018 19:11:10 +0000</pubDate>
      <link>https://dev.to/wreulicke/export-application-metrics-with-micrometer-for-prometheus-on-your-micronaut-application-3d27</link>
      <guid>https://dev.to/wreulicke/export-application-metrics-with-micrometer-for-prometheus-on-your-micronaut-application-3d27</guid>
      <description>&lt;p&gt;Here, I wrote the controller that export application metrics for Prometheus on &lt;a href="https://docs.micronaut.io/latest/guide/index.html"&gt;Micronaut&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Initialize application
&lt;/h2&gt;

&lt;p&gt;Create your application.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;mkdir &lt;/span&gt;micronaut-sandbox
&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;cd &lt;/span&gt;micronaut-sandbox
&lt;span class="nv"&gt;$ &lt;/span&gt;sdk &lt;span class="nb"&gt;install &lt;/span&gt;micronaut &lt;span class="c"&gt;#1.0.0.M4 &lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;mn 
| Starting interactive mode...
| Enter a &lt;span class="nb"&gt;command &lt;/span&gt;name to run. Use TAB &lt;span class="k"&gt;for &lt;/span&gt;completion:
mn&amp;gt; create-app &lt;span class="nt"&gt;-i&lt;/span&gt; &lt;span class="nt"&gt;-f&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;micrometer-prometheus
| Generating Java project.....
| Application created at /Users/user/micronaut-sandbox
| Initializing application. Please wait...
mn&amp;gt; create-controller Prometheus
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Create metrics endpoint for Prometheus.
&lt;/h2&gt;

&lt;p&gt;add and modify code like below.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight diff"&gt;&lt;code&gt;&lt;span class="p"&gt;package micronaut.sandbox;
&lt;/span&gt;
+ import io.micrometer.prometheus.PrometheusMeterRegistry;
&lt;span class="p"&gt;import io.micronaut.http.annotation.Controller;
import io.micronaut.http.annotation.Get;
&lt;/span&gt;&lt;span class="gd"&gt;- import io.micronaut.http.HttpStatus;
&lt;/span&gt;
@Controller("/prometheus")
&lt;span class="p"&gt;public class PrometheusController {
&lt;/span&gt;
+    private final PrometheusMeterRegistry registry;

+    PrometheusController(PrometheusMeterRegistry registry) {
&lt;span class="gi"&gt;+        this.registry = registry;
+    }
&lt;/span&gt;
    @Get("/")
&lt;span class="gd"&gt;-  public HttpStatus index() {
-       return HttpStatus.OK;
&lt;/span&gt;    public String index() {
        return registry.scrape();
    }
&lt;span class="err"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Start application.
&lt;/h2&gt;

&lt;p&gt;Start application.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt; ./gradlew run
Starting a Gradle Daemon, 1 incompatible Daemon could not be reused, use &lt;span class="nt"&gt;--status&lt;/span&gt; &lt;span class="k"&gt;for &lt;/span&gt;details

&lt;span class="c"&gt;# omit&lt;/span&gt;

&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; Task :run
04:05:32.293 &lt;span class="o"&gt;[&lt;/span&gt;main] INFO  io.micronaut.runtime.Micronaut - Startup completed &lt;span class="k"&gt;in &lt;/span&gt;1345ms. Server Running: http://localhost:41970
&amp;lt;&lt;span class="o"&gt;=========&lt;/span&gt;&lt;span class="nt"&gt;----&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; 75% EXECUTING &lt;span class="o"&gt;[&lt;/span&gt;29s]
&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; :run
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In other terminal, Get metrics.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;curl http://localhost:41970/prometheus
# HELP jvm_memory_used_bytes The amount of used memory
# TYPE jvm_memory_used_bytes gauge
jvm_memory_used_bytes{area="nonheap",id="Code Cache",} 4034432.0
jvm_memory_used_bytes{area="nonheap",id="Metaspace",} 2.522096E7
jvm_memory_used_bytes{area="nonheap",id="Compressed Class Space",} 4530360.0
jvm_memory_used_bytes{area="heap",id="PS Eden Space",} 4.9322656E7
jvm_memory_used_bytes{area="heap",id="PS Survivor Space",} 0.0
jvm_memory_used_bytes{area="heap",id="PS Old Gen",} 7430040.0
# HELP jvm_classes_loaded The number of classes that are currently loaded in the Java virtual machine
# TYPE jvm_classes_loaded gauge
jvm_classes_loaded 5096.0
# HELP jvm_gc_memory_allocated_bytes_total Incremented for an increase in the size of the young generation memory pool after one GC to before the next
# TYPE jvm_gc_memory_allocated_bytes_total counter
jvm_gc_memory_allocated_bytes_total 3.5817752E7
# HELP executor_active_threads The approximate number of threads that are actively executing tasks
# TYPE executor_active_threads gauge
executor_active_threads{name="scheduled",} 0.0
executor_active_threads{name="io",} 1.0
# HELP process_start_time_seconds Start time of the process since unix epoch.
# TYPE process_start_time_seconds gauge
process_start_time_seconds 1.535223930394E9
# HELP jvm_memory_committed_bytes The amount of memory in bytes that is committed for the Java virtual machine to use
# TYPE jvm_memory_committed_bytes gauge
jvm_memory_committed_bytes{area="nonheap",id="Code Cache",} 4063232.0
jvm_memory_committed_bytes{area="nonheap",id="Metaspace",} 2.686976E7
jvm_memory_committed_bytes{area="nonheap",id="Compressed Class Space",} 4849664.0
jvm_memory_committed_bytes{area="heap",id="PS Eden Space",} 1.34217728E8
jvm_memory_committed_bytes{area="heap",id="PS Survivor Space",} 1.1010048E7
jvm_memory_committed_bytes{area="heap",id="PS Old Gen",} 1.13246208E8
# HELP jvm_threads_peak The peak live thread count since the Java virtual machine started or peak was reset
# TYPE jvm_threads_peak gauge
jvm_threads_peak 22.0
# HELP process_uptime_seconds The uptime of the Java virtual machine
# TYPE process_uptime_seconds gauge
process_uptime_seconds 120.749
# HELP executor_pool_size_threads The current number of threads in the pool
# TYPE executor_pool_size_threads gauge
executor_pool_size_threads{name="scheduled",} 8.0
executor_pool_size_threads{name="io",} 1.0
# HELP jvm_buffer_total_capacity_bytes An estimate of the total capacity of the buffers in this pool
# TYPE jvm_buffer_total_capacity_bytes gauge
jvm_buffer_total_capacity_bytes{id="direct",} 1.0
jvm_buffer_total_capacity_bytes{id="mapped",} 0.0
# HELP jvm_gc_live_data_size_bytes Size of old generation memory pool after a full GC
# TYPE jvm_gc_live_data_size_bytes gauge
jvm_gc_live_data_size_bytes 7430040.0
# HELP process_files_open The open file descriptor count
# TYPE process_files_open gauge
process_files_open 109.0
# HELP jvm_classes_unloaded_total The total number of classes unloaded since the Java virtual machine has started execution
# TYPE jvm_classes_unloaded_total counter
jvm_classes_unloaded_total 7.0
# HELP jvm_gc_memory_promoted_bytes_total Count of positive increases in the size of the old generation memory pool before GC to after GC
# TYPE jvm_gc_memory_promoted_bytes_total counter
jvm_gc_memory_promoted_bytes_total 7413656.0
# HELP jvm_buffer_count An estimate of the number of buffers in the pool
# TYPE jvm_buffer_count gauge
jvm_buffer_count{id="direct",} 2.0
jvm_buffer_count{id="mapped",} 0.0
# HELP jvm_buffer_memory_used_bytes An estimate of the memory that the Java virtual machine is using for this buffer pool
# TYPE jvm_buffer_memory_used_bytes gauge
jvm_buffer_memory_used_bytes{id="direct",} 2.0
jvm_buffer_memory_used_bytes{id="mapped",} 0.0
# HELP executor_completed_tasks_total The approximate total number of tasks that have completed execution
# TYPE executor_completed_tasks_total counter
executor_completed_tasks_total{name="scheduled",} 9.0
executor_completed_tasks_total{name="io",} 1.0
# HELP logback_events_total Number of error level events that made it to the logs
# TYPE logback_events_total counter
logback_events_total{level="error",} 0.0
logback_events_total{level="warn",} 0.0
logback_events_total{level="info",} 1.0
logback_events_total{level="debug",} 0.0
logback_events_total{level="trace",} 0.0
# HELP executor_seconds
# TYPE executor_seconds summary
executor_seconds_count{name="scheduled",} 9.0
executor_seconds_sum{name="scheduled",} 0.028088378
executor_seconds_count{name="io",} 1.0
executor_seconds_sum{name="io",} 2.06122E-4
# HELP executor_seconds_max
# TYPE executor_seconds_max gauge
executor_seconds_max{name="scheduled",} 0.026386634
executor_seconds_max{name="io",} 2.06122E-4
# HELP executor_queued_threads The approximate number of threads that are queued for execution
# TYPE executor_queued_threads gauge
executor_queued_threads{name="scheduled",} 2.0
executor_queued_threads{name="io",} 0.0
# HELP jvm_gc_max_data_size_bytes Max size of old generation memory pool
# TYPE jvm_gc_max_data_size_bytes gauge
jvm_gc_max_data_size_bytes 2.863661056E9
# HELP process_cpu_usage The "recent cpu usage" for the Java Virtual Machine process
# TYPE process_cpu_usage gauge
process_cpu_usage 0.0
# HELP system_cpu_count The number of processors available to the Java virtual machine
# TYPE system_cpu_count gauge
system_cpu_count 4.0
# HELP jvm_threads_live The current number of live threads including both daemon and non-daemon threads
# TYPE jvm_threads_live gauge
jvm_threads_live 22.0
# HELP jvm_memory_max_bytes The maximum amount of memory in bytes that can be used for memory management
# TYPE jvm_memory_max_bytes gauge
jvm_memory_max_bytes{area="nonheap",id="Code Cache",} 2.5165824E8
jvm_memory_max_bytes{area="nonheap",id="Metaspace",} -1.0
jvm_memory_max_bytes{area="nonheap",id="Compressed Class Space",} 1.073741824E9
jvm_memory_max_bytes{area="heap",id="PS Eden Space",} 1.409286144E9
jvm_memory_max_bytes{area="heap",id="PS Survivor Space",} 1.1010048E7
jvm_memory_max_bytes{area="heap",id="PS Old Gen",} 2.863661056E9
# HELP system_load_average_1m The sum of the number of runnable entities queued to available processors and the number of runnable entities running on the available processors averaged over a period of time
# TYPE system_load_average_1m gauge
system_load_average_1m 4.50048828125
# HELP jvm_threads_daemon The current number of live daemon threads
# TYPE jvm_threads_daemon gauge
jvm_threads_daemon 10.0
# HELP system_cpu_usage The "recent cpu usage" for the whole system
# TYPE system_cpu_usage gauge
system_cpu_usage 0.0
# HELP jvm_gc_pause_seconds Time spent in GC pause
# TYPE jvm_gc_pause_seconds summary
jvm_gc_pause_seconds_count{action="end of minor GC",cause="Metadata GC Threshold",} 1.0
jvm_gc_pause_seconds_sum{action="end of minor GC",cause="Metadata GC Threshold",} 0.015
jvm_gc_pause_seconds_count{action="end of major GC",cause="Metadata GC Threshold",} 1.0
jvm_gc_pause_seconds_sum{action="end of major GC",cause="Metadata GC Threshold",} 0.05
# HELP jvm_gc_pause_seconds_max Time spent in GC pause
# TYPE jvm_gc_pause_seconds_max gauge
jvm_gc_pause_seconds_max{action="end of minor GC",cause="Metadata GC Threshold",} 0.015
jvm_gc_pause_seconds_max{action="end of major GC",cause="Metadata GC Threshold",} 0.05
# HELP process_files_max The maximum file descriptor count
# TYPE process_files_max gauge
process_files_max 10240.0
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;You can export application metrics for prometheus easily.&lt;/p&gt;

&lt;p&gt;Try it and enjoy!&lt;/p&gt;

&lt;p&gt;Happy Hacking.&lt;/p&gt;

</description>
      <category>java</category>
      <category>micronaut</category>
    </item>
    <item>
      <title>Export application metrics with Micrometer for Prometheus on your Micronaut application.</title>
      <dc:creator>Wreulicke</dc:creator>
      <pubDate>Sat, 25 Aug 2018 19:11:10 +0000</pubDate>
      <link>https://dev.to/wreulicke/export-application-metrics-with-micrometer-for-prometheus-on-your-micronaut-application-gff</link>
      <guid>https://dev.to/wreulicke/export-application-metrics-with-micrometer-for-prometheus-on-your-micronaut-application-gff</guid>
      <description>

&lt;p&gt;Here, I wrote the controller that export application metrics for Prometheus on &lt;a href="https://docs.micronaut.io/latest/guide/index.html"&gt;Micronaut&lt;/a&gt;.&lt;/p&gt;



&lt;div class="highlight"&gt;&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;mkdir &lt;/span&gt;micronaut-sandbox
&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;cd &lt;/span&gt;micronaut-sandbox
&lt;span class="nv"&gt;$ &lt;/span&gt;sdk &lt;span class="nb"&gt;install &lt;/span&gt;micronaut &lt;span class="c"&gt;#1.0.0.M4 &lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;mn 
| Starting interactive mode...
| Enter a &lt;span class="nb"&gt;command &lt;/span&gt;name to run. Use TAB &lt;span class="k"&gt;for &lt;/span&gt;completion:
mn&amp;gt; create-app &lt;span class="nt"&gt;-i&lt;/span&gt; &lt;span class="nt"&gt;-f&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;micrometer-prometheus
| Generating Java project.....
| Application created at /Users/user/micronaut-sandbox
| Initializing application. Please wait...
mn&amp;gt; create-controller Prometheus
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;h2&gt;Create metrics endpoint for Prometheus.&lt;/h2&gt;

&lt;p&gt;add and modify code like below.&lt;/p&gt;



&lt;div class="highlight"&gt;&lt;pre class="highlight diff"&gt;&lt;code&gt;package micronaut.sandbox;

&lt;span class="gi"&gt;+ import io.micrometer.prometheus.PrometheusMeterRegistry;
&lt;/span&gt;import io.micronaut.http.annotation.Controller;
import io.micronaut.http.annotation.Get;
&lt;span class="gd"&gt;- import io.micronaut.http.HttpStatus;
&lt;/span&gt;
&lt;span class="gu"&gt;@Controller("/prometheus")
&lt;/span&gt;public class PrometheusController {

&lt;span class="gi"&gt;+    private final PrometheusMeterRegistry registry;
&lt;/span&gt;
&lt;span class="gi"&gt;+    PrometheusController(PrometheusMeterRegistry registry) {
+        this.registry = registry;
+    }
&lt;/span&gt;
    @Get("/")
&lt;span class="gd"&gt;-  public HttpStatus index() {
-       return HttpStatus.OK;
&lt;/span&gt;    public String index() {
        return registry.scrape();
    }
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;h2&gt;Start application.&lt;/h2&gt;

&lt;p&gt;Start application.&lt;/p&gt;



&lt;div class="highlight"&gt;&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt; ./gradlew run
Starting a Gradle Daemon, 1 incompatible Daemon could not be reused, use &lt;span class="nt"&gt;--status&lt;/span&gt; &lt;span class="k"&gt;for &lt;/span&gt;details

&lt;span class="c"&gt;# omit&lt;/span&gt;

&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; Task :run
04:05:32.293 &lt;span class="o"&gt;[&lt;/span&gt;main] INFO  io.micronaut.runtime.Micronaut - Startup completed &lt;span class="k"&gt;in &lt;/span&gt;1345ms. Server Running: http://localhost:41970
&amp;lt;&lt;span class="o"&gt;=========&lt;/span&gt;&lt;span class="nt"&gt;----&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; 75% EXECUTING &lt;span class="o"&gt;[&lt;/span&gt;29s]
&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; :run
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;In other terminal, Get metrics.&lt;/p&gt;



&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;curl http://localhost:41970/prometheus
# HELP jvm_memory_used_bytes The amount of used memory
# TYPE jvm_memory_used_bytes gauge
jvm_memory_used_bytes{area="nonheap",id="Code Cache",} 4034432.0
jvm_memory_used_bytes{area="nonheap",id="Metaspace",} 2.522096E7
jvm_memory_used_bytes{area="nonheap",id="Compressed Class Space",} 4530360.0
jvm_memory_used_bytes{area="heap",id="PS Eden Space",} 4.9322656E7
jvm_memory_used_bytes{area="heap",id="PS Survivor Space",} 0.0
jvm_memory_used_bytes{area="heap",id="PS Old Gen",} 7430040.0
# HELP jvm_classes_loaded The number of classes that are currently loaded in the Java virtual machine
# TYPE jvm_classes_loaded gauge
jvm_classes_loaded 5096.0
# HELP jvm_gc_memory_allocated_bytes_total Incremented for an increase in the size of the young generation memory pool after one GC to before the next
# TYPE jvm_gc_memory_allocated_bytes_total counter
jvm_gc_memory_allocated_bytes_total 3.5817752E7
# HELP executor_active_threads The approximate number of threads that are actively executing tasks
# TYPE executor_active_threads gauge
executor_active_threads{name="scheduled",} 0.0
executor_active_threads{name="io",} 1.0
# HELP process_start_time_seconds Start time of the process since unix epoch.
# TYPE process_start_time_seconds gauge
process_start_time_seconds 1.535223930394E9
# HELP jvm_memory_committed_bytes The amount of memory in bytes that is committed for the Java virtual machine to use
# TYPE jvm_memory_committed_bytes gauge
jvm_memory_committed_bytes{area="nonheap",id="Code Cache",} 4063232.0
jvm_memory_committed_bytes{area="nonheap",id="Metaspace",} 2.686976E7
jvm_memory_committed_bytes{area="nonheap",id="Compressed Class Space",} 4849664.0
jvm_memory_committed_bytes{area="heap",id="PS Eden Space",} 1.34217728E8
jvm_memory_committed_bytes{area="heap",id="PS Survivor Space",} 1.1010048E7
jvm_memory_committed_bytes{area="heap",id="PS Old Gen",} 1.13246208E8
# HELP jvm_threads_peak The peak live thread count since the Java virtual machine started or peak was reset
# TYPE jvm_threads_peak gauge
jvm_threads_peak 22.0
# HELP process_uptime_seconds The uptime of the Java virtual machine
# TYPE process_uptime_seconds gauge
process_uptime_seconds 120.749
# HELP executor_pool_size_threads The current number of threads in the pool
# TYPE executor_pool_size_threads gauge
executor_pool_size_threads{name="scheduled",} 8.0
executor_pool_size_threads{name="io",} 1.0
# HELP jvm_buffer_total_capacity_bytes An estimate of the total capacity of the buffers in this pool
# TYPE jvm_buffer_total_capacity_bytes gauge
jvm_buffer_total_capacity_bytes{id="direct",} 1.0
jvm_buffer_total_capacity_bytes{id="mapped",} 0.0
# HELP jvm_gc_live_data_size_bytes Size of old generation memory pool after a full GC
# TYPE jvm_gc_live_data_size_bytes gauge
jvm_gc_live_data_size_bytes 7430040.0
# HELP process_files_open The open file descriptor count
# TYPE process_files_open gauge
process_files_open 109.0
# HELP jvm_classes_unloaded_total The total number of classes unloaded since the Java virtual machine has started execution
# TYPE jvm_classes_unloaded_total counter
jvm_classes_unloaded_total 7.0
# HELP jvm_gc_memory_promoted_bytes_total Count of positive increases in the size of the old generation memory pool before GC to after GC
# TYPE jvm_gc_memory_promoted_bytes_total counter
jvm_gc_memory_promoted_bytes_total 7413656.0
# HELP jvm_buffer_count An estimate of the number of buffers in the pool
# TYPE jvm_buffer_count gauge
jvm_buffer_count{id="direct",} 2.0
jvm_buffer_count{id="mapped",} 0.0
# HELP jvm_buffer_memory_used_bytes An estimate of the memory that the Java virtual machine is using for this buffer pool
# TYPE jvm_buffer_memory_used_bytes gauge
jvm_buffer_memory_used_bytes{id="direct",} 2.0
jvm_buffer_memory_used_bytes{id="mapped",} 0.0
# HELP executor_completed_tasks_total The approximate total number of tasks that have completed execution
# TYPE executor_completed_tasks_total counter
executor_completed_tasks_total{name="scheduled",} 9.0
executor_completed_tasks_total{name="io",} 1.0
# HELP logback_events_total Number of error level events that made it to the logs
# TYPE logback_events_total counter
logback_events_total{level="error",} 0.0
logback_events_total{level="warn",} 0.0
logback_events_total{level="info",} 1.0
logback_events_total{level="debug",} 0.0
logback_events_total{level="trace",} 0.0
# HELP executor_seconds
# TYPE executor_seconds summary
executor_seconds_count{name="scheduled",} 9.0
executor_seconds_sum{name="scheduled",} 0.028088378
executor_seconds_count{name="io",} 1.0
executor_seconds_sum{name="io",} 2.06122E-4
# HELP executor_seconds_max
# TYPE executor_seconds_max gauge
executor_seconds_max{name="scheduled",} 0.026386634
executor_seconds_max{name="io",} 2.06122E-4
# HELP executor_queued_threads The approximate number of threads that are queued for execution
# TYPE executor_queued_threads gauge
executor_queued_threads{name="scheduled",} 2.0
executor_queued_threads{name="io",} 0.0
# HELP jvm_gc_max_data_size_bytes Max size of old generation memory pool
# TYPE jvm_gc_max_data_size_bytes gauge
jvm_gc_max_data_size_bytes 2.863661056E9
# HELP process_cpu_usage The "recent cpu usage" for the Java Virtual Machine process
# TYPE process_cpu_usage gauge
process_cpu_usage 0.0
# HELP system_cpu_count The number of processors available to the Java virtual machine
# TYPE system_cpu_count gauge
system_cpu_count 4.0
# HELP jvm_threads_live The current number of live threads including both daemon and non-daemon threads
# TYPE jvm_threads_live gauge
jvm_threads_live 22.0
# HELP jvm_memory_max_bytes The maximum amount of memory in bytes that can be used for memory management
# TYPE jvm_memory_max_bytes gauge
jvm_memory_max_bytes{area="nonheap",id="Code Cache",} 2.5165824E8
jvm_memory_max_bytes{area="nonheap",id="Metaspace",} -1.0
jvm_memory_max_bytes{area="nonheap",id="Compressed Class Space",} 1.073741824E9
jvm_memory_max_bytes{area="heap",id="PS Eden Space",} 1.409286144E9
jvm_memory_max_bytes{area="heap",id="PS Survivor Space",} 1.1010048E7
jvm_memory_max_bytes{area="heap",id="PS Old Gen",} 2.863661056E9
# HELP system_load_average_1m The sum of the number of runnable entities queued to available processors and the number of runnable entities running on the available processors averaged over a period of time
# TYPE system_load_average_1m gauge
system_load_average_1m 4.50048828125
# HELP jvm_threads_daemon The current number of live daemon threads
# TYPE jvm_threads_daemon gauge
jvm_threads_daemon 10.0
# HELP system_cpu_usage The "recent cpu usage" for the whole system
# TYPE system_cpu_usage gauge
system_cpu_usage 0.0
# HELP jvm_gc_pause_seconds Time spent in GC pause
# TYPE jvm_gc_pause_seconds summary
jvm_gc_pause_seconds_count{action="end of minor GC",cause="Metadata GC Threshold",} 1.0
jvm_gc_pause_seconds_sum{action="end of minor GC",cause="Metadata GC Threshold",} 0.015
jvm_gc_pause_seconds_count{action="end of major GC",cause="Metadata GC Threshold",} 1.0
jvm_gc_pause_seconds_sum{action="end of major GC",cause="Metadata GC Threshold",} 0.05
# HELP jvm_gc_pause_seconds_max Time spent in GC pause
# TYPE jvm_gc_pause_seconds_max gauge
jvm_gc_pause_seconds_max{action="end of minor GC",cause="Metadata GC Threshold",} 0.015
jvm_gc_pause_seconds_max{action="end of major GC",cause="Metadata GC Threshold",} 0.05
# HELP process_files_max The maximum file descriptor count
# TYPE process_files_max gauge
process_files_max 10240.0
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;h2&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;You can export application metrics for prometheus easily.&lt;/p&gt;

&lt;p&gt;Try it and enjoy!&lt;/p&gt;

&lt;p&gt;Happy Hacking.&lt;/p&gt;


</description>
      <category>javamicronaut</category>
    </item>
  </channel>
</rss>
