Database - MongoDB Opspack

MongoDB is a cross-platform, document-oriented database program and represents its documents in a binary-encoded JSON format called BSON (Binary JSON). The lightweight binary format adds speed to the flexibility of the JSON format, along with more data types. Fields inside MongoDB documents can also be indexed.

Mongo DB allows users to be agile and follow a stable process when running the most critical applications. Here are a few other highlight features:

What You Can Monitor Copied

Opsview Monitor contains all the important service checks to make sure your MongoDB Server is up and running. Service Checks for MongoDB include:

Service Checks Copied

Service Check Description
MongoDB - Asserts Number of asserts
MongoDB - Chunks Balance Checks chunks are balanced across shards
MongoDB - Collection Indexes Index size of collection
MongoDB - Collection Size Size of the collection
MongoDB - Collection State Check connectivity to the collection
MongoDB - Collection Storage Size Storage size of the collection
MongoDB - Connect Primary Primary connection check
MongoDB - Connection Number of available connections being used
MongoDB - Database Indexes Database index size
MongoDB - Database Size Storage size of the database
MongoDB - Databases Number of databases
MongoDB - Flushing Average time to perform a background flush
MongoDB - Index miss Ratio Index counters miss ratio
MongoDB - Journal Average amount of data written to the recovery log (MB) in the last 4 seconds
MongoDB - Journal Commits Number of commits performed whilst in the databases write lock
MongoDB - Last Flush Time Time taken to perform the last background flush
MongoDB - Memory Total system memory
MongoDB - Memory Mapped Amount of mapped memory
MongoDB - Opcounters Number of queries per second
MongoDB - Oplog Operation log metrics
MongoDB - Page Fault Number of page faults
MongoDB - Queries Per Second Number of queries per second
MongoDB - Queue Queue metrics
MongoDB - Rep Lag Replication lag in seconds
MongoDB - Rep Lag Percent Replication lag percent
MongoDB - Replset Quorum Status of members
MongoDB - Replset State State of replset
MongoDB - Row Count Number of rows
MongoDB - Write Data Files Average amount of data in megabytes written to the databases datafiles in the last four seconds

Setup and Configuration Copied

Setup for using all service checks Copied

To get all the service checks working correctly, MongoDB must be set up with a database, collection, sharding and replicaset. Any of the service checks that are not needed should be disabled.

If you are not running sharding, then Chunks Balance should be disabled.

If MongoDB is running without replSet, then Rep Lag, Rep Lag percentage, Replset Quorum and Replset State should be disabled.

If you are running a MongoDB 3.2+ system, then Journal, Journal Commits and Write Data Files should be disabled as it uses WiredTiger as its storage engine.

Create a user with appropriate role for plugin to login as with MongoDB Copied

In order for this Opspack to work, it queries the admin database to get system-wide statistics about the database deployment.

It is recommended to set up a user in a role with permissions (at least) ClusterMonitor, as this role “Provides read-only access to monitoring tools for administering the whole system rather than just a single database”.

For example, to create a user Opsview with password Opsview and role clusterMonitor:

db = db.getSiblingDB("admin");
db.createUser( { user:"opsview",pwd:"opsview",roles:["clusterMonitor"] } );

The Opspack can then use these credentials, which you enter into Opsview, to login and query metrics.

You are at liberty to instead allow Opsview to login as an already existing user with at least this level of role access.

Add the Host Template Copied

Add the Database - MongoDB Host Template to your Opsview Monitor host.

Add host template

Note

For more information, refer to the documentation on Adding Host Templates to Hosts.

Add and configure variables required for this host Copied

Variable Description
MONGODB_CREDENTIALS Used in authenticating with MongoDB. Override the Username and Password with your credentials.
MONGODB_DATABASES Used to select the database to monitor. Set the value to your database name and override the Collection and Replicaset with your details.

Add variables Add variables

Note

For more information, refer to the documentation on Adding Variables to Hosts.

Apply Changes Copied

Apply Changes and the system will then be monitored:

View Service Checks

Plugin help Copied

Secure Args

The check_mongodb.py plugin uses the Secure Args feature for argument passing.
["Opsview On-Premises"] ["Opsview > Opspacks"] ["User Guide", "Technical Reference"]

Was this topic helpful?