Investigate changes in SERVER-128190: Add Process-Level Feature Usage Counters for Change Streams in MongoD

XMLWordPrintableJSON

    • Type: Investigation
    • Resolution: Won't Do
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Tools and Replicator

      Original Downstream Change Summary

      The metric `metrics.changeStreams.showExpandedEvents` has been renamed to `metrics.changeStreams.option.showExpandedEvents`

      Description of Linked Ticket

      We must have the following stage option usage counters at the process level (i.e., as part of the 'serverStatus' command response). For options that have a default value, we are not interested in counting the explicitly set default values. The default value counts can be inferred from the total number of change streams (i.e., "metrics.changeStreams.cursor.totalOpened").

      • "metrics.changeStreams.option.showExpandedEvents" (counter)
      • Available since v7.1.
      • Previous name: "metrics.changeStreams.showExpandedEvents"
      • We need to file a downstream DWH / TOOLS ticket to prevent unexpected usage.
      • "metrics.changeStreams.option.showMigrationEvents" (counter)
      • Counts the use of "showMigrationEvents" option of the $changeStream stage.
      • "metrics.changeStreams.option.showSystemEvents" (counter)
      • Counts the use of "showSystemEvents" option of the $changeStream stage.
      • "metrics.changeStreams.option.showRawUpdateDescription" (counter)
      • Counts the use of "showRawUpdateDescription" option of the $changeStream stage.
      • "metrics.changeStreams.option.ignoreRemovedShards" (counter)
      • "metrics.changeStreams.option.matchCollectionUUIDForUpdateLookup" (counter)
      • "metrics.changeStreams.option.startAfter" (counter)
      • "metrics.changeStreams.option.resumeAfter" (counter)
      • "metrics.changeStreams.option.startAtOperationTime" (counter)
      • "metrics.changeStreams.option.fullDocument.required" (counter)
      • "metrics.changeStreams.option.fullDocument.updateLookup" (counter)
      • "metrics.changeStreams.option.fullDocument.whenAvailable" (counter)
      • "metrics.changeStreams.option.fullDocumentBeforeChange.required" (counter)
      • "metrics.changeStreams.option.fullDocumentBeforeChange.whenAvailable" (counter)
      • "metrics.changeStreams.scope.cluster" (counter)
      • "metrics.changeStreams.scope.db"  (counter)
      • "metrics.changeStreams.scope.collection" (counter)

      We must have the following change stream cursor option metrics at the process level

      • "metrics.changeStreams.option.cursor.batchSize" (histogram)
      • Can be set on either of 'aggregate' or 'getMore' commands.
      • If not specified we don't count anything.
      • Buckets? Unspecified?
      • "metrics.changeStreams.option.cursor.maxAwaitTimeMS" (histogram)
      • Can be set on either of 'aggregate' or 'getMore' commands.
      • If not specified we don't count anything.
      • If specified and is equal to the current default 1000ms - count it anyways.

            Assignee:
            Unassigned
            Reporter:
            Backlog - Core Eng Program Management Team
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: