StephenOTT / camunda-prometheus-process-engine-plugin

Monitor your KPIs!!! Camunda BPM Process Engine Plugin providing Prometheus Monitoring, Metric classes for various BPMN use, Grafana Annotations, and HTTPServer data export: Used to generate Prometheus metrics anywhere in the Engine, including BPMN, CMN, and DMN engines and instances.
MIT License
53 stars 23 forks source link

Provide .jar file in releases section #26

Closed sosoriov closed 5 years ago

sosoriov commented 5 years ago

hi @StephenOTT

Sorry to bother you with this, but i was wondering if it is possible that you include the .jar file for the latest release in the repo. I'm asking this because I work in an air-gap environment and can reach the maven repo for building new packages.

btw, the relase version 1.7.0, contains the .jar file 1.6.0

Thanks in advance

StephenOTT commented 5 years ago

@sosoriov sure! I will make the update later today or tomorrow morning.

I also removed the 1.6 asset from the 1.7 release

sosoriov commented 5 years ago

thanks @StephenOTT

StephenOTT commented 5 years ago

@sosoriov i have release 1.7.2, which includes a jackson CVE fix. https://github.com/StephenOTT/camunda-prometheus-process-engine-plugin/releases/tag/1.7.2

Thanks for reaching out. Always great to get more Repo ⭐️ to let me know people are use it.

Let me know if all works, and can close the issue once confirmed to be working. 👍

sosoriov commented 5 years ago

Hey @StephenOTT I'd like to thank you for your quick answer.

I'm trying to implement your solution but I'm getting the following error. Any idea what could it be?Additionally, as already have a Grafana instance running on a separate VM, I was wondering if it would be possible to deactivate the GrafanaServer setting... is it enough setting

grafanaAnnotationReporting=false

