Operations 5 min read

Integrating Prometheus Exporter Collector with Nightingale for Powerful Monitoring

This article explains why and how Meicai migrated its monitoring platform to Nightingale, introduces the Prometheus‑Exporter‑Collector plugin, details the data‑model conversion rules, and provides a step‑by‑step usage guide with screenshots and resource links.

Efficient Ops
Efficient Ops
Efficient Ops
Integrating Prometheus Exporter Collector with Nightingale for Powerful Monitoring

Why Introduce Prometheus‑Exporter‑Collector?

Meicai migrated its monitoring system, originally built on OpenFalcon, to Nightingale (the open‑source enterprise‑grade monitoring system derived from OpenFalcon) to leverage Nightingale’s extensible plugin mechanism. While Nightingale handles infrastructure monitoring via OpenFalcon plugins, Meicai found Prometheus richer for storage and middleware layers, so they integrated Prometheus exporters through the Prometheus‑Exporter‑Collector plugin.

The plugin supports various exporters such as MySQL, Redis, ElasticSearch, Ceph, Hadoop, and Nginx, enabling Nightingale to collect metrics from the Prometheus ecosystem.

How to Integrate with Nightingale?

Exporters use a pull model to fetch metrics, whereas Nightingale uses a push model. The Prometheus‑Exporter‑Collector acts as a bridge, running as a collector plugin that periodically reads metrics from exporters, converts them to Nightingale’s data model, and pushes them to Nightingale’s server.

Configuration is done via Nightingale’s web console, where the collector plugin is enabled and parameters are set.

Data Model Conversion Rules

Metric name, tags/labels, and value are directly transferred.

Timestamp defaults to the exporter’s timestamp; if absent, the current time is used.

Users can add additional tags.

The Nightingale‑specific endpoint defaults to the local machine but can be customized.

Metric types: counters can be converted to delta (Subtract) and rate; gauge‑type metrics are mapped to Gauge by default.

Usage Guide

To use the plugin, add the Prometheus‑Exporter‑Collector plugin and its parameters in Nightingale’s collector configuration, as shown in the screenshot below.

For a detailed walkthrough, watch the video "Nightingale Series 10 – New Plugin and Prometheus Exporter Integration".

Acknowledgements

Thanks to Didi for open‑sourcing Nightingale, which helped Meicai build a better monitoring platform, and to the community for collaborative contributions.

Appendix

Prometheus‑Exporter‑Collector: https://github.com/n9e/prometheus-exporter-collector.git

Prometheus exporter collection: https://prometheus.io/docs/instrumenting/exporters/

Video: https://www.bilibili.com/video/BV19C4y1a7zh/

Nightingale GitHub: https://github.com/didi/nightingale

monitoringoperationsPrometheusExporterNightingaleOpenFalcon
Efficient Ops
Written by

Efficient Ops

This public account is maintained by Xiaotianguo and friends, regularly publishing widely-read original technical articles. We focus on operations transformation and accompany you throughout your operations career, growing together happily.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.