1

The goal is to monitor the flowable project deployed on Kubernetes using Prometheus/Grafana

Install kube-prometheus-stack using helm charts:

helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update
helm install prometheus prometheus-community/kube-prometheus-stack

Its successfully deployed and we are able to start monitoring the other resources inside our Kubernetes cluster using Prometheus/Grafana

Next, Flowable is running as a pod, which I want to get the flowable pod metrics onto Prometheus and come up the dasboard.

Any suggestions on how to achieve the monitoring for a flowable application running as a pod inside kubernetes

Vikram
  • 635
  • 1
  • 9
  • 29
  • 1
    Does the flowable application or pod expose some metrics api in prometheus format itself? If Yes, configure Prometheus to scrape it, if not, you may need to write your own exporter that expose the metrics. – YwH Apr 13 '22 at 05:34
  • The 2nd and 3rd post in this forum question may be useful to you. https://forum.flowable.org/t/flowable-process-monitoring/2459 – YwH Apr 13 '22 at 05:37
  • Hi Vikram, what metrics do you want to collect? For logs aggregation you can use [Loki](https://github.com/grafana/loki). – mozello Apr 13 '22 at 14:07
  • Hi everyone i am looking for an exporter for flowable similar to this : https://github.com/livetocode/camunda-prometheus-exporter. Please do suggest how to achieve the same. – Vikram Apr 14 '22 at 16:49

2 Answers2

1

Flowable (as a Spring Boot application) uses Micrometer that will provide metrics in prometheus format as soon as you add the micrometer-registry-prometheus dependency. Endpoint is then actuator/prometheus.

Creating your own prometheus metric is actually not that difficult. You can create a bean implementing FlowableEventListener and MetricBinderand then listen to the FlowableEngineEventType PROCESS_COMPLETED to increase a micrometer Counter every time a process gets completed.

Register your counter to the MeterRegistry in the bindTo() method and the metric should be available over the prometheus endpoint. No need for a dedicated exporter pod.

0

You can check out the Flowable documentation on Monitoring. There are a lot of useful metrics listed that you can add to your monitoring.

To enable Prometheus exporting on Flowable, you need to set the following Spring property:

management.metrics.export.prometheus.enabled=true
Fabian Kleiser
  • 2,988
  • 3
  • 27
  • 44