{"@timestamp":"2019-08-16T14:43:48.311+02:00","@version":"1","message":"Prometheus SimpleGaugeMetric has been created: metric_job_successful","logger_name":"io.digitalstate.camunda.prometheus.collectors.SimpleGaugeMetric","thread_name":"io.digitalstate.camunda.prometheus.collectors.camunda.JobExecutor timer","level":"INFO","level_value":20000,"HOSTNAME":"camunda-test-camunda-bpm-86b495ffc7-6g2nc"}
{"@timestamp":"2019-08-16T14:43:48.312+02:00","@version":"1","message":"Starting instance of Prometheus Camunda Custom Metrics","logger_name":"io.digitalstate.camunda.prometheus.collectors.custom.CamundaCustomMetrics","thread_name":"main","level":"INFO","level_value":20000,"HOSTNAME":"camunda-test-camunda-bpm-86b495ffc7-6g2nc"}
{"@timestamp":"2019-08-16T14:43:48.314+02:00","@version":"1","message":"ENGINE-14015 Shutting down the JobExecutor[org.camunda.bpm.engine.impl.jobexecutor.RuntimeContainerJobExecutor]","logger_name":"org.camunda.bpm.engine.jobexecutor","thread_name":"main","level":"INFO","level_value":20000,"HOSTNAME":"camunda-test-camunda-bpm-86b495ffc7-6g2nc"}
{"@timestamp":"2019-08-16T14:43:48.319+02:00","@version":"1","message":"The required Server component failed to start so Tomcat is unable to start.","logger_name":"org.apache.catalina.startup.Catalina","thread_name":"main","level":"ERROR","level_value":40000,"stack_trace":"org.apache.catalina.LifecycleException: Failed to start component [StandardServer[8005]]\n\tat org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440) ~[catalina.jar:9.0.19]\n\tat org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198) ~[catalina.jar:9.0.19]\n\tat org.apache.catalina.startup.Catalina.start(Catalina.java:633) ~[catalina.jar:9.0.19]\n\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_212]\n\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_212]\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_212]\n\tat java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_212]\n\tat org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:350) [bootstrap.jar:9.0.19]\n\tat org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:492) [bootstrap.jar:9.0.19]\nCaused by: org.camunda.bpm.engine.ProcessEngineException: ENGINE-08043 Exception while performing 'deploy BPM platform' => 'Start process engine default': null\n\tat org.camunda.bpm.container.impl.ContainerIntegrationLogger.exceptionWhilePerformingOperationStep(ContainerIntegrationLogger.java:316) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.spi.DeploymentOperation.execute(DeploymentOperation.java:136) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.jmx.MBeanServiceContainer.executeDeploymentOperation(MBeanServiceContainer.java:160) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.spi.DeploymentOperation$DeploymentOperationBuilder.execute(DeploymentOperation.java:216) ~[camunda-engine-7.11.2-ee.jar
:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.tomcat.TomcatBpmPlatformBootstrap.deployBpmPlatform(TomcatBpmPlatformBootstrap.java:83) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.tomcat.TomcatBpmPlatformBootstrap.lifecycleEvent(TomcatBpmPlatformBootstrap.java:61) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123) ~[catalina.jar:9.0.19]\n\tat org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423) ~[catalina.jar:9.0.19]\n\tat org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366) ~[catalina.jar:9.0.19]\n\tat org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:925) ~[catalina.jar:9.0.19]\n\tat org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) ~[catalina.jar:9.0.19]\n\t... 7 common frames omitted\nCaused by: java.lang.NullPointerException: null\n\tat io.digitalstate.camunda.prometheus.collectors.custom.CamundaCustomMetrics.processCustomMetricConfig(CamundaCustomMetrics.java:42) ~[camunda-prometheus-process-engine-plugin-v1.7.2-jar-with-dependencies.jar:na]\n\tat io.digitalstate.camunda.prometheus.collectors.custom.CamundaCustomMetrics.lambda$new$0(CamundaCustomMetrics.java:37) ~[camunda-prometheus-process-engine-plugin-v1.7.2-jar-with-dependencies.jar:na]\n\tat java.util.ArrayList.forEach(ArrayList.java:1257) ~[na:1.8.0_212]\n\tat io.digitalstate.camunda.prometheus.collectors.custom.CamundaCustomMetrics.<init>(CamundaCustomMetrics.java:36) ~[camunda-prometheus-process-engine-plugin-v1.7.2-jar-with-dependencies.jar:na]\n\tat io.digitalstate.camunda.prometheus.PrometheusProcessEnginePlugin.postProcessEngineBuild(PrometheusProcessEnginePlugin.java:153) ~[camunda-prometheus-process-engine-plugin-v1.7.2-jar-with-dependencies.jar:na]\n\tat org.camunda.bpm.engine.impl.cfg.ProcessEngineConfigurationImpl.invokePostProcessEngineBuild(ProcessEngineConfigurationImpl.java:1050) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camun
da.bpm.engine.impl.cfg.ProcessEngineConfigurationImpl.buildProcessEngine(ProcessEngineConfigurationImpl.java:799) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.jmx.services.JmxManagedProcessEngineController.start(JmxManagedProcessEngineController.java:38) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.jmx.MBeanServiceContainer.startService(MBeanServiceContainer.java:77) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.jmx.MBeanServiceContainer.startService(MBeanServiceContainer.java:63) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.deployment.StartProcessEngineStep.performOperationStep(StartProcessEngineStep.java:116) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.spi.DeploymentOperation.execute(DeploymentOperation.java:120) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\t... 16 common frames omitted\n","HOSTNAME":"camunda-test-camunda-bpm-86b495ffc7-6g2nc"}
{"@timestamp":"2019-08-16T14:43:48.321+02:00","@version":"1","message":"ENGINE-08044 Exception while performing 'Stop managed thread pool': Cannot stop service org.camunda.bpm.platform:type=executor-service: no such service registered: service is null","logger_name":"org.camunda.bpm.container","thread_name":"main","level":"ERROR","level_value":40000,"stack_trace":"org.camunda.bpm.engine.exception.NullValueException: Cannot stop service org.camunda.bpm.platform:type=executor-service: no such service registered: service is null\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0_212]\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.0_212]\n\tat sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_212]\n\tat java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_212]\n\tat org.camunda.bpm.engine.impl.util.EnsureUtil.generateException(EnsureUtil.java:394) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.engine.impl.util.EnsureUtil.ensureNotNull(EnsureUtil.java:55) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.engine.impl.util.EnsureUtil.ensureNotNull(EnsureUtil.java:50) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.jmx.MBeanServiceContainer.stopService(MBeanServiceContainer.java:121) [camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.jmx.MBeanServiceContainer.stopService(MBeanServiceContainer.java:109) [camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.deployment.jobexecutor.StopManagedThreadPoolStep.performOperationStep(StopManagedThreadPoolStep.java:37) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.spi.DeploymentOperation.execute(DeploymentOperation.java:120) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.jmx.MBeanServiceContainer.ex
ecuteDeploymentOperation(MBeanServiceContainer.java:160) [camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.spi.DeploymentOperation$DeploymentOperationBuilder.execute(DeploymentOperation.java:216) [camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.tomcat.TomcatBpmPlatformBootstrap.undeployBpmPlatform(TomcatBpmPlatformBootstrap.java:101) [camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.tomcat.TomcatBpmPlatformBootstrap.lifecycleEvent(TomcatBpmPlatformBootstrap.java:66) [camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123) [catalina.jar:9.0.19]\n\tat org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423) [catalina.jar:9.0.19]\n\tat org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366) [catalina.jar:9.0.19]\n\tat org.apache.catalina.core.StandardServer.stopInternal(StandardServer.java:979) [catalina.jar:9.0.19]\n\tat org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257) [catalina.jar:9.0.19]\n\tat org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:293) [catalina.jar:9.0.19]\n\tat org.apache.catalina.startup.Catalina.start(Catalina.java:637) [catalina.jar:9.0.19]\n\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_212]\n\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_212]\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_212]\n\tat java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_212]\n\tat org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:350) [bootstrap.jar:9.0.19]\n\tat org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:492) [bootstrap.jar:9.0.19]\n","HOSTNAME":"camunda-test-camunda-bpm-86b495ffc7-6g2nc"}
{"@timestamp":"2019-08-16T14:43:48.322+02:00","@version":"1","message":"ENGINE-08044 Exception while performing 'Unregistering BPM Platform Plugins': Cannot stop service org.camunda.bpm.platform:type=bpm-platform-plugins: no such service registered: service is null","logger_name":"org.camunda.bpm.container","thread_name":"main","level":"ERROR","level_value":40000,"stack_trace":"org.camunda.bpm.engine.exception.NullValueException: Cannot stop service org.camunda.bpm.platform:type=bpm-platform-plugins: no such service registered: service is null\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0_212]\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.0_212]\n\tat sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_212]\n\tat java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_212]\n\tat org.camunda.bpm.engine.impl.util.EnsureUtil.generateException(EnsureUtil.java:394) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.engine.impl.util.EnsureUtil.ensureNotNull(EnsureUtil.java:55) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.engine.impl.util.EnsureUtil.ensureNotNull(EnsureUtil.java:50) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.jmx.MBeanServiceContainer.stopService(MBeanServiceContainer.java:121) [camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.jmx.MBeanServiceContainer.stopService(MBeanServiceContainer.java:109) [camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.deployment.UnregisterBpmPlatformPluginsStep.performOperationStep(UnregisterBpmPlatformPluginsStep.java:37) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.spi.DeploymentOperation.execute(DeploymentOperation.java:120) ~[camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.jmx.MBea
nServiceContainer.executeDeploymentOperation(MBeanServiceContainer.java:160) [camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.spi.DeploymentOperation$DeploymentOperationBuilder.execute(DeploymentOperation.java:216) [camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.tomcat.TomcatBpmPlatformBootstrap.undeployBpmPlatform(TomcatBpmPlatformBootstrap.java:101) [camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.camunda.bpm.container.impl.tomcat.TomcatBpmPlatformBootstrap.lifecycleEvent(TomcatBpmPlatformBootstrap.java:66) [camunda-engine-7.11.2-ee.jar:7.11.2-ee]\n\tat org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123) [catalina.jar:9.0.19]\n\tat org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423) [catalina.jar:9.0.19]\n\tat org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366) [catalina.jar:9.0.19]\n\tat org.apache.catalina.core.StandardServer.stopInternal(StandardServer.java:979) [catalina.jar:9.0.19]\n\tat org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257) [catalina.jar:9.0.19]\n\tat org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:293) [catalina.jar:9.0.19]\n\tat org.apache.catalina.startup.Catalina.start(Catalina.java:637) [catalina.jar:9.0.19]\n\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_212]\n\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_212]\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_212]\n\tat java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_212]\n\tat org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:350) [bootstrap.jar:9.0.19]\n\tat org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:492) [bootstrap.jar:9.0.19]\n","HOSTNAME":"camunda-test-camunda-bpm-86b495ffc7-6g2nc"}
{"@timestamp":"2019-08-16T14:43:48.322+02:00","@version":"1","message":"ENGINE-08049 Camunda BPM platform stopped at 'Apache Tomcat/9.0.19'","logger_name":"org.camunda.bpm.container","thread_name":"main","level":"INFO","level_value":20000,"HOSTNAME":"camunda-test-camunda-bpm-86b495ffc7-6g2nc"}
{"@timestamp":"2019-08-16T14:43:48.323+02:00","@version":"1","message":"Called stop() on failed component [StandardServer[8005]] to trigger clean-up but it failed too","logger_name":"org.apache.catalina.util.LifecycleBase","thread_name":"main","level":"ERROR","level_value":40000,"stack_trace":"org.apache.catalina.LifecycleException: An invalid Lifecycle transition was attempted ([before_stop]) for component [StandardService[Catalina]] in state [INITIALIZED]\n\tat org.apache.catalina.util.LifecycleBase.invalidTransition(LifecycleBase.java:430) ~[catalina.jar:9.0.19]\n\tat org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:244) ~[catalina.jar:9.0.19]\n\tat org.apache.catalina.core.StandardServer.stopInternal(StandardServer.java:994) ~[catalina.jar:9.0.19]\n\tat org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257) ~[catalina.jar:9.0.19]\n\tat org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:293) ~[catalina.jar:9.0.19]\n\tat org.apache.catalina.startup.Catalina.start(Catalina.java:637) [catalina.jar:9.0.19]\n\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_212]\n\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_212]\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_212]\n\tat java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_212]\n\tat org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:350) [bootstrap.jar:9.0.19]\n\tat org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:492) [bootstrap.jar:9.0.19]\n","HOSTNAME":"camunda-test-camunda-bpm-86b495ffc7-6g2nc"}
{"@timestamp":"2019-08-16T14:43:48.323+02:00","@version":"1","message":"Destroying ProtocolHandler [\"http-nio-8080\"]","logger_name":"org.apache.coyote.http11.Http11NioProtocol","thread_name":"main","level":"INFO","level_value":20000,"HOSTNAME":"camunda-test-camunda-bpm-86b495ffc7-6g2nc"}
{"@timestamp":"2019-08-16T14:43:48.325+02:00","@version":"1","message":"Destroying ProtocolHandler [\"ajp-nio-8009\"]","logger_name":"org.apache.coyote.ajp.AjpNioProtocol","thread_name":"main","level":"INFO","level_value":20000,"HOSTNAME":"camunda-test-camunda-bpm-86b495ffc7-6g2nc"}
{"@timestamp":"2019-08-16T14:43:48.337+02:00","@version":"1","message":"Prometheus SimpleGaugeMetric has been created: metric_job_failed","logger_name":"io.digitalstate.camunda.prometheus.collectors.SimpleGaugeMetric","thread_name":"io.digitalstate.camunda.prometheus.collectors.camunda.JobExecutor timer","level":"INFO","level_value":20000,"HOSTNAME":"camunda-test-camunda-bpm-86b495ffc7-6g2nc"}
{"@timestamp":"2019-08-16T14:43:48.341+02:00","@version":"1","message":"ENGINE-14020 JobExecutor[org.camunda.bpm.engine.impl.jobexecutor.RuntimeContainerJobExecutor] stopped job acquisition","logger_name":"org.camunda.bpm.engine.jobexecutor","thread_name":"Thread-9","level":"INFO","level_value":20000,"HOSTNAME":"camunda-test-camunda-bpm-86b495ffc7-6g2nc"}

