{
  "attributes": {
    "client.address": {
      "description": "Hostname or address of the client.",
      "type": "string"
    },
    "client.port": {
      "description": "TCP port used by the client.",
      "type": "int"
    },
    "collection": {
      "description": "The name of a collection.",
      "type": "string"
    },
    "connection_type": {
      "description": "The status of the connection.",
      "enum": [
        "active",
        "available",
        "current"
      ],
      "name_override": "type",
      "type": "string"
    },
    "db.collection.name": {
      "description": "The MongoDB collection being accessed within the database stated in db.namespace.",
      "type": "string"
    },
    "db.namespace": {
      "description": "The name of a database.",
      "type": "string"
    },
    "db.operation.name": {
      "description": "The name of the MongoDB command being executed (e.g. find, aggregate, insert).",
      "type": "string"
    },
    "db.query.text": {
      "description": "The obfuscated MongoDB command statement.",
      "type": "string"
    },
    "db.system.name": {
      "description": "The database management system (DBMS) product as identified by the client instrumentation.",
      "enum": [
        "mongodb"
      ],
      "type": "string"
    },
    "lock_mode": {
      "description": "The mode of Lock which denotes the degree of access",
      "enum": [
        "exclusive",
        "intent_exclusive",
        "intent_shared",
        "shared"
      ],
      "type": "string"
    },
    "lock_type": {
      "description": "The Resource over which the Lock controls access",
      "enum": [
        "collection",
        "database",
        "global",
        "metadata",
        "mutex",
        "oplog",
        "parallel_batch_write_mode",
        "replication_state_transition"
      ],
      "type": "string"
    },
    "memory_type": {
      "description": "The type of memory used.",
      "enum": [
        "resident",
        "virtual"
      ],
      "name_override": "type",
      "type": "string"
    },
    "mongodb.client.app.name": {
      "description": "The identifier of the client application which ran the operation, as set by the driver's `appName` connection option.",
      "type": "string"
    },
    "mongodb.cursor.await_data": {
      "description": "Whether the tailable cursor waits for new data instead of returning immediately.",
      "type": "bool"
    },
    "mongodb.cursor.id": {
      "description": "The identifier of the cursor.",
      "type": "string"
    },
    "mongodb.cursor.no_timeout": {
      "description": "Whether the cursor is configured not to time out when idle.",
      "type": "bool"
    },
    "mongodb.cursor.originating_command": {
      "description": "The obfuscated command that originally created the cursor.",
      "type": "string"
    },
    "mongodb.cursor.returned_batches": {
      "description": "The cumulative number of batches returned by the cursor.",
      "type": "int"
    },
    "mongodb.cursor.returned_documents": {
      "description": "The cumulative number of documents returned by the cursor.",
      "type": "int"
    },
    "mongodb.cursor.tailable": {
      "description": "Whether the cursor is a tailable cursor.",
      "type": "bool"
    },
    "mongodb.lsid.id": {
      "description": "The UUID portion of the logical session identifier associated with the MongoDB operation.",
      "type": "string"
    },
    "mongodb.operation.comment": {
      "description": "The comments attached to the MongoDB command. String comments are reported as-is; array comments are expanded into multiple entries; non-string values are reported as MongoDB Extended JSON.",
      "type": "slice"
    },
    "mongodb.operation.duration": {
      "description": "The duration of the MongoDB operation in seconds.",
      "type": "double"
    },
    "mongodb.operation.id": {
      "description": "Identifier of the MongoDB operation.",
      "type": "string"
    },
    "mongodb.operation.plan.summary": {
      "description": "Summary of the execution plan for the MongoDB operation.",
      "type": "string"
    },
    "mongodb.operation.prepared_read_conflict.count": {
      "description": "The number of times the MongoDB operation had to wait for a prepared transaction with a write to commit or abort.",
      "type": "int"
    },
    "mongodb.operation.state": {
      "description": "Simplified state of the MongoDB operation.",
      "enum": [
        "active",
        "waiting"
      ],
      "type": "string"
    },
    "mongodb.operation.type": {
      "description": "The raw MongoDB operation type from `$currentOp.op` (e.g. query, insert, update, remove, getmore, command).",
      "type": "string"
    },
    "mongodb.operation.wait.details": {
      "description": "Details about what the MongoDB operation is waiting on.",
      "type": "string"
    },
    "mongodb.operation.wait.type": {
      "description": "The set of wait conditions the MongoDB operation is currently blocked on. Possible values: `lock` (from `waitingForLock`), `flow_control` (from `waitingForFlowControl`), and `latch` (when `waitingForLatch` is a non-empty document). An empty slice indicates the operation is not waiting on any of these conditions.",
      "type": "slice"
    },
    "mongodb.operation.write_conflict.count": {
      "description": "The number of times the MongoDB operation conflicted with another write operation on the same document.",
      "type": "int"
    },
    "mongodb.operation.yield.count": {
      "description": "The number of times the MongoDB operation yielded to allow other operations to complete.",
      "type": "int"
    },
    "mongodb.query.framework": {
      "description": "The MongoDB query execution engine that processed this operation. Only present for operations that flow through the query subsystem (reads, read-modify-writes, and getMore continuations); absent for pure inserts, index management, and administrative commands. Known values include `classic` and `sbe`.",
      "type": "string"
    },
    "mongodb.query.truncated": {
      "description": "Whether the value carried by db.query.text is a truncated rendering of the MongoDB command, as indicated by `$truncated` in the currentOp output.",
      "type": "bool"
    },
    "operation": {
      "description": "The MongoDB operation being counted.",
      "enum": [
        "command",
        "delete",
        "getmore",
        "insert",
        "query",
        "update"
      ],
      "type": "string"
    },
    "operation_latency": {
      "description": "The MongoDB operation with regards to latency",
      "enum": [
        "command",
        "read",
        "write"
      ],
      "name_override": "operation",
      "type": "string"
    },
    "type": {
      "description": "The result of a cache request.",
      "enum": [
        "hit",
        "miss"
      ],
      "type": "string"
    },
    "user.name": {
      "description": "Name of the user associated with the operation.",
      "type": "string"
    }
  },
  "description": "This receiver fetches stats from a MongoDB instance using the [golang mongo driver](https://github.com/mongodb/mongo-go-driver). Stats are collected via MongoDB's `dbStats` and `serverStatus` commands.",
  "display_name": "MongoDB Receiver",
  "distribution": "contrib",
  "ecosystem": "collector",
  "id": "contrib-mongodbreceiver",
  "metrics": {
    "mongodb.active.reads": {
      "attributes": [],
      "description": "The number of read operations currently being processed.",
      "enabled": false,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "{reads}"
    },
    "mongodb.active.writes": {
      "attributes": [],
      "description": "The number of write operations currently being processed.",
      "enabled": false,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "{writes}"
    },
    "mongodb.cache.operations": {
      "attributes": [
        "type"
      ],
      "description": "The number of cache operations of the instance.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": true,
        "value_type": "int"
      },
      "unit": "{operations}"
    },
    "mongodb.collection.count": {
      "attributes": [
        "db.namespace"
      ],
      "description": "The number of collections.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "{collections}"
    },
    "mongodb.commands.rate": {
      "description": "The number of commands executed per second.",
      "enabled": false,
      "gauge": {
        "aggregation_temporality": "delta",
        "monotonic": false,
        "value_type": "double"
      },
      "stability": "development",
      "unit": "{command}/s"
    },
    "mongodb.connection.count": {
      "attributes": [
        "connection_type",
        "db.namespace"
      ],
      "description": "The number of connections.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "{connections}"
    },
    "mongodb.cursor.count": {
      "attributes": [],
      "description": "The number of open cursors maintained for clients.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "{cursors}"
    },
    "mongodb.cursor.timeout.count": {
      "attributes": [],
      "description": "The number of cursors that have timed out.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "{cursors}"
    },
    "mongodb.data.size": {
      "attributes": [
        "db.namespace"
      ],
      "description": "The size of the collection. Data compression does not affect this value.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "By"
    },
    "mongodb.database.count": {
      "attributes": [],
      "description": "The number of existing databases.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "{databases}"
    },
    "mongodb.deletes.rate": {
      "description": "The number of deletes executed per second.",
      "enabled": false,
      "gauge": {
        "aggregation_temporality": "delta",
        "monotonic": false,
        "value_type": "double"
      },
      "stability": "development",
      "unit": "{delete}/s"
    },
    "mongodb.document.operation.count": {
      "attributes": [
        "db.namespace",
        "operation"
      ],
      "description": "The number of document operations executed.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "{documents}"
    },
    "mongodb.extent.count": {
      "attributes": [
        "db.namespace"
      ],
      "description": "The number of extents.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "{extents}"
    },
    "mongodb.flushes.rate": {
      "description": "The number of flushes executed per second.",
      "enabled": false,
      "gauge": {
        "aggregation_temporality": "delta",
        "monotonic": false,
        "value_type": "double"
      },
      "stability": "development",
      "unit": "{flush}/s"
    },
    "mongodb.getmores.rate": {
      "description": "The number of getmores executed per second.",
      "enabled": false,
      "gauge": {
        "aggregation_temporality": "delta",
        "monotonic": false,
        "value_type": "double"
      },
      "stability": "development",
      "unit": "{getmore}/s"
    },
    "mongodb.global_lock.time": {
      "attributes": [],
      "description": "The time the global lock has been held.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": true,
        "value_type": "int"
      },
      "unit": "ms"
    },
    "mongodb.health": {
      "attributes": [],
      "description": "The health status of the server.",
      "enabled": false,
      "gauge": {
        "value_type": "int"
      },
      "stability": "development",
      "unit": "1"
    },
    "mongodb.index.access.count": {
      "attributes": [
        "collection",
        "db.namespace"
      ],
      "description": "The number of times an index has been accessed.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "{accesses}"
    },
    "mongodb.index.count": {
      "attributes": [
        "db.namespace"
      ],
      "description": "The number of indexes.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "{indexes}"
    },
    "mongodb.index.size": {
      "attributes": [
        "db.namespace"
      ],
      "description": "Sum of the space allocated to all indexes in the database, including free index space.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "By"
    },
    "mongodb.inserts.rate": {
      "description": "The number of insertions executed per second.",
      "enabled": false,
      "gauge": {
        "aggregation_temporality": "delta",
        "monotonic": false,
        "value_type": "double"
      },
      "stability": "development",
      "unit": "{insert}/s"
    },
    "mongodb.lock.acquire.count": {
      "attributes": [
        "db.namespace",
        "lock_mode",
        "lock_type"
      ],
      "description": "Number of times the lock was acquired in the specified mode.",
      "enabled": false,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": true,
        "value_type": "int"
      },
      "unit": "{count}"
    },
    "mongodb.lock.acquire.time": {
      "attributes": [
        "db.namespace",
        "lock_mode",
        "lock_type"
      ],
      "description": "Cumulative wait time for the lock acquisitions.",
      "enabled": false,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": true,
        "value_type": "int"
      },
      "unit": "microseconds"
    },
    "mongodb.lock.acquire.wait_count": {
      "attributes": [
        "db.namespace",
        "lock_mode",
        "lock_type"
      ],
      "description": "Number of times the lock acquisitions encountered waits because the locks were held in a conflicting mode.",
      "enabled": false,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": true,
        "value_type": "int"
      },
      "unit": "{count}"
    },
    "mongodb.lock.deadlock.count": {
      "attributes": [
        "db.namespace",
        "lock_mode",
        "lock_type"
      ],
      "description": "Number of times the lock acquisitions encountered deadlocks.",
      "enabled": false,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": true,
        "value_type": "int"
      },
      "unit": "{count}"
    },
    "mongodb.memory.usage": {
      "attributes": [
        "db.namespace",
        "memory_type"
      ],
      "description": "The amount of memory used.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "By"
    },
    "mongodb.network.io.receive": {
      "attributes": [],
      "description": "The number of bytes received.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "By"
    },
    "mongodb.network.io.transmit": {
      "attributes": [],
      "description": "The number of by transmitted.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "By"
    },
    "mongodb.network.request.count": {
      "attributes": [],
      "description": "The number of requests received by the server.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "{requests}"
    },
    "mongodb.object.count": {
      "attributes": [
        "db.namespace"
      ],
      "description": "The number of objects.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "{objects}"
    },
    "mongodb.operation.count": {
      "attributes": [
        "operation"
      ],
      "description": "The number of operations executed.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": true,
        "value_type": "int"
      },
      "unit": "{operations}"
    },
    "mongodb.operation.latency.time": {
      "attributes": [
        "operation_latency"
      ],
      "description": "The latency of operations.",
      "enabled": false,
      "gauge": {
        "value_type": "int"
      },
      "stability": "development",
      "unit": "us"
    },
    "mongodb.operation.repl.count": {
      "attributes": [
        "operation"
      ],
      "description": "The number of replicated operations executed.",
      "enabled": false,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": true,
        "value_type": "int"
      },
      "unit": "{operations}"
    },
    "mongodb.operation.time": {
      "attributes": [
        "operation"
      ],
      "description": "The total time spent performing operations.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": true,
        "value_type": "int"
      },
      "unit": "ms"
    },
    "mongodb.page_faults": {
      "attributes": [],
      "description": "The number of page faults.",
      "enabled": false,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": true,
        "value_type": "int"
      },
      "unit": "{faults}"
    },
    "mongodb.queries.rate": {
      "description": "The number of queries executed per second.",
      "enabled": false,
      "gauge": {
        "aggregation_temporality": "delta",
        "monotonic": false,
        "value_type": "double"
      },
      "stability": "development",
      "unit": "{query}/s"
    },
    "mongodb.repl_commands_per_sec": {
      "description": "The number of replicated commands executed per second.",
      "enabled": false,
      "gauge": {
        "aggregation_temporality": "delta",
        "monotonic": false,
        "value_type": "double"
      },
      "stability": "development",
      "unit": "{command}/s"
    },
    "mongodb.repl_deletes_per_sec": {
      "description": "The number of replicated deletes executed per second.",
      "enabled": false,
      "gauge": {
        "aggregation_temporality": "delta",
        "monotonic": false,
        "value_type": "double"
      },
      "stability": "development",
      "unit": "{delete}/s"
    },
    "mongodb.repl_getmores_per_sec": {
      "description": "The number of replicated getmores executed per second.",
      "enabled": false,
      "gauge": {
        "aggregation_temporality": "delta",
        "monotonic": false,
        "value_type": "double"
      },
      "stability": "development",
      "unit": "{getmore}/s"
    },
    "mongodb.repl_inserts_per_sec": {
      "description": "The number of replicated insertions executed per second.",
      "enabled": false,
      "gauge": {
        "aggregation_temporality": "delta",
        "monotonic": false,
        "value_type": "double"
      },
      "stability": "development",
      "unit": "{insert}/s"
    },
    "mongodb.repl_queries_per_sec": {
      "description": "The number of replicated queries executed per second.",
      "enabled": false,
      "gauge": {
        "aggregation_temporality": "delta",
        "monotonic": false,
        "value_type": "double"
      },
      "stability": "development",
      "unit": "{query}/s"
    },
    "mongodb.repl_updates_per_sec": {
      "description": "The number of replicated updates executed per second.",
      "enabled": false,
      "gauge": {
        "aggregation_temporality": "delta",
        "monotonic": false,
        "value_type": "double"
      },
      "stability": "development",
      "unit": "{update}/s"
    },
    "mongodb.session.count": {
      "attributes": [],
      "description": "The total number of active sessions.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": false,
        "value_type": "int"
      },
      "unit": "{sessions}"
    },
    "mongodb.storage.size": {
      "attributes": [
        "db.namespace"
      ],
      "description": "The total amount of storage allocated to this collection.",
      "enabled": true,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": true,
        "value_type": "int"
      },
      "unit": "By"
    },
    "mongodb.updates.rate": {
      "description": "The number of updates executed per second.",
      "enabled": false,
      "gauge": {
        "aggregation_temporality": "delta",
        "monotonic": false,
        "value_type": "double"
      },
      "stability": "development",
      "unit": "{update}/s"
    },
    "mongodb.uptime": {
      "attributes": [],
      "description": "The amount of time that the server has been running.",
      "enabled": false,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": true,
        "value_type": "int"
      },
      "unit": "ms"
    },
    "mongodb.wtcache.bytes.read": {
      "attributes": [],
      "description": "The number of bytes read into the WiredTiger cache.",
      "enabled": false,
      "stability": "development",
      "sum": {
        "aggregation_temporality": "cumulative",
        "monotonic": true,
        "value_type": "int"
      },
      "unit": "By"
    }
  },
  "name": "mongodbreceiver",
  "repository": "opentelemetry-collector-contrib",
  "status": {
    "class": "receiver",
    "codeowners": {
      "active": [
        "justinianvoss22",
        "dyl10s",
        "ishleenk17"
      ],
      "seeking_new": true
    },
    "distributions": [
      "contrib"
    ],
    "stability": {
      "beta": [
        "metrics"
      ],
      "development": [
        "logs"
      ]
    }
  },
  "type": "receiver"
}