To monitor MongoDB with Database Visibility, you must run MongoDB >= 2.2. 

If you are configuring a collector for a MongoDB cluster, you only need to configure one collector for the entire cluster. You can choose any node in the cluster to connect to, and the entire cluster will automatically be detected.

Connection Details

SectionFieldDescription
Create New CollectorDatabase TypeThe database type that you want to monitor.
AgentThe Database Agent that manages the collector.
Collector NameThe name you want to identify the collector by.
Connection DetailsHostname or IP AddressThe hostname or IP address of the machine that your database is running on.
Listener PortThe TCP/IP address of the port on which your database communicates with the Database Agent
Custom Connection String

The connection string generated by the database agent. You can also specify a custom connection string, which is useful for setting custom authentication options.

Ensure that you do not specify the username and password in the custom connection string because it can cause a security risk.

SRV RecordEnable this field to use the SRV record, where the connection string includes mongodb+srv.
Username and PasswordUsernameThe name of the user who is connecting to and monitoring the database through the Database Agent. The user should have the permissions described in User Permissions for MongoDB.
PasswordThe password of the user who is connecting to and monitoring the database through the Database Agent.
CyberArkClick to enable CyberArk for database username and password. When CyberArk is enabled, information about Application, Safe, Folder, and Object is required to fetch the username and password for your database. To use CyberArk with Database Visibility, you must download the JavaPasswordSDK.jar file from the CyberArk web site and rename the file to cyberark-sdk-9.5.jar. Then, you must copy the JAR file to the lib directory of the database agent zip file. 
Advanced OptionsExclude DatabasesThe databases that you want to exclude, separated by commas.
Monitor Operating SystemSee Configure the Database Agent to Monitor Server Hardware.

When configuring the collector, ensure that you encode the username and password that uses special characters.

User Permissions for MongoDB

For MongoDB < 2.6.x, the readAnyDatabase and ClusterMonitor built-in roles are required to monitor using AppDynamics Database Visibility. For MongoDB shared clusters, the monitoring user must have access to all shards.

For MongoDB >= 2.6, the clusterMonitor built-in role in addition to read is required.

If you choose to create a new user to monitor MongoDB, the user must be created in the admin database.

You can configure user roles as shown in the sample query below:

use admin
db.createUser({ user: "tanujaAdmin",
pwd: "tanuja123",
    roles: [ 
	{ role: "clusterMonitor", db: "admin" },
  	{ role: "read", db: "admin" },
    ] 
})
CODE