- Reference >
- Database Commands >
- Diagnostic Commands >
- serverStatus
serverStatus¶
On this page
Definition¶
-
serverStatus
¶ The
serverStatus
command returns a document that provides an overview of the database’s state. Monitoring applications can run this command at a regular interval to collect statistics about the instance.
Syntax¶
The command has the following syntax:
The value (i.e. 1
above) does not affect the operation of the
command. The mongo
shell provides the
db.serverStatus()
wrapper for the command.
See also
Much of the output of serverStatus
is also displayed
dynamically by mongostat
. See the
mongostat command for more information.
Behavior¶
By default, serverStatus
excludes in its output:
- some content in the repl document.
- mirroredReads document. (Available starting in version 4.4)
To include fields that are excluded by default, specify the top-level
field and set it to 1
in the command. To exclude fields that are
included by default, specify the top-level field and set to 0
in
the command.
For example, the following operation suppresses the repl
,
metrics
and locks
information in the output.
The following example includes all repl information in the output:
Include mirroredReads
¶
By default, the mirroredReads
information (available
starting in version 4.4) is not included in the output. To return
mirroredReads
information, you must explicitly specify
the inclusion:
Include latchAnalysis
¶
By default, the latchAnalysis
information (available
starting in version 4.4) is not included in the output. To return
latchAnalysis
information, you must explicitly specify
the inclusion:
Output¶
Note
The output fields vary depending on the version of MongoDB,
underlying operating system platform, the storage engine, and the
kind of node, including mongos
, mongod
or
replica set member.
For the serverStatus
output specific to the version of
your MongoDB, refer to the appropriate version of the MongoDB Manual.
Instance Information¶
-
host
¶ The system’s hostname. In Unix/Linux systems, this should be the same as the output of the
hostname
command.
-
advisoryHostFQDNs
¶ New in version 3.2.
An array of the system’s fully qualified domain names (FQDNs).
-
version
¶ The MongoDB version of the current MongoDB process.
-
pid
¶ The process id number.
-
uptime
¶ The number of seconds that the current MongoDB process has been active.
-
uptimeMillis
¶ The number of milliseconds that the current MongoDB process has been active.
-
uptimeEstimate
¶ The uptime in seconds as calculated from MongoDB’s internal course-grained time keeping system.
-
localTime
¶ The ISODate representing the current time, according to the server, in UTC.
asserts¶
-
asserts
¶ A document that reports on the number of assertions raised since the MongoDB process started. While assert errors are typically uncommon, if there are non-zero values for the
asserts
, you should check the log file for more information. In many cases, these errors are trivial, but are worth investigating.
-
asserts.
regular
¶ The number of regular assertions raised since the MongoDB process started. Check the log file for more information about these messages.
-
asserts.
warning
¶ Changed in version 4.0.
Starting in MongoDB 4.0, the field returns zero
0
.In earlier versions, the field returns the number of warnings raised since the MongoDB process started.
-
asserts.
msg
¶ The number of message assertions raised since the MongoDB process started. Check the log file for more information about these messages.
-
asserts.
user
¶ The number of “user asserts” that have occurred since the last time the MongoDB process started. These are errors that user may generate, such as out of disk space or duplicate key. You can prevent these assertions by fixing a problem with your application or deployment. Check the MongoDB log for more information.
connections¶
-
connections
¶ A document that reports on the status of the connections. Use these values to assess the current load and capacity requirements of the server.
-
connections.
current
¶ The number of incoming connections from clients to the database server . This number includes the current shell session. Consider the value of
connections.available
to add more context to this datum.The value will include all incoming connections including any shell connections or connections from other servers, such as replica set members or
mongos
instances.
-
connections.
available
¶ The number of unused incoming connections available. Consider this value in combination with the value of
connections.current
to understand the connection load on the database, and the UNIX ulimit Settings document for more information about system thresholds on available connections.
-
connections.
totalCreated
¶ Count of all incoming connections created to the server. This number includes connections that have since closed.
-
connections.
active
¶ The number of active client connections to the server. Active client connections refers to client connections that currently have operations in progress.
New in version 4.0.7.
-
connections.
exhaustIsMaster
¶ The number of connections whose last request was an
isMaster
request with exhaustAllowed.New in version 4.4.
defaultRWConcern¶
Available starting in 4.4
The defaultRWConcern
section provides information on the local copy
of the global default read or write concern settings. The data may be
stale or out of date. See getDefaultRWConcern
for more
information.
-
defaultRWConcern
¶ The last known global default read or write concern settings.
New in version 4.4.
-
defaultRWConcern.
defaultReadConcern
¶ The last known global default read concern setting.
If
serverStatus
does not return this field, the global default read concern has either not been set or has not yet propagated to the instance.New in version 4.4.
-
defaultRWConcern.defaultReadConcern.
level
¶ The last known global default read concern level setting.
If
serverStatus
does not return this field, the global default for this setting has either not been set or has not yet propagated to the instance.New in version 4.4.
-
defaultRWConcern.
defaultWriteConcern
¶ The last known global default write concern setting.
If
serverStatus
does not return this field, the global default write concern has either not been set or has not yet propagated to the instance.New in version 4.4.
-
defaultRWConcern.defaultWriteConcern.
w
¶ The last known global default w setting.
If
serverStatus
does not return this field, the global default for this setting has either not been set or has not yet propagated to the instance.New in version 4.4.
-
defaultRWConcern.defaultWriteConcern.
wtimeout
¶ The last known global default wtimeout setting.
If
serverStatus
does not return this field, the global default for this setting has either not been set or has not yet propagated to the instance.New in version 4.4.
-
defaultRWConcern.
updateOpTime
¶ The timestamp when the instance last updated its copy of any global read or write concern settings. If the
defaultRWConcern.defaultReadConcern
anddefaultRWConcern.defaultWriteConcern
fields are absent, this field indicates the timestamp when the defaults were last unset.New in version 4.4.
-
defaultRWConcern.
updateWallClockTime
¶ The wall clock time when the instance last updated its copy of any global read or write concern settings. If the
defaultRWConcern.defaultReadConcern
anddefaultRWConcern.defaultWriteConcern
fields are absent, this field indicates the time when the defaults were last unset.New in version 4.4.
-
defaultRWConcern.
localUpdateWallClockTime
¶ The local system wall clock time when the instance last updated its copy of any global read or write concern setting. If this field is the only field under
defaultRWConcern
, the instance has never had knowledge of a global default read or write concern setting.New in version 4.4.
electionMetrics¶
Available starting in 4.2.1 (and 4.0.13)
The electionMetrics
section provides information on elections
called by this mongod
instance in a bid to become the
primary:
-
electionMetrics.
stepUpCmd
¶ Metrics on elections that were called by the
mongod
instance as part of anelection handoff
when the primary stepped down.The
stepUpCmd
includes both the number of elections called and the number of elections that succeeded.Available starting in 4.2.1 (and 4.0.13)
-
electionMetrics.
priorityTakeover
¶ Metrics on elections that were called by the
mongod
instance because itspriority
is higher than the primary’s.The
electionMetrics.priorityTakeover
includes both the number of elections called and the number of elections that succeeded.Available starting in 4.2.1 (and 4.0.13)
-
electionMetrics.
catchUpTakeover
¶ Metrics on elections called by the
mongod
instance because it is more-up-to-date than the primary.The
catchUpTakeover
includes both the number of elections called and the number of elections that succeeded.See also
Available starting in 4.2.1 (and 4.0.13)
-
electionMetrics.
electionTimeout
¶ Metrics on elections called by the
mongod
instance because it has not been able to reach the primary withinsettings.electionTimeoutMillis
.The
electionTimeout
includes both the number of elections called and the number of elections that succeeded.See also
Available starting in 4.2.1 (and 4.0.13)
-
electionMetrics.
freezeTimeout
¶ Metrics on elections called by the
mongod
instance after itsfreeze period
(during which the member cannot seek an election) has expired.The
electionMetrics.freezeTimeout
includes both the number of elections called and the number of elections that succeeded.Available starting in 4.2.1 (and 4.0.13)
-
electionMetrics.
numStepDownsCausedByHigherTerm
¶ Number of times the
mongod
instance stepped down because it saw a higher term (i.e. other member/members have participated in additional elections).Available starting in 4.2.1 (and 4.0.13)
-
electionMetrics.
numCatchUps
¶ Number of elections where the
mongod
instance as the newly-elected primary had to catch up to the highest known oplog entry.Available starting in 4.2.1 (and 4.0.13)
-
electionMetrics.
numCatchUpsSucceeded
¶ Number of times the
mongod
instance as the newly-elected primary successfully caught up to the highest known oplog entry.Available starting in 4.2.1 (and 4.0.13)
-
electionMetrics.
numCatchUpsAlreadyCaughtUp
¶ Number of times the
mongod
instance as the newly-elected primary concluded its catchup process because it was already caught up when electedAvailable starting in 4.2.1 (and 4.0.13)
-
electionMetrics.
numCatchUpsSkipped
¶ Number of times the
mongod
instance as the newly-elected primary skipped the catchup process.Available starting in 4.2.1 (and 4.0.13)
-
electionMetrics.
numCatchUpsTimedOut
¶ Number of times the
mongod
instance as the newly-elected primary concluded its catchup process because of thesettings.catchUpTimeoutMillis
limit.Available starting in 4.2.1 (and 4.0.13)
-
electionMetrics.
numCatchUpsFailedWithError
¶ Number of times the newly-elected primary’s catchup process failed with an error.
Available starting in 4.2.1 (and 4.0.13)
-
electionMetrics.
numCatchUpsFailedWithNewTerm
¶ Number of times the newly-elected primary’s catchup process concluded because another member(s) had a higher term (i.e. other member/members have participated in additional elections).
Available starting in 4.2.1 (and 4.0.13)
-
electionMetrics.
numCatchUpsFailedWithReplSetAbortPrimaryCatchUpCmd
¶ Number of times the newly-elected primary’s catchup process concluded because the
mongod
received thereplSetAbortPrimaryCatchUp
command.Available starting in 4.2.1 (and 4.0.13)
-
electionMetrics.
averageCatchUpOps
¶ Average number of operations applied during the newly-elected primary’s catchup processes.
Available starting in 4.2.1
extra_info¶
-
extra_info
¶ A document that provides additional information regarding the underlying system.
-
extra_info.
note
¶ A string with the text
"fields vary by platform."
-
extra_info.
heap_usage_bytes
¶ The total size in bytes of heap space used by the database process. Available on Unix/Linux systems only.
-
extra_info.
page_faults
¶ The total number of page faults. The
extra_info.page_faults
counter may increase dramatically during moments of poor performance and may correlate with limited memory environments and larger data sets. Limited and sporadic page faults do not necessarily indicate an issue.Windows draws a distinction between “hard” page faults involving disk I/O, and “soft” page faults that only require moving pages in memory. MongoDB counts both hard and soft page faults in this statistic.
flowControl¶
New in version 4.2.
-
flowControl
¶ A document that returns statistics on the Flow Control. With flow control enabled, as the
majority commit
point lag grows close to theflowControlTargetLagSeconds
, writes on the primary must obtain tickets before taking locks. As such, the metrics returned are meaningful when run on the primary.New in version 4.2.
-
flowControl.
enabled
¶ A boolean that indicates whether Flow Control is enabled(
true
) or disabled (false
).See also
enableFlowControl
.New in version 4.2.
-
flowControl.
targetRateLimit
¶ When run on the primary, the maximum number of tickets that can be acquired per second.
When run on a secondary, the returned number is a placeholder.
New in version 4.2.
-
flowControl.
timeAcquiringMicros
¶ When run on the primary, the total time write operations have waited to acquire a ticket.
When run on a secondary, the returned number is a placeholder.
New in version 4.2.
-
flowControl.
locksPerKiloOp
¶ Starting in MongoDB 4.4
locksPerKiloOp
replaceslocksPerOp
field.locksPerOp
field is available only on version 4.2.When run on the primary, an approximation of the number of locks taken per 1000 operations.
When run on a secondary, the returned number is a placeholder.
New in version 4.4.
-
flowControl.
locksPerOp
¶ Available on MongoDB 4.2 only
MongoDB 4.4 replaces
locksPerOp
withflowControl.locksPerKiloOp
.When run on the primary, an approximation of the number of locks taken per operation.
When run on a secondary, the returned number is a placeholder.
New in version 4.2.
-
flowControl.
sustainerRate
¶ When run on the primary, an approximation of operations applied per second by the secondary that is sustaining the commit point.
When run on a secondary, the returned number is a placeholder.
New in version 4.2.
-
flowControl.
isLagged
¶ When run on the primary, a boolean that indicates whether flow control has engaged. Flow control engages when the majority committed lag is greater than some percentage of the configured
flowControlTargetLagSeconds
.When run on a secondary, the returned boolean is a placeholder.
New in version 4.2.
-
flowControl.
isLaggedCount
¶ When run on a primary, the number of times flow control has engaged since the last restart. Flow control engages when the majority committed lag is greater than some percentage of the
flowControlTargetLagSeconds
.When run on a secondary, the returned number is a placeholder.
New in version 4.2.
-
flowControl.
isLaggedTimeMicros
¶ When run on the primary, the amount of time flow control has spent being engaged since the last restart. Flow control engages when the majority committed lag is greater than some percentage of the
flowControlTargetLagSeconds
.When run on a secondary, the returned number is a placeholder.
New in version 4.2.
freeMonitoring¶
-
freeMonitoring
¶ A document that reports on the free Cloud monitoring.
-
freeMonitoring.
state
¶ The enablement state of free monitoring. The values can be one of the following:
- “enabled”
- “disabled”
- “pending” if the enable free monitoring encountered a registeration error.
-
freeMonitoring.
retryIntervalSecs
¶ The frequency, in seconds, at which data is uploaded.
-
freeMonitoring.
lastRunTime
¶ The date and time of the last run of the metrics upload.
-
freeMonitoring.
registerErrors
¶ The number of registration errors, incremented on unexpected HTTP status or network errors.
-
freeMonitoring.
metricsErrors
¶ The number of errors encountered when uploading metrics.
globalLock¶
-
globalLock
¶ A document that reports on the database’s lock state.
Generally, the locks document provides more detailed data on lock uses.
-
globalLock.
totalTime
¶ The time, in microseconds, since the database last started and created the
globalLock
. This is roughly equivalent to total server uptime.
-
globalLock.
currentQueue
¶ A document that provides information concerning the number of operations queued because of a lock.
-
globalLock.currentQueue.
total
¶ The total number of operations queued waiting for the lock (i.e., the sum of
globalLock.currentQueue.readers
andglobalLock.currentQueue.writers
).A consistently small queue, particularly of shorter operations, should cause no concern. The
globalLock.activeClients
readers and writers information provides context for this data.
-
globalLock.currentQueue.
readers
¶ The number of operations that are currently queued and waiting for the read lock. A consistently small read-queue, particularly of shorter operations, should cause no concern.
-
globalLock.currentQueue.
writers
¶ The number of operations that are currently queued and waiting for the write lock. A consistently small write-queue, particularly of shorter operations, is no cause for concern.
-
globalLock.
activeClients
¶ A document that provides information about the number of connected clients and the read and write operations performed by these clients.
Use this data to provide context for the
globalLock.currentQueue
data.
-
globalLock.activeClients.
total
¶ The total number of internal client connections to the database including system threads as well as queued readers and writers. This metric will be higher than the total of
activeClients.readers
andactiveClients.writers
due to the inclusion of system threads.
-
globalLock.activeClients.
readers
¶ The number of the active client connections performing read operations.
-
globalLock.activeClients.
writers
¶ The number of active client connections performing write operations.
hedgingMetrics¶
New in version 4.4: For mongos
instances only.
-
hedgingMetrics
¶ Provides metrics on hedged reads for the
mongos
instance.New in version 4.4: For
mongos
instances only.
-
hedgingMetrics.
numTotalOperations
¶ The total number of the operations issued with the hedged read option enabled to this
mongos
instance.New in version 4.4: For
mongos
instances only.
-
hedgingMetrics.
numTotalHedgedOperations
¶ The number of all operations for which the
mongos
instance hedged the read operation; i.e. sent the operation to an additional member of each queried shard.New in version 4.4: For
mongos
instances only.
-
hedgingMetrics.
numAdvantageouslyHedgedOperations
¶ The total number of the operation where the additional read sent to hedge the read operation fulfilled the client request.
New in version 4.4: For
mongos
instances only.
latchAnalysis¶
New in version 4.4.
-
latchAnalysis
¶ A document that reports on metrics related to internal locking primitives (a.k.a. latches).
To return
latchAnalysis
information, you must explicitly specify the inclusion:The
latchAnalysis
returns for each latch the<latch name>
and the following associated metrics:Metric Description created
Number of times the latch was created. destroyed
Number of times the latch was destroyed. acquired
Number of times the latch was acquired. released
Number of times the latch was released. contended
Number of times the latch had contention. hierarchicalAcquisitionLevelViolations
Only returned if violations exist
onAcquire
Number of times the latch hierarchy (i.e. the latch level ordering) has been violated during latch acquisition. onRelease
Number of times the latch hierarchy (i.e. the latch level ordering) has been violated during latch release. New in version 4.4.
logicalSessionRecordCache¶
New in version 3.6.
-
logicalSessionRecordCache
¶ Provides metrics around the caching of server sessions.
-
logicalSessionRecordCache.
activeSessionsCount
¶ The number of all active local sessions cached in memory by the
mongod
ormongos
instance since the last refresh period.See also
$listLocalSessions
logicalSessionRefreshMillis
logicalSessionRefreshMinutes
-
logicalSessionRecordCache.
sessionsCollectionJobCount
¶ The number that tracks the number of times the refresh process has run on the
config.system.sessions
collection.See also
logicalSessionRefreshMinutes
-
logicalSessionRecordCache.
lastSessionsCollectionJobDurationMillis
¶ The length in milliseconds of the last refresh.
-
logicalSessionRecordCache.
lastSessionsCollectionJobTimestamp
¶ The time at which the last refresh occurred.
-
logicalSessionRecordCache.
lastSessionsCollectionJobEntriesRefreshed
¶ The number of sessions that were refreshed during the last refresh.
-
logicalSessionRecordCache.
lastSessionsCollectionJobEntriesEnded
¶ The number of sessions that ended during the last refresh.
-
logicalSessionRecordCache.
lastSessionsCollectionJobCursorsClosed
¶ The number of cursors that were closed during the last
config.system.sessions
collection refresh.
-
logicalSessionRecordCache.
transactionReaperJobCount
¶ The number that tracks the number of times the transaction record cleanup process has run on the
config.transactions
collection.
-
logicalSessionRecordCache.
lastTransactionReaperJobDurationMillis
¶ The length (in milliseconds) of the last transaction record cleanup.
-
logicalSessionRecordCache.
lastTransactionReaperJobTimestamp
¶ The time of the last transaction record cleanup.
-
logicalSessionRecordCache.
lastTransactionReaperJobEntriesCleanedUp
¶ The number of entries in the
config.transactions
collection that were deleted during the last transaction record cleanup.
-
logicalSessionRecordCache.
sessionCatalogSize
¶ - For a
mongod
instance, - The size of its in-memory cache of the config.transactions
entries. This corresponds to retryable writes
or transactions whose sessions have not expired within the
localLogicalSessionTimeoutMinutes
.
- For a
- For a
mongos
instance, - The number of the in-memory cache of its sessions that have had
transactions within the most recent
localLogicalSessionTimeoutMinutes
interval.
- For a
New in version 4.2.
locks¶
-
locks
¶ A document that reports for each lock
<type>
, data on lock<modes>
.The possible lock
<types>
are:Lock Type Description ParallelBatchWriterMode
Represents a lock for parallel batch writer mode.
In earlier versions, PBWM information was reported as part of the
Global
lock information.New in version 4.2.
ReplicationStateTransition
Represents lock taken for replica set member state transitions.
New in version 4.2.
Global
Represents global lock. Database
Represents database lock. Collection
Represents collection lock. Mutex
Represents mutex. Metadata
Represents metadata lock. oplog
Represents lock on the oplog. The possible
<modes>
are:Lock Mode Description R
Represents Shared (S) lock. W
Represents Exclusive (X) lock. r
Represents Intent Shared (IS) lock. w
Represents Intent Exclusive (IX) lock. All values are of the
NumberLong()
type.
-
locks.<type>.
acquireCount
¶ Number of times the lock was acquired in the specified mode.
-
locks.<type>.
acquireWaitCount
¶ Number of times the
locks.acquireCount
lock acquisitions encountered waits because the locks were held in a conflicting mode.
-
locks.<type>.
timeAcquiringMicros
¶ Cumulative wait time in microseconds for the lock acquisitions.
locks.timeAcquiringMicros
divided bylocks.acquireWaitCount
gives an approximate average wait time for the particular lock mode.
-
locks.<type>.
deadlockCount
¶ Number of times the lock acquisitions encountered deadlocks.
mirroredReads¶
Available on mongod only.
-
mirroredReads
¶ Available on mongod only.
A document that reports on mirrored reads. To return
mirroredReads
information, you must explicitly specify the inclusion:-
mirroredReads.
seen
¶ The number of operations that support mirroring received by this member.
See also
mirrorReads
ParameterNew in version 4.4.
-
mirroredReads.
sent
¶ The number of mirrored reads sent by this member when primary. For example, if a read is mirrored and sent to two secondaries, the number of mirrored reads is
2
.See also
mirrorReads
ParameterNew in version 4.4.
-
network¶
-
network
¶ A document that reports data on MongoDB’s network use.
-
network.
bytesIn
¶ The number of bytes that reflects the amount of network traffic received by this database. Use this value to ensure that network traffic sent to the
mongod
process is consistent with expectations and overall inter-application traffic.
-
network.
bytesOut
¶ The number of bytes that reflects the amount of network traffic sent from this database. Use this value to ensure that network traffic sent by the
mongod
process is consistent with expectations and overall inter-application traffic.
-
network.
numSlowDNSOperations
¶ New in version 4.4.
The total number of DNS resolution operations which took longer than 1 second.
-
network.
numSlowSSLOperations
¶ New in version 4.4.
The total number of SSL handshake operations which took longer than 1 second.
-
network.
numRequests
¶ The total number of distinct requests that the server has received. Use this value to provide context for the
network.bytesIn
andnetwork.bytesOut
values to ensure that MongoDB’s network utilization is consistent with expectations and application use.
-
network.
tcpFastOpen
¶ New in version 4.4.
A document that reports data on MongoDB’s support and use of TCP Fast Open (TFO) connections.
-
network.tcpFastOpen.
kernelSetting
¶ New in version 4.4.
Linux only
Returns the value of
/proc/sys/net/ipv4/tcp_fastopen
:0
- TCP Fast Open is disabled on the system.1
- TCP Fast Open is enabled for outgoing connections.2
- TCP Fast Open is enabled for incoming connections.3
- TCP Fast Open is enabled for incoming and outgoing connections.
-
network.tcpFastOpen.
serverSupported
¶ New in version 4.4.
- Returns
true
if the host operating system supports inbound TCP Fast Open (TFO) connections. - Returns
false
if the host operating system does not support inbound TCP Fast Open (TFO) connections.
- Returns
-
network.tcpFastOpen.
clientSupported
¶ New in version 4.4.
- Returns
true
if the host operating system supports outbound TCP Fast Open (TFO) connections. - Returns
false
if the host operating system does not support outbound TCP Fast Open (TFO) connections.
- Returns
opLatencies¶
Only for ``mongod`` instances
-
opLatencies
¶ A document containing operation latencies for the instance as a whole. See latencyStats Document for an description of this document.
Only
mongod
instances reportopLatencies
.
-
opLatencies.
reads
¶ Latency statistics for read requests.
-
opLatencies.
writes
¶ Latency statistics for write operations.
-
opLatencies.
commands
¶ Latency statistics for database commands.
opReadConcernCounters¶
New in version 4.0.6.
Only for mongod instances
-
opReadConcernCounters
¶ New in version 4.0.6.
A document that reports on the read concern level specified by query operations to the
mongod
instance since it last started.Specified w
Description "available"
Number of query operations that specified read concern level "available"
."linearizable"
Number of query operations that specified read concern level "linearizable"
."local"
Number of query operations that specified read concern level "local"
."majority"
Number of query operations that specified read concern level "majority"
."snapshot"
Number of query operations that specified read concern level "snapshot"
."none"
Number of query operations that did not specify a read concern level and instead used the default read concern level. The sum of the
opReadConcernCounters
equalsopcounters.query
.
opWriteConcernCounters¶
New in version 4.0.6.
Only for mongod instances
-
opWriteConcernCounters
¶ A document that reports on the write concerns specified by write operations to the
mongod
instance since it last started.More specifically, the
opWriteConcernCounters
reports on the w: <value> specified by the write operations. The journal flag option (j
) and the timeout option (wtimeout
) of the write concerns does not affect the count. The count is incremented even if the operation times out.Note
Only available when
reportOpWriteConcernCountersInServerStatus
parameter is set totrue
(false
by default).
-
opWriteConcernCounters.
insert
¶ New in version 4.0.6.
A document that reports on the w: <value> specified by insert operations to the
mongod
instance since it last started:Note
Only available when
reportOpWriteConcernCountersInServerStatus
parameter is set totrue
(false
by default).Description "wmajority"
Number of insert operations that specified w: "majority"
."wnum"
Number of insert operations that specified w: <num>
. The counts are grouped by the specific<num>
."wtag"
Number of insert operations that specified w: <tag>
. The counts are grouped by the specific<tag>
."none"
Number of insert operations that did not specify w
value. These operations use the defaultw
value of1
.The sum of the
opWriteConcernCounters.insert
equalsopcounters.insert
.
-
opWriteConcernCounters.
update
¶ New in version 4.0.6.
A document that reports on the w: <value> specified by update operations to the
mongod
instance since it last started:Note
Only available when
reportOpWriteConcernCountersInServerStatus
parameter is set totrue
(false
by default).Description "wmajority"
Number of update operations that specified w: "majority"
."wnum"
Number of update operations that specified w: <num>
. The counts are grouped by the specific<num>
."wtag"
Number of update operations that specified w: <tag>
. The counts are grouped by the specific<tag>
."none"
Number of update operations that did not specify w
value. These operations use the defaultw
value of1
.The sum of the
opWriteConcernCounters.update
equalsopcounters.update
.
-
opWriteConcernCounters.
delete
¶ New in version 4.0.6.
A document that reports on the w: <value> specified by delete operations to the
mongod
instance since it last started:Note
Only available when
reportOpWriteConcernCountersInServerStatus
parameter is set totrue
(false
by default).Description "wmajority"
Number of delete operations that specified w: "majority"
."wnum"
Number of delete operations that specified w: <num>
. The counts are grouped by the specific<num>
."wtag"
Number of delete operations that specified w: <tag>
. The counts are grouped by the specific<tag>
."none"
Number of delete operations that did not specify w
value. These operations use the defaultw
value of1
.The sum of the
opWriteConcernCounters.delete
equalsopcounters.delete
.
opcounters¶
Starting in MongoDB 4.2, the returned opcounters.* values are type NumberLong. In previous versions, the values are of type NumberInt.
-
opcounters
¶ A document that reports on database operations by type since the
mongod
instance last started.These numbers will grow over time until next restart. Analyze these values over time to track database utilization.
Note
The data in
opcounters
treats operations that affect multiple documents, such as bulk insert or multi-update operations, as a single operation. Seemetrics.document
for more granular document-level operation tracking.Additionally, these values reflect received operations, and increment even when operations are not successful.
-
opcounters.
insert
¶ The total number of insert operations received since the
mongod
instance last started.Starting in MongoDB 4.2, the returned opcounters.* values are type NumberLong. In previous versions, the values are of type NumberInt.
-
opcounters.
query
¶ The total number of queries received since the
mongod
instance last started.Starting in MongoDB 4.2, the returned opcounters.* values are type NumberLong. In previous versions, the values are of type NumberInt.
-
opcounters.
update
¶ The total number of update operations received since the
mongod
instance last started.Starting in MongoDB 4.2, the returned opcounters.* values are type NumberLong. In previous versions, the values are of type NumberInt.
-
opcounters.
delete
¶ The total number of delete operations since the
mongod
instance last started.Starting in MongoDB 4.2, the returned opcounters.* values are type NumberLong. In previous versions, the values are of type NumberInt.
-
opcounters.
getmore
¶ The total number of
getMore
operations since themongod
instance last started. This counter can be high even if the query count is low. Secondary nodes sendgetMore
operations as part of the replication process.Starting in MongoDB 4.2, the returned opcounters.* values are type NumberLong. In previous versions, the values are of type NumberInt.
-
opcounters.
command
¶ The total number of commands issued to the database since the
mongod
instance last started.opcounters.command
counts all commands except the write commands:insert
,update
, anddelete
.Starting in MongoDB 4.2, the returned opcounters.* values are type NumberLong. In previous versions, the values are of type NumberInt.
opcountersRepl¶
Starting in MongoDB 4.2, the returned opcountersRepl.* values are type NumberLong. In previous versions, the values are type NumberInt.
-
opcountersRepl
¶ A document that reports on database replication operations by type since the
mongod
instance last started.These values only appear when the current host is a member of a replica set.
These values will differ from the
opcounters
values because of how MongoDB serializes operations during replication. See Replication for more information on replication.These numbers will grow over time in response to database use until next restart. Analyze these values over time to track database utilization.
Starting in MongoDB 4.2, the returned opcountersRepl.* values are type NumberLong. In previous versions, the values are type NumberInt.
-
opcountersRepl.
insert
¶ The total number of replicated insert operations since the
mongod
instance last started.Starting in MongoDB 4.2, the returned opcountersRepl.* values are type NumberLong. In previous versions, the values are type NumberInt.
-
opcountersRepl.
query
¶ The total number of replicated queries since the
mongod
instance last started.Starting in MongoDB 4.2, the returned opcountersRepl.* values are type NumberLong. In previous versions, the values are type NumberInt.
-
opcountersRepl.
update
¶ The total number of replicated update operations since the
mongod
instance last started.Starting in MongoDB 4.2, the returned opcountersRepl.* values are type NumberLong. In previous versions, the values are type NumberInt.
-
opcountersRepl.
delete
¶ The total number of replicated delete operations since the
mongod
instance last started.Starting in MongoDB 4.2, the returned opcountersRepl.* values are type NumberLong. In previous versions, the values are type NumberInt.
-
opcountersRepl.
getmore
¶ The total number of
getMore
operations since themongod
instance last started. This counter can be high even if the query count is low. Secondary nodes sendgetMore
operations as part of the replication process.Starting in MongoDB 4.2, the returned opcountersRepl.* values are type NumberLong. In previous versions, the values are type NumberInt.
oplogTruncation¶
-
oplogTruncation
¶ A document that reports on oplog truncations.
The field only appears when the current instance is a member of a replica set and uses either the WiredTiger Storage Engine or In-Memory Storage Engine.
Changed in version 4.4: Also available in In-Memory Storage Engine.
New in version 4.2.1: Available in the WiredTiger Storage Engine.
-
oplogTruncation.
totalTimeProcessingMicros
¶ The total time taken, in microseconds, to scan or sample the oplog to determine the oplog truncation points.
totalTimeProcessingMicros
is only meaningful if themongod
instance started on existing data files (i.e. not meaningful for In-Memory Storage Engine).See
oplogTruncation.processingMethod
Changed in version 4.4: Also available in In-Memory Storage Engine.
New in version 4.2.1: Available in the WiredTiger Storage Engine.
-
oplogTruncation.
processingMethod
¶ The method used at start up to determine the oplog truncation points. The value can be either
"sampling"
or"scanning"
.processingMethod
is only meaningful if themongod
instance started on existing data files (i.e. not meaningful for In-Memory Storage Engine).Changed in version 4.4: Also available in In-Memory Storage Engine.
New in version 4.2.1: Available in the WiredTiger Storage Engine.
-
oplogTruncation.
minRetentionHours
¶ New in version 4.4: The minimum retention period for the oplog in hours. If the oplog has exceeded the oplog size, the
mongod
only truncates oplog entries older than the configured retention value.Only visible if the
mongod
is a member of a replica set and:The
mongod
was started with the--oplogMinRetentionHours
command line option or thestorage.oplogMinRetentionHours
configuration file option,or
The minimum retention period was configured after startup using
replSetResizeOplog
.
-
oplogTruncation.
totalTimeTruncatingMicros
¶ The cumulative time spent, in microseconds, performing oplog truncations.
Changed in version 4.4: Also available in In-Memory Storage Engine.
New in version 4.2.1: Available in the WiredTiger Storage Engine.
-
oplogTruncation.
truncateCount
¶ The cumulative number of oplog truncations.
Changed in version 4.4: Also available in In-Memory Storage Engine.
New in version 4.2.1: Available in the WiredTiger Storage Engine.
repl¶
-
repl
¶ A document that reports on the replica set configuration.
repl
only appear when the current host is a replica set. See Replication for more information on replication.
-
repl.
hosts
¶ An array of the current replica set members’ hostname and port information (
"host:port"
).
-
repl.
setName
¶ A string with the name of the current replica set. This value reflects the
--replSet
command line argument, orreplSetName
value in the configuration file.
-
repl.
secondary
¶ A boolean that indicates whether the current node is a secondary member of the replica set.
-
repl.
primary
¶ The hostname and port information (
"host:port"
) of the current primary member of the replica set.
-
repl.
me
¶ The hostname and port information (
"host:port"
) for the current member of the replica set.
-
repl.
rbid
¶ Rollback identifier. Used to determine if a rollback has happened for this
mongod
instance.
-
repl.
replicationProgress
¶ An array with one document for each member of the replica set that reports replication process to this member. Typically this is the primary, or secondaries if using chained replication.
To include this output, you must pass the
repl
option to theserverStatus
, as in the following:The content of the
repl.replicationProgress
section depends on the source of each member’s replication. This section supports internal operation and is for internal and diagnostic use only.
-
repl.replicationProgress[n].
rid
¶ An ObjectId used as an ID for the members of the replica set. For internal use only.
-
repl.replicationProgress[n].
optime
¶ Information regarding the last operation from the oplog that the member applied, as reported from this member.
-
repl.replicationProgress[n].
host
¶ The name of the host in
[hostname]:[port]
format for the member of the replica set.
-
repl.replicationProgress[n].
memberID
¶ The integer identifier for this member of the replica set.
security¶
-
security
¶ A document that reports on:
- The number of times a given authentication mechanism has been used
to authenticate against the
mongod
/mongos
instance. (New in MongoDB 4.4) - The
mongod
/mongos
instance’s TLS/SSL certificate. (Only appears formongod
/mongos
instance with support for TLS)
-
security.authentication.
mechanisms
¶ A document that reports on the number of times a given authentication mechanism has been used to authenticate against the
mongod
/mongos
instance. The values in the document distinguish standard authentication and speculative authentication. [1]New in version 4.4.
Note
The fields in the
mechanisms
document depend on the configuration of theauthenticationMechanisms
parameter. Themechanisms
document includes a field for each authentication mechanism supported by yourmongod
/mongos
instance.The following example shows the shape of the
mechanisms
document for a deployment that only supports x.509 authentication.
-
security.authentication.mechanisms.
MONGODB-X509
¶ A document that reports on the number of times x.509 has been used to authenticate against the
mongod
/mongos
instance.Includes total number of
x.509
authentication attempts and the subset of those attempts which were speculative. [1]New in version 4.4.
-
security.authentication.mechanisms.MONGODB-X509.speculativeAuthenticate.
received
¶ Number of speculative authentication attempts received using x.509. Includes both successful and failed speculative authentication attempts. [1]
New in version 4.4.
-
security.authentication.mechanisms.MONGODB-X509.speculativeAuthenticate.
successful
¶ Number of successful speculative authentication attempts received using x.509. [1]
New in version 4.4.
-
security.authentication.mechanisms.MONGODB-X509.authenticate.
received
¶ Number of successful and failed authentication attempts received using x.509. This value includes speculative authentication attempts received using x.509.
New in version 4.4.
-
security.authentication.mechanisms.MONGODB-X509.authenticate.
successful
¶ Number of successful authentication attempts received using x.509. This value includes successful speculative authentication attempts which used x.509.
New in version 4.4.
[1] (1, 2, 3, 4) Speculative authentication minimizes the number of network round trips during the authentication process to optimize performance. -
security.
SSLServerSubjectName
¶ The subject name associated with the
mongod
/mongos
instance’s TLS/SSL certificate.
-
security.
SSLServerHasCertificateAuthority
¶ A boolean that is:
- The number of times a given authentication mechanism has been used
to authenticate against the
sharding¶
New in version 3.2: When run on mongos
, the command returns sharding
information.
Changed in version 3.6: Starting in MongoDB 3.6, shard members return sharding information.
-
sharding
¶ A document with data regarding the sharded cluster. The
lastSeenConfigServerOpTime
is present only for amongos
or a shard member, not for a config server.
-
sharding.
configsvrConnectionString
¶ The connection string for the config servers.
-
sharding.
lastSeenConfigServerOpTime
¶ The latest optime of the CSRS primary that the mongos or the shard member has seen. The optime document includes:
ts
, the Timestamp of the operation.t
, theterm
in which the operation was originally generated on the primary.
The
lastSeenConfigServerOpTime
is present only if the sharded cluster uses CSRS.
-
sharding.
maxChunkSizeInBytes
¶ New in version 3.6.
The maximum size limit for a chunk. If the chunk size has been updated recently on the config server, the
maxChunkSizeInBytes
may not reflect the most recent value.
shardingStatistics¶
New in version 4.0.
- Shard
- mongos
When run on a member of a shard:
When run on a mongos
:
-
shardingStatistics
¶ A document which contains metrics on metadata refresh on sharded clusters.
-
shardingStatistics.
countStaleConfigErrors
¶ The total number of times that threads hit stale config exception. Since a stale config exception triggers a refresh of the metadata, this number is roughly proportional to the number of metadata refreshes.
Only present when run on a shard.
-
shardingStatistics.
countDonorMoveChunkStarted
¶ The total number of times that the
moveChunk
command has started on the shard, of which this node is a member, as part of a chunk migration process. This increasing number does not consider whether the chunk migrations succeed or not.Only present when run on a shard.
-
shardingStatistics.
totalDonorChunkCloneTimeMillis
¶ The cumulative time, in milliseconds, taken by the clone phase of the chunk migrations from this shard, of which this node is a member. Specifically, for each migration from this shard, the tracked time starts with the
moveChunk
command and ends before the destination shard enters a catch-up phase to apply changes that occurred during the chunk migrations.Only present when run on a shard.
-
shardingStatistics.
totalCriticalSectionCommitTimeMillis
¶ The cumulative time, in milliseconds, taken by the update metadata phase of the chunk migrations from this shard, of which this node is a member. During the update metadata phase, all operations on the collection are blocked.
Only present when run on a shard.
-
shardingStatistics.
totalCriticalSectionTimeMillis
¶ The cumulative time, in milliseconds, taken by the catch-up phase and the update metadata phase of the chunk migrations from this shard, of which this node is a member.
To calculate the duration of the catch-up phase, subtract
totalCriticalSectionCommitTimeMillis
fromtotalCriticalSectionTimeMillis
Only present when run on a shard.
-
shardingStatistics.
countDocsClonedOnRecipient
¶ Cumulative, always-increasing count of documents that have been cloned on this member where it acted as the primary of the recipient shard.
Only present when run on a shard.
New in version 4.2.
-
shardingStatistics.
countDocsClonedOnDonor
¶ Cumulative, always-increasing count of documents that haves been cloned on this member where it acted as the primary of the donor shard.
Only present when run on a shard.
New in version 4.2.
-
shardingStatistics.
countRecipientMoveChunkStarted
¶ Cumulative, always-increasing count of chunks this member, acting as the primary of the recipient shard, has started to receive (whether the move has succeeded or not.
Only present when run on a shard.
New in version 4.2.
-
shardingStatistics.
countDocsDeletedOnDonor
¶ Cumulative, always-increasing count of documents that have been deleted on this member during chunk migration where the member acted as the primary of the donor shard.
Only present when run on a shard.
New in version 4.2.
-
shardingStatistics.
countDonorMoveChunkLockTimeout
¶ Cumulative, always-increasing count of chunk migrations that were aborted due to lock acquisition timeouts, where the member acted as the primary of the donor shard.
Only present when run on a shard.
New in version 4.2.
-
shardingStatistics.
unfinishedMigrationFromPreviousPrimary
¶ The number of unfinished migrations left by the previous primary after an election. This value is only updated after the newly-elected
mongod
completes the transition to primary.Only present when run on a shard.
New in version 4.4.
-
shardingStatistics.
catalogCache
¶ A document with statistics about the cluster’s routing information cache.
-
shardingStatistics.catalogCache.
numDatabaseEntries
¶ The total number of database entries that are currently in the catalog cache.
-
shardingStatistics.catalogCache.
numCollectionEntries
¶ The total number of collection entries (across all databases) that are currently in the catalog cache.
-
shardingStatistics.catalogCache.
countStaleConfigErrors
¶ The total number of times that threads hit stale config exception. A stale config exception triggers a refresh of the metadata.
-
shardingStatistics.catalogCache.
totalRefreshWaitTimeMicros
¶ The cumulative time, in microseconds, that threads had to wait for a refresh of the metadata.
-
shardingStatistics.catalogCache.
numActiveIncrementalRefreshes
¶ The number of incremental catalog cache refreshes that are currently waiting to complete.
-
shardingStatistics.
countIncrementalRefreshesStarted
¶ The cumulative number of incremental refreshes that have started.
-
shardingStatistics.catalogCache.
numActiveFullRefreshes
¶ The number of full catalog cache refreshes that are currently waiting to complete.
-
shardingStatistics.catalogCache.
countFullRefreshesStarted
¶ The cumulative number of full refreshes that have started.
-
shardingStatistics.catalogCache.
countFailedRefreshes
¶ The cumulative number of full or incremental refreshes that have failed.
-
shardingStatistics.
rangeDeleterTasks
¶ The current total of the queued chunk range deletion tasks that are ready to run or are running as part of the chunk migration process.
Inspect the documents in the
config.rangeDeletions
collection for information about the chunk ranges pending deletion from a shard after a chunk migration.Only present when run on a shard member.
New in version 4.4.
-
shardingStatistics.catalogCache.
operationsBlockedByRefresh
¶ A document with statistics about operations blocked by catalog cache refresh activity on a
mongos
.Only present when run on a
mongos
.New in version 4.2.7.
-
shardingStatistics.catalogCache.operationsBlockedByRefresh.
countAllOperations
¶ The cumulative number of all operations ran on a
mongos
that were blocked at any point in their lifetime by a refresh of the catalog cache. This counter is the aggregate sum of all otheroperationsBlockedByRefresh
metrics tracked below.Only present when run on a
mongos
.New in version 4.2.7.
-
shardingStatistics.catalogCache.operationsBlockedByRefresh.
countInserts
¶ The cumulative number of insert operations ran on a
mongos
that were blocked at any point in their lifetime by a refresh of the catalog cache.Only present when run on a
mongos
.New in version 4.2.7.
-
shardingStatistics.catalogCache.operationsBlockedByRefresh.
countQueries
¶ The cumulative number of query operations ran on a
mongos
that were blocked at any point in their lifetime by a refresh of the catalog cache.Only present when run on a
mongos
.New in version 4.2.7.
-
shardingStatistics.catalogCache.operationsBlockedByRefresh.
countUpdates
¶ The cumulative number of update operations ran on a
mongos
that were blocked at any point in their lifetime by a refresh of the catalog cache.Only present when run on a
mongos
.New in version 4.2.7.
shardedIndexConsistency¶
-
shardedIndexConsistency
¶ Available only on config server instances.
A document that returns results of index consistency checks for sharded collections.
The returned metrics are meaningful only when run on the primary of the config server replica set for a version 4.4+ (and 4.2.6+) sharded cluster.
See also
enableShardedIndexConsistencyCheck
parametershardedIndexConsistencyCheckIntervalMS
parameter
New in version 4.4. (and 4.2.6)
-
shardedIndexConsistency.
numShardedCollectionsWithInconsistentIndexes
¶ Available only on config server instances.
Number of sharded collections whose indexes are inconsistent across the shards. A sharded collection has an inconsistent index if the collection does not have the exact same indexes (including the index options) on each shard that contains chunks for the collection.
To check if a sharded collection has inconsistent indexes, see Find Inconsistent Indexes across Shards.
The returned metrics are meaningful only when run on the primary of the config server replica set for a version 4.4+ (and 4.2.6+) sharded cluster.
See also
enableShardedIndexConsistencyCheck
parametershardedIndexConsistencyCheckIntervalMS
parameter
New in version 4.4. (and 4.2.6)
storageEngine¶
-
storageEngine
¶ A document with data about the current storage engine.
-
storageEngine.
name
¶ The name of the current storage engine.
-
storageEngine.
supportsCommittedReads
¶ New in version 3.2.
A boolean that indicates whether the storage engine supports
"majority"
read concern.
-
storageEngine.
persistent
¶ New in version 3.2.6.
A boolean that indicates whether the storage engine does or does not persist data to disk.
transactions¶
- mongod
- mongos
New in version 3.6.3.
New in version 4.2.
-
transactions
¶ Available on mongod in 3.6.3+ and on mongos in 4.2+.
When run on a
mongod
, a document with data about the retryable writes and transactions.When run on a
mongos
, a document with data about the transactions run on the instance.
-
transactions.
retriedCommandsCount
¶ Available on mongod only.
The total number of retry attempts that have been received after the corresponding retryable write command has already been committed. That is, a retryable write is attempted even though the write has previously succeeded and has an associated record for the transaction and session in the
config.transactions
collection, such as when the initial write response to the client is lost.Note
MongoDB does not re-execute the committed writes.
The total is across all sessions.
The total does not include any retryable writes that may happen internally as part of a chunk migration.
New in version 3.6.3.
-
transactions.
retriedStatementsCount
¶ Available on mongod only.
The total number of write statements associated with the retried commands in
transactions.retriedCommandsCount
.Note
MongoDB does not re-execute the committed writes.
The total does not include any retryable writes that may happen internally as part of a chunk migration.
New in version 3.6.3.
-
transactions.
transactionsCollectionWriteCount
¶ Available on mongod only.
The total number of writes to the
config.transactions
collection, triggered when a new retryable write statement is committed.For update and delete commands, since only single document operations are retryable, there is one write per statement.
For insert operations, there is one write per batch of documents inserted, except when a failure leads to each document being inserted separately.
The total includes writes to a server’s
config.transactions
collection that occur as part of a migration.New in version 3.6.3.
-
transactions.
currentActive
¶ Available on mongod in 4.0.2+ and mongos in 4.2.1+
The total number of open transactions currently executing a command.
-
transactions.
currentInactive
¶ Available on mongod in 4.0.2+ and mongos in 4.2.1+
The total number of open transactions that are not currently executing a command.
-
transactions.
currentOpen
¶ Available on mongod in 4.0.2+ and mongos in 4.2.1+
The total number of open transactions. A transaction is opened when the first command is run as a part of that transaction, and stays open until the transaction either commits or aborts.
-
transactions.
totalAborted
¶ Available on mongod in 4.0.2+ and mongos in 4.2+.
For the
mongod
, the total number of transactions aborted on this instance since its last startup.For the
mongos
, the total number of transactions aborted through this instance since its last startup.
-
transactions.
totalCommitted
¶ Available on mongod in 4.0.2+ and mongos in 4.2+.
For the
mongod
, the total number of transactions committed on the instance since its last startup.For the
mongos
,the total number of transactions committed through this instance since its last startup.
-
transactions.
totalStarted
¶ Available on mongod in 4.0.2+ and mongos in 4.2+.
For the
mongod
, the total number of transactions started on this instance since its last startup.For the
mongos
, the total number of transactions started on this instance since its last startup.
-
transactions.
abortCause
¶ Available on mongos only.
Breakdown of the
transactions.totalAborted
by cause. If a client issues an explicitabortTransaction
, the cause is listed asabort
.For example:
New in version 4.2.
-
transactions.
totalContactedParticipants
¶ Available on mongos only.
The total number of shards contacted for all transactions started through this
mongos
since its last startup.The number of shards contacted during the transaction processes can include those shards that may not be included as part of the commit.
New in version 4.2.
-
transactions.
totalParticipantsAtCommit
¶ Available on mongos only.
Total number of shards involved in the commit for all transactions started through this
mongos
since its last startup.New in version 4.2.
-
transactions.
totalRequestsTargeted
¶ Available on mongos only.
Total number of network requests targeted by the
mongos
as part of its transactions.New in version 4.2.
-
transactions.
commitTypes
¶ Available on mongos only.
Breakdown of the commits by types. For example:
The types of commit are:
Type Description noShards
Commits of transactions that did not contact any shards. singleShard
Commits of transactions that affected a single shard. singleWriteShard
Commits of transactions that contacted multiple shards but whose write operations only affected a single shard. readOnly
Commits of transactions that only involved read operations. twoPhaseCommit
Commits of transactions that included writes to multiple shards recoverWithToken
Commits that recovered the outcome of transactions from another instance or after this instance was restarted. For each commit type, the command returns the following metrics:
Metrics Description initiated
Total number of times that commits of this type were initiated. successful
Total number of times that commits of this type succeeded. successfulDurationMicros
Total time, in microseconds, taken by successful commits of this type. New in version 4.2.
-
transactions.
totalPrepared
¶ Available on mongod only.
The total number of transactions in prepared state on this server since the
mongod
process’s last startup.New in version 4.2.
-
transactions.
totalPreparedThenCommitted
¶ Available on mongod only.
The total number of transactions that were prepared and committed on this server since the
mongod
process’s last startup.New in version 4.2.
-
transactions.
totalPreparedThenAborted
¶ Available on mongod only.
The total number of transactions that were prepared and aborted on this server since the
mongod
process’s last startup.New in version 4.2.
-
transactions.
currentPrepared
¶ Available on mongod only.
The current number of transactions in prepared state on this server.
New in version 4.2.
-
transactions.
lastCommittedTransaction
¶ Available on mongod only.
The details of the last transaction committed when the
mongod
is primary.When returned from a secondary,
lastCommittedTransaction
returns the details of the last transaction committed when that secondary was a primary.Metrics Description operationCount
The number of write operations in the transaction. oplogOperationBytes
The size of the corresponding oplog entry or entries for the transaction. [2] writeConcern
The write concern used for the transaction. New in version 4.2.2: (Also available in 4.0.9)
[2] | Starting in version 4.2, MongoDB creates as many oplog entries as necessary to the encapsulate all write operations in a transaction whereas in version 4.0, the write operations in a transaction must fit within a single oplog entry. See Oplog Size Limit for details. |
transportSecurity¶
New in version 4.0.2: (Also available in 3.6.7+ and 3.4.17+)
wiredTiger¶
wiredTiger
information only appears if using the WiredTiger storage engine. Some of the statistics roll up for the server.
Note
The following is not an exhaustive list.
-
wiredTiger.
uri
¶ A string. For internal use by MongoDB.
-
wiredTiger.
async
¶ A document that returns statistics related to the asynchronous operations API. This is unused by MongoDB.
-
wiredTiger.
block-manager
¶ A document that returns statistics on the block manager operations.
-
wiredTiger.
cache
¶ A document that returns statistics on the cache and page evictions from the cache.
The following describes some of the key
wiredTiger.cache
statistics:-
wiredTiger.cache.
maximum bytes configured
¶ Maximum cache size.
-
wiredTiger.cache.
bytes currently in the cache
¶ Size in byte of the data currently in cache. This value should not be greater than the
maximum bytes configured
value.
-
wiredTiger.cache.
unmodified pages evicted
¶ Main statistics for page eviction.
-
wiredTiger.cache.
tracked dirty bytes in the cache
¶ Size in bytes of the dirty data in the cache. This value should be less than the
bytes currently in the cache
value.
-
wiredTiger.cache.
pages read into cache
¶ Number of pages read into the cache.
wiredTiger.cache.pages read into cache
with thewiredTiger.cache.pages written from cache
can provide an overview of the I/O activity.
-
wiredTiger.cache.
pages written from cache
¶ Number of pages written from the cache.
wiredTiger.cache.pages written from cache
with thewiredTiger.cache.pages read into cache
can provide an overview of the I/O activity.
To adjust the size of the WiredTiger internal cache, see
storage.wiredTiger.engineConfig.cacheSizeGB
and--wiredTigerCacheSizeGB
. Avoid increasing the WiredTiger internal cache size above its default value.-
-
wiredTiger.
connection
¶ A document that returns statistics related to WiredTiger connections.
-
wiredTiger.
cursor
¶ A document that returns statistics on WiredTiger cursor.
-
wiredTiger.
data-handle
¶ A document that returns statistics on the data handles and sweeps.
-
wiredTiger.
log
¶ A document that returns statistics on WiredTiger’s write ahead log (i.e. the journal).
-
wiredTiger.
reconciliation
¶ A document that returns statistics on the reconciliation process.
-
wiredTiger.
session
¶ A document that returns the open cursor count and open session count for the session.
-
wiredTiger.
thread-yield
¶ A document that returns statistics on yields during page acquisitions.
-
wiredTiger.
transaction
¶ A document that returns statistics on transaction checkpoints and operations.
-
wiredTiger.transaction.
transaction checkpoint most recent time
¶ Amount of time, in milliseconds, to create the most recent checkpoint. An increase in this value under stead write load may indicate saturation on the I/O subsystem.
-
-
wiredTiger.
concurrentTransactions
¶ A document that returns information on the number of concurrent of read and write transactions allowed into the WiredTiger storage engine. These settings are MongoDB-specific.
To change the settings for concurrent reads and write transactions, see
wiredTigerConcurrentReadTransactions
andwiredTigerConcurrentWriteTransactions
.
writeBacksQueued¶
-
writeBacksQueued
¶ A boolean that indicates whether there are operations from a
mongos
instance queued for retrying. Typically, this value is false. See also writeBacks.
mem¶
-
mem.
bits
¶ A number, either
64
or32
, that indicates whether the MongoDB instance is compiled for 64-bit or 32-bit architecture.
-
mem.
resident
¶ The value of
mem.resident
is roughly equivalent to the amount of RAM, in mebibyte (MiB), currently used by the database process. During normal use, this value tends to grow. In dedicated database servers, this number tends to approach the total amount of system memory.
-
mem.
virtual
¶ mem.virtual
displays the quantity, in mebibyte (MiB), of virtual memory used by themongod
process.
-
mem.
supported
¶ A boolean that indicates whether the underlying system supports extended memory information. If this value is false and the system does not support extended memory information, then other
mem
values may not be accessible to the database server.
-
mem.
note
¶ The field
mem.note
appears ifmem.supported
is false.The
mem.note
field contains the text:"not all mem info support on this platform"
.
metrics¶
-
metrics
¶ A document that returns various statistics that reflect the current use and state of a running
mongod
instance.
-
metrics.
aggStageCounters
¶ A document that reports on the use of aggregation pipeline stages. The fields in
metrics.aggStageCounters
are the names of aggregation pipeline stages. For each pipeline stage,serverStatus
reports the number of times that stage has been executed.New in version 4.4 (4.2.6 and 4.0.19).
-
metrics.
commands
¶ A document that reports on the use of database commands. The fields in
metrics.commands
are the names of database commands. For each command, theserverStatus
reports the total number of executions and the number of failed executions.Starting in MongoDB 4.0.13 and 4.2.1,
metrics.commands
includereplSetStepDownWithForce
(i.e. thereplSetStepDown
command withforce: true
) as well as the overallreplSetStepDown
. In earlier versions, the command reported only overallreplSetStepDown
metrics.
-
metrics.
document
¶ A document that reflects document access and modification patterns. Compare these values to the data in the
opcounters
document, which track total number of operations.
-
metrics.document.
deleted
¶ The total number of documents deleted.
-
metrics.document.
inserted
¶ The total number of documents inserted.
-
metrics.document.
returned
¶ The total number of documents returned by queries.
-
metrics.document.
updated
¶ The total number of documents updated.
-
metrics.
executor
¶ New in version 3.2.
A document that reports on various statistics for the replication executor.
-
metrics.
getLastError
¶ A document that reports on
getLastError
use.
-
metrics.getLastError.
wtime
¶ A document that reports
getLastError
operation counts with aw
argument greater than1
.
-
metrics.getLastError.wtime.
num
¶ The total number of
getLastError
operations with a specified write concern (i.e.w
) that wait for one or more members of a replica set to acknowledge the write operation (i.e. aw
value greater than1
.)
-
metrics.getLastError.wtime.
totalMillis
¶ The total amount of time in milliseconds that the
mongod
has spent performinggetLastError
operations with write concern (i.e.w
) that wait for one or more members of a replica set to acknowledge the write operation (i.e. aw
value greater than1
.)
-
metrics.getLastError.
wtimeouts
¶ The number of times that write concern operations have timed out as a result of the
wtimeout
threshold togetLastError
. This number increments for both default and non-default write concern specifications.
-
metrics.getLastError.
default
¶ A document that reports on the use of
getLastError
specific to operations where a default write concern was used (meaning, a non-clientSupplied
write concern). The possible origins of a default write concern are:implicitDefault
customDefault
getLastErrorDefaults
Refer to the following table for information on each possible write concern origin, or
provenance
:Provenance Description clientSupplied
The write concern was specified in the application. customDefault
The write concern originated from a custom defined default value. See setDefaultRWConcern
.getLastErrorDefaults
The write concern originated from the replica set’s settings.getLastErrorDefaults
field.implicitDefault
The write concern originated from the server in absence of all other write concern specifications.
-
metrics.getLastError.default.
unsatisfiable
¶ Number of times that a non-
clientSupplied
write concern returned theUnsatisfiableWriteConcern
error code.
-
metrics.getLastError.default.
wtimeouts
¶ Number of times a non-
clientSupplied
write concern timed out.
-
metrics.
operation
¶ A document that holds counters for several types of update and query operations that MongoDB handles using special operation types.
-
metrics.operation.
scanAndOrder
¶ The total number of queries that return sorted numbers that cannot perform the sort operation using an index.
-
metrics.operation.
writeConflicts
¶ The total number of queries that encountered write conflicts.
-
metrics.
queryExecutor
¶ A document that reports data from the query execution system.
-
metrics.queryExecutor.
scanned
¶ The total number of index items scanned during queries and query-plan evaluation. This counter is the same as
totalKeysExamined
in the output ofexplain()
.
-
metrics.queryExecutor.
scannedObjects
¶ The total number of documents scanned during queries and query-plan evaluation. This counter is the same as
totalDocsExamined
in the output ofexplain()
.
-
metrics.queryExecutor.
collectionScans
¶ A document that reports on the number of queries that performed a collection scan.
New in version 4.4.
-
metrics.queryExecutor.collectionScans.
nonTailable
¶ The number of queries that performed a collection scan that did not use a tailable cursor.
New in version 4.4.
-
metrics.queryExecutor.collectionScans.
total
¶ The total number queries that performed a collection scan. The total consists of queries that did and did not use a tailable cursor.
New in version 4.4.
-
metrics.
record
¶ A document that reports on data related to record allocation in the on-disk memory files.
-
metrics.
repl
¶ A document that reports metrics related to the replication process.
metrics.repl
document appears on allmongod
instances, even those that aren’t members of replica sets.
-
metrics.repl.
apply
¶ A document that reports on the application of operations from the replication oplog.
-
metrics.repl.apply.
batchSize
¶ New in version 4.0.6: (Also available in 3.6.11+)
The total number of oplog operations applied. The
metrics.repl.apply.batchSize
is incremented with the number of operations in a batch at the batch boundaries instead of being incremented by one after each operation.For finer granularity, see
metrics.repl.apply.ops
.
-
metrics.repl.apply.
batches
¶ metrics.repl.apply.batches
reports on the oplog application process on secondaries members of replica sets. See Multithreaded Replication for more information on the oplog application processes
-
metrics.repl.apply.batches.
num
¶ The total number of batches applied across all databases.
-
metrics.repl.apply.batches.
totalMillis
¶ The total amount of time in milliseconds the
mongod
has spent applying operations from the oplog.
-
metrics.repl.apply.
ops
¶ The total number of oplog operations applied.
metrics.repl.apply.ops
is incremented after each operation.See also
-
metrics.repl.
buffer
¶ MongoDB buffers oplog operations from the replication sync source buffer before applying oplog entries in a batch.
metrics.repl.buffer
provides a way to track the oplog buffer. See Multithreaded Replication for more information on the oplog application process.
-
metrics.repl.buffer.
count
¶ The current number of operations in the oplog buffer.
-
metrics.repl.buffer.
maxSizeBytes
¶ The maximum size of the buffer. This value is a constant setting in the
mongod
, and is not configurable.
-
metrics.repl.buffer.
sizeBytes
¶ The current size of the contents of the oplog buffer.
-
metrics.repl.
network
¶ metrics.repl.network
reports network use by the replication process.
-
metrics.repl.network.
bytes
¶ metrics.repl.network.bytes
reports the total amount of data read from the replication sync source.
-
metrics.repl.network.
getmores
¶ metrics.repl.network.getmores
reports on thegetmore
operations, which are requests for additional results from the oplog cursor as part of the oplog replication process.
-
metrics.repl.network.getmores.
num
¶ metrics.repl.network.getmores.num
reports the total number ofgetmore
operations, which are operations that request an additional set of operations from the replication sync source.
-
metrics.repl.network.getmores.
totalMillis
¶ metrics.repl.network.getmores.totalMillis
reports the total amount of time required to collect data fromgetmore
operations.Note
This number can be quite large, as MongoDB will wait for more data even if the
getmore
operation does not initial return data.
-
metrics.repl.network.getmores.
numEmptyBatches
¶ The number of empty
oplog
batches a secondary receives from its sync source. A secondary receives an empty batch if it is fully synced with its source and either:- The
getmore
times out waiting for more data, or - The sync source’s majority commit point has advanced since the last batch sent to this secondary.
For a primary, if the instance was previously a secondary, the number reports on the empty batches received when it was a secondary. Otherwise, for a primary, this number is
0
.New in version 4.4.
- The
-
metrics.repl.network.
notMasterLegacyUnacknowledgedWrites
¶ The number of unacknowledged (
w: 0
) legacy write operations (see Request Opcodes) that failed because the currentmongod
is not inPRIMARY
state.New in version 4.2.
-
metrics.repl.network.
notMasterUnacknowledgedWrites
¶ The number of unacknowledged (
w: 0
) write operations that failed because the currentmongod
is not inPRIMARY
state.New in version 4.2.
-
metrics.repl.network.
oplogGetMoresProcessed
¶ A document that reports the number of
getMore
commands to fetch the oplog that a node processed as a sync source.New in version 4.4.
-
metrics.repl.network.oplogGetMoresProcessed.
num
¶ The number of
getMore
commands to fetch the oplog that a node processed as a sync source.New in version 4.4.
-
metrics.repl.network.oplogGetMoresProcessed.
totalMillis
¶ The time, in milliseconds, that a node spent processing the
getMore
commands counted inmetrics.repl.network.oplogGetMoresProcessed.num
.New in version 4.4.
-
metrics.repl.network.
ops
¶ The total number of operations read from the replication source.
-
metrics.repl.network.
readersCreated
¶ The total number of oplog query processes created. MongoDB will create a new oplog query any time an error occurs in the connection, including a timeout, or a network operation. Furthermore,
metrics.repl.network.readersCreated
will increment every time MongoDB selects a new source for replication.
-
metrics.repl.network.
replSetUpdatePosition
¶ A document that reports the number of
replSetUpdatePosition
commands a node sent to its sync source.New in version 4.4.
-
metrics.repl.network.replSetUpdatePosition.
num
¶ The number of
replSetUpdatePosition
commands a node sent to its sync source.replSetUpdatePosition
commands are internal replication commands that communicate replication progress from nodes to their sync sources.New in version 4.4.
Note
Replica set members in the
STARTUP2
state do not send thereplSetUpdatePosition
command to their sync source.
-
metrics.repl.
stepDown
¶ Information on user operations that were running when the
mongod
stepped down.New in version 4.2.
-
metrics.repl.stepDown.
userOperationsKilled
¶ The number of user operations killed when the
mongod
stepped down.New in version 4.2.
-
metrics.repl.stepDown.
userOperationsRunning
¶ The number of user operations that remained running when the
mongod
stepped down.New in version 4.2.
-
metrics.repl.
syncSource
¶ Information on a replica set node’s sync source selection process.
New in version 4.4.
-
metrics.repl.syncSource.
numSelections
¶ Number of times a node attempted to choose a node to sync from among the available sync source options. A node attempts to choose a node to sync from if, for example, the sync source is re-evaluated or the node receives an error from its current sync source.
New in version 4.4.
-
metrics.repl.syncSource.
numTimesChoseSame
¶ Number of times a node kept its original sync source after re-evaluating if its current sync source was optimal.
New in version 4.4.
-
metrics.repl.syncSource.
numTimesChoseDifferent
¶ Number of times a node chose a new sync source after re-evaluating if its current sync source was optimal.
New in version 4.4.
-
metrics.repl.syncSource.
numTimesCouldNotFind
¶ Number of times a node could not find an available sync source when attempting to choose a node to sync from.
New in version 4.4.
-
metrics.storage.freelist.search.
bucketExhausted
¶ The number of times that
mongod
has checked the free list without finding a suitably large record allocation.
-
metrics.storage.freelist.search.
requests
¶ The number of times
mongod
has searched for available record allocations.
-
metrics.storage.freelist.search.
scanned
¶ The number of available record allocations
mongod
has searched.
-
metrics.ttl.
deletedDocuments
¶ The total number of documents deleted from collections with a ttl index.
-
metrics.ttl.
passes
¶ The number of times the background process removes documents from collections with a ttl index.
-
metrics.
cursor
¶ A document that contains data regarding cursor state and use.
-
metrics.cursor.
timedOut
¶ The total number of cursors that have timed out since the server process started. If this number is large or growing at a regular rate, this may indicate an application error.
-
metrics.cursor.
open
¶ A document that contains data regarding open cursors.
-
metrics.cursor.open.
noTimeout
¶ The number of open cursors with the option
DBQuery.Option.noTimeout
set to prevent timeout after a period of inactivity.
-
metrics.cursor.open.
pinned
¶ The number of “pinned” open cursors.
-
metrics.cursor.open.
total
¶ The number of cursors that MongoDB is maintaining for clients. Because MongoDB exhausts unused cursors, typically this value small or zero. However, if there is a queue, stale tailable cursors, or a large number of operations this value may rise.
-
metrics.cursor.open.
singleTarget
¶ The total number of cursors that only target a single shard. Only
mongos
instances reportmetrics.cursor.open.singleTarget
values.
-
metrics.cursor.open.
multiTarget
¶ The total number of cursors that only target more than one shard. Only
mongos
instances reportmetrics.cursor.open.multiTarget
values.
watchdog¶
New in version 3.6.
Note
The watchdog
section is only present if the Storage Node Watchdog is enabled.
-
watchdog
¶ A document reporting the status of the Storage Node Watchdog.
-
watchdog.
checkGeneration
¶ The number of times the directories have been checked since startup. Directories are checked multiple times every
monitoringPeriod
.
-
watchdog.
monitorGeneration
¶ The number of times the status of all filesystems used by
mongod
has been checked. This is incremented once everymonitoringPeriod
.
-
watchdog.
monitorPeriod
¶ The value set by
watchdogPeriodSeconds
. This represents the period in between status checks.
Output Changelog¶
Starting in MongoDB 4.4,
serverStatus
:Added new metrics to track write concern failures caused by a custom global default write concern:
Added new metrics to track authentication mechanism usage:
security.authentication.mechanisms
Each field in
security.authentication.mechanisms
represents an authentication mechanism supported by yourmongod
/mongos
instance, and includes information on the number of times that mechanism has been used.These metrics are also available starting in MongoDB 4.2.6 and 4.0.19.
Added new topology metrics in
connections
:Added new metrics to track slow DNS and SSL handshake operations in
network
:Added new sync source metrics in
metrics.repl
:metrics.repl.network.oplogGetMoresProcessed
metrics.repl.network.oplogGetMoresProcessed.num
metrics.repl.network.oplogGetMoresProcessed.totalMillis
metrics.repl.network.replSetUpdatePosition.num
metrics.repl.syncSource.numSelections
metrics.repl.syncSource.numTimesChoseSame
metrics.repl.syncSource.numTimesChoseDifferent
metrics.repl.syncSource.numTimesCouldNotFind
Added new metrics to track aggregation pipeline stage use in
metrics.aggStageCounters
.Added new metrics to track queries that perform a collection scan:
Added new
range deletion metrics
inshardingStatistics
.
Starting in MongoDB 4.2.2,
serverStatus
:- Added new transaction metrics in
transactions
formongos
:
- Added new transaction metrics in
Starting in MongoDB 4.2.1 (and 4.0.13),
serverStatus
includes:electionMetrics
Starting in MongoDB 4.2,
serverStatus
:- Returns
opcounters
andopcountersRepl
metrics as 64-bit integers (i.e. NumberLong) instead of 32-bit integers (i.e. NumberInt). - Includes
trafficRecording
metrics in its output. - Added new document count (
countDocs
) metrics inshardingStatistics
. - Added new unacknowledged writes counts to
metrics.repl.network
. - Added new user operations counts to
metrics.repl.stepDown
. - Added new transaction metrics in
transactions
formongod
. - Includes
transactions
metrics formongos
. - Added
sessionCatalogSize
metric tologicalSessionRecordCache
. - Added
countDonorMoveChunkLockTimeout
metric toshardingStatistics
. - Added
ReplicationStateTransition
lock information tolocks
. - Reports
ParallelBatchWriterMode
lock information separately fromGlobal
lock information. Seelocks
.
- Returns
Starting in MongoDB 4.0.6,
serverStatus
includes:opReadConcernCounters
opWriteConcernCounters
(RequiresreportOpWriteConcernCountersInServerStatus
parameter set totrue
).metrics.repl.apply.batchSize
Starting in MongoDB 4.0,
serverStatus
includesshardingStatistics
in its output.Starting in MongoDB 3.6,
serverStatus
no longer outputs therangeDeleter
section.Starting in MongoDB 3.0,
serverStatus
no longer outputs theworkingSet
,indexCounters
, andrecordStats
sections.