ExportXMLWordPrintableJSON

    • Type: New Feature
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Component/s: None
    • Needed
    • Hide

      Summary of necessary driver changes

      • When tracing is enabled, attach the command span's W3C traceparent to each command as a new OP_MSG Payload Type 3 (telemetry) section:
      { "otel": { "traceparent": "<55-char value>" } }
      

      so server spans join the driver's trace as children of the exact command/retry attempt.

      • Attach only when: tracing enabled + maxWireVersion >= 29 (MongoDB 9.0+), otherwise omit the section entirely.

      Note: The server-span prose tests (5–7) require the latest drivers-evergreen-tools orchestration (DRIVERS-3605, OTEL=1) to start mongod with OTel enabled and export OTEL_TRACE_DIR, without it the tests skip.

      Commits for syncing spec/prose tests

      Context for other referenced/linked tickets

      • DRIVERS-3605 OTEL=1 orchestration in drivers-evergreen-tools: configures the server's OTel file exporter and exports OTEL_TRACE_DIR; prerequisite for prose Tests 5–7 (needs a 9.0+ OTel-enabled mongod build).
      • SERVER-107128 / SPM-3868 server side: {OP_MSG}} trace-context ingestion and validation
      Show
      Summary of necessary driver changes When tracing is enabled, attach the command span's W3C traceparent to each command as a new OP_MSG Payload Type 3 (telemetry) section: { "otel" : { "traceparent" : "<55- char value>" } } so server spans join the driver's trace as children of the exact command/retry attempt. Attach only when: tracing enabled + maxWireVersion >= 29 (MongoDB 9.0+), otherwise omit the section entirely. Note : The server-span prose tests (5–7) require the latest drivers-evergreen-tools orchestration ( DRIVERS-3605 , OTEL=1) to start mongod with OTel enabled and export OTEL_TRACE_DIR , without it the tests skip. Commits for syncing spec/prose tests https://github.com/mongodb/specifications/commit/a9adc41b6eed59fd1197e852a2d8dccc4eaf16fb Java reference implementation https://github.com/mongodb/mongo-java-driver/pull/2022 Context for other referenced/linked tickets DRIVERS-3605 OTEL=1 orchestration in drivers-evergreen-tools: configures the server's OTel file exporter and exports OTEL_TRACE_DIR; prerequisite for prose Tests 5–7 (needs a 9.0+ OTel-enabled mongod build). SERVER-107128 / SPM-3868 server side: {OP_MSG}} trace-context ingestion and validation
    • $i18n.getText("admin.common.words.hide")
      Key Status/Resolution FixVersion
      CDRIVER-6345 Backlog
      CXX-3509 Backlog
      CSHARP-6063 Backlog
      GODRIVER-3938 Backlog
      JAVA-6222 In Code Review
      NODE-7602 Backlog
      PYTHON-5855 Blocked
      PHPLIB-1863 Backlog
      RUBY-3892 Ready for Work
      RUST-2439 Backlog
      $i18n.getText("admin.common.words.show")
      #scriptField, #scriptField *{ border: 1px solid black; } #scriptField{ border-collapse: collapse; } #scriptField td { text-align: center; /* Center-align text in table cells */ } #scriptField td.key { text-align: left; /* Left-align text in the Key column */ } #scriptField a { text-decoration: none; /* Remove underlines from links */ border: none; /* Remove border from links */ } /* Add green background color to cells with FixVersion */ #scriptField td.hasFixVersion { background-color: #00FF00; /* Green color code */ } #scriptField td.willNotDo { background-color: #FF0000; /* Red color code */ } /* Center-align the first row headers */ #scriptField th { text-align: center; } Key Status/Resolution FixVersion CDRIVER-6345 Backlog CXX-3509 Backlog CSHARP-6063 Backlog GODRIVER-3938 Backlog JAVA-6222 In Code Review NODE-7602 Backlog PYTHON-5855 Blocked PHPLIB-1863 Backlog RUBY-3892 Ready for Work RUST-2439 Backlog

      Summary

      DRIVERS-719 adds support for tracing within drivers but does not propagate the Open Telemetry (OTel) trace context to the server for end-to-end tracing. We should implement trace context propagation to have the full visibility into an operation's timeline.

      Motivation

      Who is the affected end user?

      Who are the stakeholders?

      How does this affect the end user?

      Are they blocked? Are they annoyed? Are they confused?

      How likely is it that this problem or use case will occur?

      Main path? Edge case?

      If the problem does occur, what are the consequences and how severe are they?

      Minor annoyance at a log message? Performance concern? Outage/unavailability? Failover can't complete?

      Is this issue urgent?

      Does this ticket have a required timeline? What is it?

      Is this ticket required by a downstream team?

      Needed by e.g. Atlas, Shell, Compass?

      Is this ticket only for tests?

      Does this ticket have any functional impact, or is it just test improvements?

      Acceptance Criteria

      What specific requirements must be met to consider the design phase complete?

      Channels & Docs

      Slack Channel

      PD

      Scope

      POC (server)

            Assignee:
            Nabil Hachicha
            Reporter:
            Didier Nadeau
            Nabil Hachicha Nabil Hachicha
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated: