MongoDB Analysis
Linux Applications - Best Practices - MongoDB
Velocity Software has worked closely with MongoDB and specific clients to collect,
measure and report on approximately 140 metrics from the MongoDB perspective.
Unfortunately, MongoDB has deprecated SNMP support in version 6, leaving these
three ways to acquire the specfic metrics Velocity was previously able to acquire:
- Query the database directly
- Use MongoDB's Ops Manager
- Use MongoDB's Compass product
However, the reports below will still show all key attributes acquired from a Linux perspective.
MongoDB is an in-memory database, making memory management on of the key metrics. As MongoDB
charges customers by memory footprints, over allocation is expensive. This is especially true
if using IBM's Random Array of Independent Memory (RAIM).
ESAMON screens/ESAMAP reports:
MongoDB
- ESAMNG1 - MongoDB Configuration
- ESAMNG2 - MongoDB Transaction Analysis
- ESAMNG3 - MongoDB Resource Analysis
- ESAMNG4 - MongoDB Database Analysis
- ESAMNG5 - MongoDB Performance Analysis
Using zVPS to find information for solving issues with the Linux applications:
ESAMNG1 - Shows information about the MongoDB configuration.
Node - This shows the zTCP node name.
Name - This shows the database short name.
Database Server - This shows the Mongo database server.
Memory (Megabytes) Residnt - This shows the memory currently used by the database process.
Memory (Megabytes) Virtual - This shows the virtual memory used by the database process.
Memory (Megabytes) Mapped - This shows the mapped memory used by the database process.
Memory (Megabytes) Journal - This shows the mapped memory, including the memory used for journaling.
ESAMNG2 - Shows information about the MongoDB transactions/errors.
Node - This shows the zTCP node name.
Name - This shows the database short name.
Connections Open - This shows the number of clients currently connected to the database server.
Connections Avail - This shows the number of unused connections available for new clients.
Connections Total - This shows the total number of connections created.
Assertions Regulr - This shows the number of regular assertions raised. These are per-operation invariants.
An example would be an unexpected failure while reading a BSON document.
Assertions Warning - This shows the number of warning assertions raised. These are not as serious as errors.
but should be investigated.
Assertions Msg - This shows the number of message assertions raised. These indicated internal server
exceptions.
Assertions User - This shows the number of assertions corresponding to errors generated by users.
These are triggered as a result of user operations/commands
that generate errors such as a full disk space or duplicate key exception.
Assertions Rollover - This shows the number of times that the rollover counters rolled over.
ESAMNG3 - Shows information about the MongoDB resources.
Node - This shows the zTCP node name.
Name - This shows the database short name.
Commit Rate Count - This shows the commit rate per second.
Commit Rate Locked - This shows the commits per second that occurred while a write lock was held.
Commit Rate Early - This shows the number of times that MongoDB requested a commit before the scheduled
journal group commit interval.
Network Traffic KBytesIn - This shows the amount of network traffic received by this database.
Network Traffic KBytesOut - This shows the amount of network traffic sent from this database.
ESAMNG4 - Shows information about the MongoDB databases.
Node - This shows the zTCP node name.
Name - This shows the database short name.
Global Rate Inserts - This shows the global operation rates per second for inserts.
Global Rate Query - This shows the global operation rates per second for queries.
Global Rate Update - This shows the global operation rates per second for updates.
Global Rate Cmds - This shows the global operation rates per second for commands.
Background Count - This shows the number of times the database has flushed all writes to disk.
ESAMNG5 - Shows information about MongoDB performance.
Node - This shows the zTCP node name.
Name - This shows the database short name.
Journal Time in ms per second Collect - This shows the time over which MongoDB collected the 'dur.timeMS'
data..
PageFit Rate - This shows the page faults per second that require disk operations.
Lock(ms) - This shows the time in milliseconds since the database last started that the globalLock
has been held.
Queue Sizes WriteBack - This shows the total number of operations queued waiting for the lock.
Back to top of page
Back to Performance Tuning Guide