Thanks for your help.

StephenOTT commented 5 years ago

See the deployments tracking feature in the readme. The only thing that the Grafana annotation reporting does is send deployment events (Camunda BPMN deployments) to the Granada server as "notes/events). See the docs for more info.

Can you paste your plugin configuration?

StephenOTT commented 5 years ago

@sosoriov can you provide your plugin configuration?

sosoriov commented 5 years ago

Hi @StephenOTT sorry for the late reply.

this is my plugin configuration

<plugin>
        <class>io.digitalstate.camunda.prometheus.PrometheusProcessEnginePlugin</class>
        <properties>
            <property name="port">9999</property>
            <property name="camundaReportingIntervalInSeconds">5</property>
            <property name="collectorYmlFilePath">/camunda/conf/prometheus/prometheus.yaml</property>
            <property name="bpmnDurationParseListener">true</property>
            <property name="grafanaAnnotationReporting">false</property>
        </properties>
      </plugin>

as testing purposes I'm using your file for Prometheus


# Camunda Prometheus Metrics configuration
# each object is a timer configuration
---
system:
- collector: io.digitalstate.camunda.prometheus.collectors.camunda.BpmnExecution
  enable: true
  startDate: 2015-10-03T17:59:38+00:00
  endDate: now
  startDelay: 0
  frequency: 5000
