Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

github.com/open-telemetry/opentelemetry-collector-contrib/receiver/mongodbreceiver

Package Overview
Dependencies
Alerts
File Explorer
Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

github.com/open-telemetry/opentelemetry-collector-contrib/receiver/mongodbreceiver

  • v0.112.0
  • Source
  • Go
  • Socket score

Version published
Created
Source

MongoDB Receiver

Status
Stabilitybeta: metrics
Distributionscontrib
IssuesOpen issues Closed issues
Code Owners@djaglowski, @schmikei | Seeking more code owners!

This receiver fetches stats from a MongoDB instance using the golang mongo driver. Stats are collected via MongoDB's dbStats and serverStatus commands.

Purpose

The purpose of this receiver is to allow users to monitor metrics from standalone MongoDB clusters. This includes non-Atlas managed MongoDB Servers.

Prerequisites

This receiver supports MongoDB versions:

  • 4.0+
  • 5.0
  • 6.0
  • 7.0

Mongodb recommends to set up a least privilege user (LPU) with a clusterMonitor role in order to collect metrics. Please refer to lpu.sh for an example of how to configure these permissions.

Configuration

The following settings are optional:

  • hosts (default: [localhost:27017]): list of host:port or unix domain socket endpoints.The transport option is no longer available.
    • For standalone MongoDB deployments this is the hostname and port of the mongod instance
    • For replica sets specify the hostnames and ports of the mongod instances that are in the replica set configuration. If the replica_set field is specified, nodes will be autodiscovered.
    • For a sharded MongoDB deployment, please specify a list of the mongos hosts.
  • username: If authentication is required, the user can with clusterMonitor permissions can be provided here.
  • password: If authentication is required, the password can be provided here.
  • collection_interval: (default = 1m): This receiver collects metrics on an interval. This value must be a string readable by Golang's time.ParseDuration. Valid time units are ns, us (or µs), ms, s, m, h.
  • initial_delay (default = 1s): defines how long this receiver waits before starting.
  • replica_set: If the deployment of MongoDB is a replica set then this allows users to specify the replica set name which allows for autodiscovery of other nodes in the replica set.
  • timeout: (default = 1m) The timeout of running commands against mongo.
  • tls: (defaults defined here): TLS control. By default insecure settings are rejected and certificate verification is on.
  • direct_connection: If true, then the driver will not try to autodiscover other nodes, and perform instead a direct connection o the host.

Example Configuration

receivers:
  mongodb:
    hosts:
      - endpoint: localhost:27017
    username: otel
    password: ${env:MONGODB_PASSWORD}
    collection_interval: 60s
    initial_delay: 1s
    tls:
      insecure: true
      insecure_skip_verify: true

The full list of settings exposed for this receiver are documented here with detailed sample configurations here.

Metrics

The following metric are available with versions:

  • mongodb.extent.count < 4.4 with mmapv1 storage engine

Details about the metrics produced by this receiver can be found in metadata.yaml

Feature gate configurations

See the Collector feature gates for an overview of feature gates in the collector.

STABLE: receiver.mongodb.removeDatabaseAttr

The feature gate receiver.mongodb.removeDatabaseAttr will remove the database name attribute from data points because it is already found on the resource. This feature gate cannot be changed and will be removed soon.

FAQs

Package last updated on 22 Oct 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc