# Ignition Metrics

**URL:** <https://forum.inductiveautomation.com/t/ignition-metrics/22109>\
**Category:** Ignition\
**Created:** [January 24, 2019, 8:58pm UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109 "2019-01-24T20:58:19Z")\
**Posts on this page:** 19\
**Page:** 1

<div class="post-metadata">

**Author:** ![oscar.salcedo](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/oscar.salcedo/32/11019_2.png) [@oscar.salcedo](https://forum.inductiveautomation.com/u/oscar.salcedo)\
**Post date:** [January 24, 2019, 8:58pm UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/1 "2019-01-24T20:58:20Z")

</div>

Hi everyone,  
I wanted to share a project we have been working on to better track our servers’ performance, along with other systems involved.

This is a work in progress, but here are some screenshots of what we’ve put together:

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/2X/2/28c1d0fb2233a8045cb77358ab6bd97d7b5af62d.png)  
 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/2X/1/17c8a765792f5211b05f8fccab32891d36571289.png)  
 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/2X/8/835dad828c7c07e8816663f8bf55ca1f11515981.png)

**Tools:**

- InfluxDB: Time Series database to store metrics
- Custom node.js service to collect Ignition Gateway’s metrics (We are planning on building a module, but this was our shortest path to completion 🙂 )
- Telegraf: service to collect Windows, VMWare, JVM MBeam, MQTT, and other sets of data
- Grafana: visualization tool

**What are we tracking:**  
Ignition:

- Pretty much anything that is available in the Gateway’s homepage (related to performance and system status)
- ![image](https://us1.discourse-cdn.com/inductiveautomation/original/2X/3/37caeb93efb3af08c8d0acf839915e935d0d5694.png)
- ![image](https://us1.discourse-cdn.com/inductiveautomation/original/2X/6/6a3eaaf6e39fd0f190ac7b955ea7266c17533e7e.png)
- ![image](https://us1.discourse-cdn.com/inductiveautomation/original/2X/7/7773a24fbd352b0ead8e9b7874a48b6fb8cc682b.png)

Windows Host:

- CPU
- Memory
- Network Traffic
- Disk I/O
- etc.

VMWare Host:

- Same as above, including stats from other machines that share the Host with the Ignition Gateway

Java Virtual Machine:

- ![image](https://us1.discourse-cdn.com/inductiveautomation/original/2X/1/1b7ac78378d4657fdcdc1b53605c57314fc9145b.png)

We are cleaning up the code some and will share the node service code and telegraf config files on github soon. In the meantime we’d love your feedback!

Cheers!

Oscar.

---

<div class="post-metadata">

**Author:** ![Herbie](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/herbie/32/65288_2.png) [@Herbie](https://forum.inductiveautomation.com/u/Herbie)\
**Post date:** [January 25, 2019, 2:25pm UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/2 "2019-01-25T14:25:42Z")

</div>

That is a really professional dashboard. Great work!

---

<div class="post-metadata">

**Author:** ![PerryAJ](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/perryaj/32/3281_2.png) [@PerryAJ](https://forum.inductiveautomation.com/u/PerryAJ)\
**Post date:** [January 25, 2019, 9:03pm UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/3 "2019-01-25T21:03:33Z")

</div>

Very cool. Are you guys using this info to do anything actionable, or is it mostly a sanity/healthwatch style use case?

Either way, nice job.

---

<div class="post-metadata">

**Author:** ![oscar.salcedo](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/oscar.salcedo/32/11019_2.png) [@oscar.salcedo](https://forum.inductiveautomation.com/u/oscar.salcedo)\
**Post date:** [January 25, 2019, 9:22pm UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/4 "2019-01-25T21:22:48Z")

</div>

Thanks @PerryAJ  
We are using it to troubleshoot issues at the moment; we have visibility of all the layers involved in our environments: Gateway, guest OS, and VMWare Host - as well as the different MPLS links to remote facilities.

it’s early on, but the plan is to use the alarming features built into the Stack to warn us of trends. We are starting to design how to include application-level metrics into this framework; things like how long does a specific REST call takes, how long each production model area takes to update OEE values and so on.  
Ideally, all this granularity would be built into Ignition out of the box (hint hint 🙂 ), but for the time being this will suffice.

Cheers,  
Oscar.

---

<div class="post-metadata">

**Author:** ![tamerplc](https://avatars.discourse-cdn.com/v4/letter/t/d78d45/32.png) [@tamerplc](https://forum.inductiveautomation.com/u/tamerplc)\
**Post date:** [January 28, 2019, 8:12pm UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/5 "2019-01-28T20:12:55Z")

</div>

Awesome. .  
How you built Grafana inside ignition? It have amazing visualization tools.

Great job

---

<div class="post-metadata">

**Author:** ![oscar.salcedo](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/oscar.salcedo/32/11019_2.png) [@oscar.salcedo](https://forum.inductiveautomation.com/u/oscar.salcedo)\
**Post date:** [January 28, 2019, 8:24pm UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/6 "2019-01-28T20:24:43Z")

</div>

Grafana is just the visualization layer; we wrote a node.js service that will grab the Ignition performance/etc data from the gateway itself. Nothing too fancy, but it works. I’ll share this week if I get time to clean it up!

---

<div class="post-metadata">

**Author:** ![cristihcd](https://avatars.discourse-cdn.com/v4/letter/c/7bcc69/32.png) [@cristihcd](https://forum.inductiveautomation.com/u/cristihcd)\
**Post date:** [February 11, 2020, 8:16am UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/7 "2020-02-11T08:16:51Z")

</div>

I’m interested in the node.js service as well (I would like to integrate with zabbix)

Nice job!

---

<div class="post-metadata">

**Author:** ![olivier.g.suc](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/olivier.g.suc/32/23831_2.png) [@olivier.g.suc](https://forum.inductiveautomation.com/u/olivier.g.suc)\
**Post date:** [April 28, 2021, 7:04pm UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/8 "2021-04-28T19:04:15Z")

</div>

Yes I would be interested in the node.js service as well as I am evaluating how to use Grafana to visualize the historical data in Ignition…

---

<div class="post-metadata">

**Author:** ![Connor\_Reid](https://avatars.discourse-cdn.com/v4/letter/c/5fc32e/32.png) [@Connor\_Reid](https://forum.inductiveautomation.com/u/Connor_Reid)\
**Post date:** [March 4, 2022, 12:07am UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/9 "2022-03-04T00:07:33Z")

</div>

I’m trying to do something just like this. Amazing work! Did you get a chance to share it?

---

<div class="post-metadata">

**Author:** ![John\_S1](https://avatars.discourse-cdn.com/v4/letter/j/c0e974/32.png) [@John\_S1](https://forum.inductiveautomation.com/u/John_S1)\
**Post date:** [October 31, 2022, 11:09am UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/10 "2022-10-31T11:09:42Z")

</div>

In 2022, I'm wondering how he has done that. I hope somebody has received what he has done.. can anyone share that project or the concept he is doing, and how can we take those data from the gateway?  
I'm really interested... Can someone guide me on this?

---

<div class="post-metadata">

**Author:** ![Andres\_Gallardo](https://avatars.discourse-cdn.com/v4/letter/a/a8b319/32.png) [@Andres\_Gallardo](https://forum.inductiveautomation.com/u/Andres_Gallardo)\
**Post date:** [January 3, 2023, 7:05am UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/11 "2023-01-03T07:05:13Z")

</div>

Yeah, quite an interesting project, great job!  
Is January 2023, do you have any update on the node.js code?

---

<div class="post-metadata">

**Author:** ![Henrol\_Jeo\_Gutierrez](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/henrol_jeo_gutierrez/32/50993_2.png) [@Henrol\_Jeo\_Gutierrez](https://forum.inductiveautomation.com/u/Henrol_Jeo_Gutierrez)\
**Post date:** [August 12, 2023, 2:54pm UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/12 "2023-08-12T14:54:53Z")

</div>

I wonder how you get data from Ignition's gateway? Is there any some sort of API?  
Or is it already available in Ignitions OPCUA server?  
I wanna do this also, but I am just a little bit new to ignition, but I am a nodejs programmer, so I kinda like to do the same thing and share it to community, I just need the concept on "how" you get the data wether thru API, Web scraping or etc.  
Thanks!

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [August 12, 2023, 2:59pm UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/13 "2023-08-12T14:59:13Z")

</div>

> [@Henrol\_Jeo\_Gutierrez](#):
>
> I wonder how you get data from Ignition's gateway?

What information do you want? And why?

Have a look in **Tag Browser** , select **System** from the dropdown and explore the **Gateway** section. You can display any of this information in an Ignition Vision or Perspective application.

---

<div class="post-metadata">

**Author:** ![Henrol\_Jeo\_Gutierrez](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/henrol_jeo_gutierrez/32/50993_2.png) [@Henrol\_Jeo\_Gutierrez](https://forum.inductiveautomation.com/u/Henrol_Jeo_Gutierrez)\
**Post date:** [August 12, 2023, 4:05pm UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/14 "2023-08-12T16:05:11Z")

</div>

Thanks for answering! So it means it is already part of the Ignition's built-in OPCUA server. In that case  
We don't have to create custom nodejs apps to send data to Influxdb and view it in grafana. Telegraf or nodered can read data via opcua and store it influxdb.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [August 12, 2023, 4:12pm UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/15 "2023-08-12T16:12:49Z")

</div>

> [@Henrol\_Jeo\_Gutierrez](#):
>
> already part of the Ignition's built-in OPCUA server

Probably not what you are thinking. Ignition's OPC UA server exposes driver data and optionally Ignition tag data in a bare-bones fashion.

If you want Ignition to reach out to other services that have web APIs, Ignition's `system.net.httpClient()` scripting tool can do this, using whatever data triggers or timed operations you choose. From Ignition's **jython** scripting capabilities.

If you want other services to reach out to Ignition to **pull** data or trigger actions, you will need to implement a web API within Ignition using Ignition's optional WebDev module. You implement such APIs in **jython** again.

You will have near zero use of any nodejs skills **within** Ignition.

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [August 12, 2023, 5:30pm UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/16 "2023-08-12T17:30:22Z")

</div>

> [@Henrol\_Jeo\_Gutierrez](#):
>
> So it means it is already part of the Ignition's built-in OPCUA server.

I think you have misunderstood the subject matter of this thread. The OP is tracking the performance of the Ignition gateway. He's not discussing passing data from more general (and typical) Ignition applications out to other services. Note that you didn't answer my question about what information you want (or why) so we can't be any more helpful at this time.

---

<div class="post-metadata">

**Author:** ![oscar.salcedo](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/oscar.salcedo/32/11019_2.png) [@oscar.salcedo](https://forum.inductiveautomation.com/u/oscar.salcedo)\
**Post date:** [August 13, 2023, 11:40pm UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/17 "2023-08-13T23:40:57Z")

</div>

The original post explains the stack pretty well. Nowadays, Ignition exposes a lot of the gateway-level metrics are being exposed via the OPC-UA Server so a nodejs service may not be necessary. JVM metrics would still need to be gathered with Jolokia ([JVM Metrics - Jolokia 2 | Grafana Labs](https://grafana.com/grafana/dashboards/8991-jvm-metrics-jolokia-2/))

Cheers!

---

<div class="post-metadata">

**Author:** ![Henrol\_Jeo\_Gutierrez](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/henrol_jeo_gutierrez/32/50993_2.png) [@Henrol\_Jeo\_Gutierrez](https://forum.inductiveautomation.com/u/Henrol_Jeo_Gutierrez)\
**Post date:** [August 22, 2023, 4:50am UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/18 "2023-08-22T04:50:55Z")

</div>

Yup! This is exactly the answer, thanks for clarifying it to us!

Regards,

---

<div class="post-metadata">

**Author:** ![matheus.swenson](https://avatars.discourse-cdn.com/v4/letter/m/47e85d/32.png) [@matheus.swenson](https://forum.inductiveautomation.com/u/matheus.swenson)\
**Post date:** [August 6, 2025, 6:36pm UTC](https://forum.inductiveautomation.com/t/ignition-metrics/22109/19 "2025-08-06T18:36:04Z")

</div>

Hello,

This examples from 2023 have been updated or maintained or enhanced with the ignition way of publish metrics using opentelemetry ?  
Im building some ignition dashboards and as an SRE I would love to know what information Ignition administrators would like to have in a dashboard.