- collector: io.digitalstate.camunda.prometheus.collectors.camunda.DmnExecution
  enable: true
  startDate: 2015-10-03T17:59:38+00:00
  endDate: now
  startDelay: 0
  frequency: 5000
- collector: io.digitalstate.camunda.prometheus.collectors.camunda.JobExecutor
  enable: true
  startDate: 2015-10-03T17:59:38+00:00
  endDate: now
  startDelay: 0
  frequency: 5000

custom:
- collector: /customcollectors/UserTasks.groovy
  enable: true
  startDelay: 0
  frequency: 5000
- collector: /customcollectors/BpmnProcessDefinition.groovy
  enable: true
  startDelay: 0
  frequency: 5000
- collector: /customcollectors/EventsMetrics.groovy
  enable: true
  startDelay: 0
  frequency: 5000
- collector: /customcollectors/IdentityServiceMetrics.groovy
  enable: true
  startDelay: 0
  frequency: 5000
- collector: classpath:/prometheus/customcollectors/IncidentMetrics.groovy
  enable: true
  startDelay: 0
  frequency: 5000
- collector: classpath:/prometheus/customcollectors/ProcessInstances.groovy
  enable: true
  startDelay: 0
  frequency: 5000
- collector: classpath:prometheus/customcollectors/TimerMetrics.groovy
  enable: true
  startDelay: 0
  frequency: 5000
    # Warning!! UserOperationLog collector performs a lot of Count queries (1 for each type of operation) Has potential to create performance impacts
    # Recommend that you select specific collectors and execute them in their own scripts on their needed timers.
