MongoDB Atlas cluster 🔗
The Splunk Distribution of OpenTelemetry Collector provides this integration as the
mongodb-atlas monitor via the Smart Agent Receiver.
MongoDB Atlas provides MongoDB as an on-demand fully managed service. Atlas exposes MongoDB cluster monitoring and logging data through its monitoring and logs REST API endpoints. These Atlas monitoring API resources are grouped into measurements for MongoDB processes, host disks, and MongoDB databases.
This monitor repeatedly scrapes MongoDB monitoring data from Atlas at the configured time interval. It scrapes the process and disk measurements into metric groups called mongodb and hardware. The original measurement names are included in the metric descriptions.
A set of data points are fetched at the configured granularity and period for each measurement. Metric values are set to the latest non-empty data point value in the set. The finest granularity supported by Atlas is 1 minute. The configured period for the monitor needs to be wider than the interval at which Atlas provides values for measurements, otherwise some of the sets of fetched data points will contain only empty values. The default configured period is 20 minutes, which works across all measurements and gives a reasonable response payload size.
See signalfx-agent/pkg/monitors/mongodb/atlas/ for the monitor source.
To install this integration:
Deploy the Splunk Distribution of OpenTelemetry Collector to your host or container platform.
Configure the monitor, as described in the next section.
The Splunk Distribution of OpenTelemetry Collector allows embedding a Smart Agent monitor configuration in an associated Smart Agent Receiver instance.
Note: Providing a
mongodb-atlas monitor entry in your Smart Agent or Collector configuration is required for its use. Use the appropriate form for your agent type.
Smart Agent 🔗
To activate this monitor in the Smart Agent, add the following to your agent configuration:
monitors: # All monitor config goes under this key - type: mongodb-atlas ... # Additional config
See Smart Agent example configuration for an autogenerated example of a YAML configuration file, with default values where applicable.
Splunk Distribution of OpenTelemetry Collector 🔗
To activate this monitor in the Splunk Distribution of OpenTelemetry Collector, add the following to your agent configuration:
receivers: smartagent/mongodb-atlas: type: mongodb-atlas ... # Additional config
To complete the monitor activation, you must also include the
smartagent/mongodb-atlas receiver item in a
metrics pipeline. To do this, add the receiver item to the
receivers section of your configuration file.
See configuration examples for specific use cases that show how the collector can integrate and complement existing environments.
Configuration settings 🔗
The following table shows the configuration options for the
||ProjectID is the Atlas project ID|
||PublicKey is the Atlas public API key|
||PrivateKey is the Atlas private API key|
||Timeout for HTTP requests to get MongoDB process measurements from Atlas. This should be a duration string that is accepted by
||EnableCache enables locally cached Atlas metric measurements to be used when true. The metric measurements that were supposed to be fetched are in fact always fetched asynchronously and cached. (default:
||Granularity is the duration in ISO 8601 notation that specifies the interval between measurement data points from Atlas over the configured period. The default is shortest duration supported by Atlas of 1 minute. (default:
||Period the duration in ISO 8601 notation that specifies how far back in the past to retrieve measurements from Atlas. (default:
The following is an example
mongodb-atlas Smart Agent monitor configuration. This excerpt shows the minimum required fields. Note that
disableHostDimensions is set to
true so that the host name in which the agent/monitor is running is not used for the
host metric dimension value. The names of the MongoDB cluster hosts from which metrics emanate are used instead.
monitors: - type: mongodb-atlas projectID: <Project ID> publicKey: <Public API Key> privateKey: <Private API Key> disableHostDimensions: true
These are the metrics available for this integration.