How to Monitor MongoDB Database Cluster Performance

MongoDB is a source-available cross-platform document-oriented database program for high-volume storage. Classified as a NoSQL database program, MongoDB uses JSON-like documents with optional schemas.

DigitalOcean Managed Databases include metrics visualizations so you can monitor performance and health of your database cluster.

Cluster metrics monitor the performance of the nodes in a database cluster. This data can help guide capacity planning and optimization. You can also set up alerting on cluster metrics.

View Cluster Metrics

To view performance metrics, click the name of the database to go to its Overview page, then click the Insights tab.

The Insights tab of a Managed Databases cluster

In the Select Period drop-down menu, you can choose a time frame for the x-axis of the graphs, ranging from 1 hour to 30 days. Each line in the graphs displays about 300 data points.

By default, the summary to the right shows the most recent metrics values. When you hover over a different time in a graph, the summary displays the values from that time instead.

You may notice gaps in your metrics data from outages, platform maintenance, or a database failover or migration. You can check DigitalOcean’s status page for outages, review the cluster maintenance window, visit the cluster’s Settings > Logs (or Logs & Queries) page to look for failovers and migrations.

If you recently provisioned the cluster or added nodes, it may take a few minutes for the metrics data to finish processing before you see it on the Insights page.

Cluster Metrics Details

Database clusters have the following cluster metrics:

  • CPU usage
  • 1-, 5-, and 15-minute load average
  • Memory usage
  • Disk usage

All resource usage graphs have three lines for minimum, maximum, and average. If you have a one-node cluster, all three lines are a single, superimposed line.

CPU Usage

The CPU usage plot shows, for all nodes in the cluster, the minimum, maximum, and average percentage of processing power being used across all cores.

Cluster CPU usage

If you experience a significant increase in CPU usage, check the MongoDB throughput plot and query statistics to look for unexpected usage patterns or long-running queries.

Learn more about CPU usage in the Droplet metrics definitions.

Load Average

The load average plot displays 1-, 5-, and 15-minute load averages, averaged across all nodes in the cluster. Load average measures the processes that are either being handled by the processor or are waiting for processor time.

Cluster load averages

The three time-based load average metrics are calculated as an exponentially weighted moving average over the past 1, 5, and 15 minutes. This metric does not adjust for multiple cores. Learn more about load averages in the Droplet metrics definitions.

Memory Usage

The memory usage plot presents the minimum, maximum, and average percentage of memory consumption across all nodes in the cluster. Because cached memory can be released on demand, it is not considered in use.

Cluster memory usage

Learn more about memory usage in the Droplet metrics definitions.

Disk Usage

The disk usage plot shows the minimum, maximum, and average percentage of disk consumed across all nodes in the cluster. Disk usage is expected to fluctuate during vacuuming, particularly with write-heavy use cases, but you should maintain disk usage below 90%.

Cluster disk usage

Learn more about disk I/O in the Droplet metrics definitions.