<p>The goal is to monitor the flowable project deployed on Kubernetes using Prometheus/Grafana</p>
<p>Install kube-prometheus-stack using helm charts:</p>
<pre><code>helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update
helm install prometheus prometheus-community/kube-prometheus-stack
</code></pre>
<p>Its successfully deployed and we are able to start monitoring the other resources inside our Kubernetes cluster using Prometheus/Grafana</p>
<p>Next, Flowable is running as a pod, which I want to get the flowable pod metrics onto Prometheus and come up the dasboard.</p>
<p>Any suggestions on how to achieve the monitoring for a flowable application running as a pod inside kubernetes</p>

<p>Flowable (as a Spring Boot application) uses Micrometer that will provide metrics in prometheus format as soon as you add the <code>micrometer-registry-prometheus</code> dependency. Endpoint is then <code>actuator/prometheus</code>.</p>
<p>Creating your own prometheus metric is actually not that difficult. You can create a bean implementing <code>FlowableEventListener</code> and <code>MetricBinder</code>and then listen to the FlowableEngineEventType <code>PROCESS_COMPLETED</code> to increase a micrometer <code>Counter</code> every time a process gets completed.</p>
<p>Register your counter to the <code>MeterRegistry</code> in the bindTo() method and the metric should be available over the prometheus endpoint. No need for a dedicated exporter pod.</p>