- collector: /customcollectors/UserOperationLog.groovy
  enable: true
  startDelay: 0
  frequency: 5000
- collector: /customcollectors/ExternalTasks.groovy
  enable: true
  startDelay: 0
  frequency: 5000
- collector: classpath:prometheus/customcollectors/ExternalTasksCustomTopics.groovy
  enable: true
  startDelay: 0
  frequency: 10000
  config:
    topics:
    - myTopic1
    - myTopic2
    - someCustomTopic
- collector: classpath:prometheus/customcollectors/ExternalTasksCustomTopics.groovy
  enable: true
  startDelay: 0
  frequency: 8000
  config:
    topics:
    - myTopic3
    - myTopic4
    - someOtherCustomTopic
- collector: classpath:prometheus/customcollectors/ExternalTasksCustomWorkers.groovy
  enable: true
  startDelay: 0
  frequency: 2000
  config:
    workers:
    - someWorkerID123
    - someOtherWorkerId567890
    - someLegacyWorker001
- collector: classpath:prometheus/customcollectors/ExternalTasksCustomWorkers.groovy
  enable: true
  startDelay: 0
  frequency: 2000
  config:
    workers:
    - SW1
    - SW2
    - SW3
- collector: classpath:prometheus/customcollectors/HistoricActivityStatisticsPerProcessDefinition.groovy
  enable: true
  startDelay: 0
  frequency: 5000
  config:
    processDefinitionKeys:
    - myTestProcess

