I am using Prometheus to instrument a Node.js application for monitoring. I am currently using the following Node.js client for instrumentation:
I have everything configured to gather and collect default metrics from my Node.js application and the monitoring is working as expected. I want to know if it is possible for Prometheus to scrape JSON from an endpoint that my application exposes.
For example, the Node.js application has a health check endpoint (/health), that returns simple JSON data (boolean values or 0/1) about the overall health of the application as well as it's dependencies. Can I configure Prometheus and/or the prom-client to scrape the JSON from the health endpoint and then record metrics based on that information?
I believe you can.
The blogposts I have linked below detail how this is done using the Prometheus Python client to ingest metrics in JSON format into Prometheus.
https://www.robustperception.io/writing-a-jenkins-exporter-in-python/ https://www.robustperception.io/writing-json-exporters-in-python/