opentelemetry-java-instrume.../instrumentation/mongo/mongo-3.1/library
Jay DeLuca 0cf2488555
Revert JvmTestSuite changes (#14550)
2025-08-31 13:25:26 +03:00
..
src fix(deps): update dependency io.opentelemetry.semconv:opentelemetry-semconv to v1.34.0 (#14015) 2025-06-12 10:30:55 +03:00
README.md Small library doc updates (#9868) 2023-11-14 14:33:05 -08:00
build.gradle.kts Revert JvmTestSuite changes (#14550) 2025-08-31 13:25:26 +03:00

README.md

MongoDB library instrumentation

This package contains the library to help instrument MongoDB Client.

Quickstart

Dependencies

Replace OPENTELEMETRY_VERSION with the latest release.

For Maven, add to your pom.xml dependencies:

<dependencies>
  <dependency>
    <groupId>io.opentelemetry.instrumentation</groupId>
    <artifactId>opentelemetry-mongo-3.1</artifactId>
    <version>OPENTELEMETRY_VERSION</version>
  </dependency>
</dependencies>

For Gradle, add to your dependencies:

implementation("io.opentelemetry.instrumentation:instrumentation:opentelemetry-mongo-3.1:OPENTELEMETRY_VERSION")

Usage

The instrumentation is initialized by passing a MongoTelemetry::newCommandListener() to the MongoClientSettings builder. You must set the OpenTelemetry to use with the feature.

OpenTelemetry openTelemetry = ...;

MongoTelemetry mongoTelemetry = MongoTelemetry.builder(openTelemetry).build();

MongoClientSettings settings = MongoClientSettings.builder()
    .applyConnectionString(ConnectionString("mongodb://localhost:27017"))
    .addCommandListener(mongoTelemetry.newCommandListener())
    .build();

// With Reactive Streams
MongoClient client = MongoClients.create(settings);