- Alerts and Monitoring >
- Profile Databases
Profile Databases¶
On this page
Overview¶
Ops Manager can collect and display data from the MongoDB database profilers running on your mongod instances. An instance must have its profiler enabled for Ops Manager to collect data. The profiler provides statistics about database performance and operations. Ops Manager displays collected data in the Profiler section of an instance’s metrics page.
To collect profiling data for a given mongod instance, you must enable profiling on the instance and enable Ops Manager to collect the profiling data from it. To enable both at the same time, see the procedure on this page to Enable Profiling and the Collection of Profiling Data.
To enable Ops Manager collection of profiling data when the profiler is already enabled on a process, see the procedure on this page to Enable Collection of Profiling Data. To enable or disable Ops Manager collection of profiling data for all processes in the group, see Group Settings.
Please read the considerations below before enabling profiling.
Considerations¶
Before enabling profiling, be aware of the following.
Security¶
Profile data can include sensitive information, including the content of database queries. Ensure that exposing this data to Ops Manager is consistent with your information security practices.
Resources¶
The profiler can consume resources which may adversely affect MongoDB performance. Consider the implications before enabling profiling.
Ops Manager samples up to 20 entries or 4MB of data, whichever comes first. The
4MB limit is reached only if you have increased the default size the
system.profile
collection (which by
default is 1MB) and if you have large profiler documents.
The agent sends only the most recent 20 entries from the last minute.
If you use a Monitoring Agent version earlier than version 3.8.0.230,
and if the agent authenticates as a user containing the
clusterAdmin
role, the agent might leak cursors if you
enable profiling. A leaked cursor will automatically time-out on the
server after 10 minutes.
The Monitoring Agent attempts to minimize its effect on the monitored systems. If resource intensive operations, like polling profile data, begins to impact the performance of the database, Ops Manager will throttle the frequency that it collects data.
Time to Propagate¶
With profiling enabled, configuration changes made in Ops Manager can take up to 2 minutes to propagate to the agent and another minute before profiling data appears in the Ops Manager interface.
Profiled Operations¶
The MongoDB profiler stores data in the <database>.system.profile
collections. When collecting data from the profiler, Ops Manager ignores
data about operations on the <database>.system.profile
collections themselves, such as Monitoring Agent queries of the
<database>.system.profile
collections.
Enable Profiling and the Collection of Profiling Data¶
Click Deployment, then the Processes tab, then the Topology view.¶
On the line listing the process, click Metrics.¶
Alternatively, you can click the process.
Click the Profiler tab above the charts.¶
Toggle the Profiling button to On.¶
Define slow operations.¶
By default, profiling collects data for operations that take longer than 100 milliseconds. The threshold for slow operations applies to all databases on the process. To change this threshhold, click the number of milliseconds and enter a new number.
Click Review & Deploy to review your changes.¶
Review and approve your changes.¶
Ops Manager displays your proposed changes.
- If you are satisfied, click Confirm & Deploy.
- Otherwise, click Cancel and you can make additional changes.
Enable Collection of Profiling Data¶
This procedure enables Ops Manager to collect profiling data from a
mongod instance. You must separately enable the instance’s
profiler, either upon deployment or through the setProfilingLevel command. If using Automation,
you can enable profiling upon deployment by setting the profile
option
under Advanced Options.
To enabled collection of profiling data from an instance’s active profiler:
Click Deployment, then the Processes tab, then the Topology view.¶
Click the ellipses icon for the process and select Monitoring Settings.¶
Click the Profiling tab.¶
Turn on profiling.¶
Click the button to toggle between Off and On. When the button is On, Ops Manager receives database profile statistics.