# Can Ignition expose JMX metrics?

**URL:** <https://forum.inductiveautomation.com/t/can-ignition-expose-jmx-metrics/62165>\
**Category:** Ignition\
**Tags:** perspective, ignition81\
**Created:** [July 21, 2022, 2:26pm UTC](https://forum.inductiveautomation.com/t/can-ignition-expose-jmx-metrics/62165 "2022-07-21T14:26:40Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jordan\_Larson](https://avatars.discourse-cdn.com/v4/letter/j/c5a1d2/32.png) [@Jordan\_Larson](https://forum.inductiveautomation.com/u/Jordan_Larson)\
**Post date:** [July 21, 2022, 2:26pm UTC](https://forum.inductiveautomation.com/t/can-ignition-expose-jmx-metrics/62165/1 "2022-07-21T14:26:40Z")

</div>

I checked for any previously related thread and there was one a few years ago regarding VisualVM and a link that no longer existed but it sort of seemed to be on the right track

We used Datadog for monitoring and they have the ability to collect metrics, traces, and other useful performance data. Generally all that is needed from the Datadog perspective is the agent being able to open a local JMX connection.

We are already pulling in the wrapper.logs which is incredibly useful.

Not sure if this is possible on the pre-packaged Java that comes with Ignition 8.1.18?

Some of the garbage collection data would be useful getting piped into Datadog. That way in the event things go pear shaped we route to PagerDuty for whomever is oncall.

Is this even possible or supported? I would assume I’d have to make a modification to some of the startup/wrapper scripts to even attempt this. Anyone have any experience?

Thanks!  
~Jordan

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [July 21, 2022, 2:36pm UTC](https://forum.inductiveautomation.com/t/can-ignition-expose-jmx-metrics/62165/2 "2022-07-21T14:36:13Z")

</div>

I had to add something like this to ignition.conf under the additional parameters section and then VisualVM was able to add a JMX connection to `localhost:1234`:

```auto
# Java Additional Parameters
wrapper.java.additional.1=-Ddata.dir=data
wrapper.java.additional.2=-Dcom.sun.management.jmxremote=true 
wrapper.java.additional.3=-Dcom.sun.management.jmxremote.port=1234 
wrapper.java.additional.4=-Dcom.sun.management.jmxremote.rmi.port=1234 
wrapper.java.additional.5=-Dcom.sun.management.jmxremote.local.port=1235 
wrapper.java.additional.6=-Dcom.sun.management.jmxremote.authenticate=false 
wrapper.java.additional.7=-Dcom.sun.management.jmxremote.ssl=false 

```

I don’t remember having to do this on macOS or Linux systems, but that could have been when I was running out of the IDE and not as a service.

---

<div class="post-metadata">

**Author:** ![Jordan\_Larson](https://avatars.discourse-cdn.com/v4/letter/j/c5a1d2/32.png) [@Jordan\_Larson](https://forum.inductiveautomation.com/u/Jordan_Larson)\
**Post date:** [July 21, 2022, 3:43pm UTC](https://forum.inductiveautomation.com/t/can-ignition-expose-jmx-metrics/62165/3 "2022-07-21T15:43:52Z")

</div>

As always - extremely helpful! I think this will do it.

It seems like its a mixed bag trying to get this on localhost/127.0.0.1 since the agent technically runs locally… Trying to avoid exposing an open port (even though I can firewall it)
