Menu
Grafana Cloud
Configure a MongoDB exporter to generate Prometheus metrics
Use the recommended Percona MongoDB Exporter to export MongoDB metrics in Prometheus format.
To configure a MongoDB exporter, complete the following steps:
Run the following command to start the Docker version of the exporter:
docker run -d -p 9216:9216 -p 17001:17001 percona/mongodb_exporter:0.39 --mongodb.uri=mongodb://mongodb:17001
Use
MONGODB_USER
andMONGODB_PASSWORD
to pass credentials.Alternatively, you can use the MongoDB exporter Prometheus community helm chart.
Request and error metrics
Metric | Key Performance Indicator |
---|
|
mongodb_op_counters_total
|Request Rate
rate(mongodb_op_counters_total[5m])
mongodb_op_counters_repl_total
mongodb_mongod_op_counters_repl_total
|Request Rate
rate(…[5m])
mongodb_mongod_op_latencies_ops/latencies_total
|Latency Average
rate(mongodb_mongod_op_latencies_latency_total[5m])
/
rate(mongodb_mongod_op_latencies_ops_total[5m])
|Resource metrics
Metric | Key Performance Indicator |
---|---|
Connection Counts mongodb_ss_connections | Connection Usage
|
/ ignoring(conn_type) (mongodb_ss_connections{conn_type=“current”} + ignoring(conn_type) mongodb_ss_connections{conn_type=“available”}) |
Alerts
KPI | Alert |
---|---|
Request Rate | RequestRateAnomaly |
Latency Average | LatencyAverageAnomaly, LatencyAverageBreach |
Connection Usage | Saturation with a severity level of critical when utilization exceeds 90% |
Failure alerts
Alert | Description |
---|---|
MongodbDown | Fires when Mongo DB is down |
MongodbReplicaMemberUnhealthy | Fires when a replica in a replication set is unhealthy |
MongodbReplicationLag | Fires when the replication lag of a secondary is more than a configured time duration. Severity is set to warning when lag > 60s and critical when lag > 240s. |
MongodbReplicationHeadroom | Fires when the replication lag of a secondary is more than a configured time duration. Severity is set to warning when lag > 60s and critical when lag > 240s. |
MongodbTooManyCursorsOpen | Fires when the number of open cursors is above a given threshold. By default, the threshold is set to 10000 . Severity is set to warning . |
MongodbTooManyCursorTimeouts | Fires if the rate of cursor timeout is above a certain threshold. By default, the threshold is set to 100 . Severity is set to warning . |
MongodbInternalErrors | Fires when the count of internal errors keeps growing for 5m . Severity is set to warning . |
MongodbUserErrors | Fires when the count of user errors keeps growing for 5m . Severity is set to warning. |
ReadRequestsQueueingUp | If the read queue keeps growing for 5m . Severity is set to warning . |
WriteRequestsQueueingUp | If the write queue keeps growing for 5m . Severity is set to warning. |
Dashboard
The following image shows an example of the MongoDB Instance Summary Dashboard.
Was this page helpful?
Related documentation
Related resources from Grafana Labs
Additional helpful documentation, links, and articles:
Video
Getting started with the Grafana LGTM Stack
In this webinar, we’ll demo how to get started using the LGTM Stack: Loki for logs, Grafana for visualization, Tempo for traces, and Mimir for metrics.
Video
Intro to Kubernetes monitoring in Grafana Cloud
In this webinar you’ll learn how Grafana offers developers and SREs a simple and quick-to-value solution for monitoring their Kubernetes infrastructure.
Video
Building advanced Grafana dashboards
In this webinar, we’ll demo how to build and format Grafana dashboards.