durationTracking:
  activity_instance_duration:
    help: "Core activity instance duration tracking. Used to track all activity instances."
    buckets: [0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1, 0.2, 0.3, 0.4, 0.5, 1.0, 5.0, 10.0, 20.0, 30.0, 60.0, 120.0]
  process_instance_duration:
    help: "Generic Process Instance Duration Tracking"
    buckets: [1, 5, 10, 15, 20, 30, 60, 120, 300, 600, 1200, 2400]
  some_specific_type_of_processes:
    help: "A specific type of process that is run that we track specific metrics against"
    buckets: [60, 300, 600, 1200, 1800, 3600, 7200, 10800, 14400, 18000, 28800, 86400, 129600]
  mycustom_metric_duration:
    help: "Some custom metric i am tracking"
    buckets: [1, 5, 10, 20, 50]
  some_userTask_metric:
    help: "Tracking the duration of specific user tasks: 1m, 2m, 3m, 4m, 5m, 10m, 15m, 30m, 60m, 8h, 24h."
    buckets: [60, 120, 180, 240, 300, 600, 900, 1800, 3600, 28800, 86400]

I have Prometheus and Grafana running on dedicated Vms

Thanks for your help.

StephenOTT commented 5 years ago

Can you confirm that the process engine has a name? From the error it looks like your engine name is null. Thus it's throwing a error because the engine name is used throughout the collectors as tag info

sosoriov commented 5 years ago

Yes it has, it's the default process engine,

here is the entire configuration file

<?xml version="1.0" encoding="UTF-8"?>
<bpm-platform xmlns="http://www.camunda.org/schema/1.0/BpmPlatform" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.camunda.org/schema/1.0/BpmPlatform http://www.camunda.org/schema/1.0/BpmPlatform ">

  <job-executor>
    <job-acquisition name="default" />
  </job-executor>

  <process-engine name="default">
    <job-acquisition>default</job-acquisition>
    <configuration>org.camunda.bpm.engine.impl.cfg.StandaloneProcessEngineConfiguration</configuration>
    <datasource>java:jdbc/ProcessEngine</datasource>

    <properties>
      <property name="history">full</property>
      <property name="databaseSchemaUpdate">true</property>
      <property name="authorizationEnabled">true</property>
      <property name="jobExecutorDeploymentAware">true</property>
      <property name="historyCleanupBatchWindowStartTime">00:01</property>
    </properties>

    <plugins>
      <!-- plugin enabling Process Application event listener support -->
      <plugin>
        <class>org.camunda.bpm.application.impl.event.ProcessApplicationEventListenerPlugin</class>
      </plugin>

      <!-- plugin enabling integration of camunda Spin -->
      <plugin>
        <class>org.camunda.spin.plugin.impl.SpinProcessEnginePlugin</class>
      </plugin>

      <!-- plugin enabling connect support -->
      <plugin>
        <class>org.camunda.connect.plugin.impl.ConnectProcessEnginePlugin</class>
      </plugin>

    <!-- LDAP CONFIGURATION -->
    <!-- Uncomment this section in order to enable LDAP support for this process engine -->
    <!-- Adjust configuration, see ( http://docs.camunda.org/latest/guides/user-guide/#process-engine-identity-service-the-ldap-identity-service ) -->
      <plugin>
        <class>org.camunda.bpm.identity.impl.ldap.plugin.LdapIdentityProviderPlugin</class>
        <properties>

        </properties>
      </plugin>

      <!-- LDAP CONFIGURATION -->
      <!-- The following plugin allows you to grant administrator authorizations to an existing LDAP user -->
      <plugin>
        <class>org.camunda.bpm.engine.impl.plugin.AdministratorAuthorizationPlugin</class>
        <properties>
          <property name="administratorGroupName">xx</property>
        </properties>
      </plugin>

      <plugin>
        <class>io.digitalstate.camunda.prometheus.PrometheusProcessEnginePlugin</class>
        <properties>
            <property name="port">9999</property>
            <property name="camundaReportingIntervalInSeconds">5</property>
            <property name="collectorYmlFilePath">/camunda/conf/prometheus/prometheus.yaml</property>
            <property name="bpmnDurationParseListener">true</property>
            <property name="grafanaAnnotationReporting">false</property>
        </properties>
      </plugin>

    </plugins>
  </process-engine>
</bpm-platform>
sosoriov commented 5 years ago

Hi @StephenOTT I got it!

As I'm using a custom image, I was removing the #groovy# library, so in my Docker file definition I had this:

rm /camunda/lib/groovy-all-*.jar

Once I included the library, everything works!

Thanks for your help!!

StephenOTT commented 5 years ago

Glad you figured it out. 👍🏻👍🏻