A few months ago, we wrote a blog post on finding and terminating long-running operations in MongoDB. To help make it even easier for MongoLab users* to quickly identify the cause behind database unresponsiveness, we've integrated the currentOp() and killOp() methods into our management portal.
* currentOp and killOp functionality is not available on our free Sandbox databases because they run on multi-tenanted mongod processes.
Quick intro to db.currentOp()
If you're unfamiliar with MongoDB's currentOp() method, it reports in-progress operations on your mongod process. In other words, it will return information on all active operations running on your instance. This allows you to quickly identify long-running and/or blocking operations and focus your attention on problematic areas.
Current database operations - now in MongoLab's UI
To access this functionality in MongoLab's management portal, navigate to the deployment with the current operations you want to view and click on the "Tools" tab. Here you'll see a button that will launch a new window with all of your current operations.
Once the window is loaded, you'll see a list of your deployment's in-progress operations. In this example, you see a long-running query and a replication operation. If you'd like to kill an operation, simply click on the blue X button.
For your safety, we've disabled the "kill" button for some types of operations. As such, you'll notice there are operations that do not have the blue X button next to them.
Note that from this page, you can also choose to:
- View current operations from any secondary nodes
- Automatically reload the page to see current operations in real-time
- View a more verbose output including idle and system operations
With great power...
With great power comes great responsibility. This new feature is very powerful in helping users find and kill operations. However, if you're ever in doubt about whether it's safe to terminate an operation, reach out email@example.com anytime. We're here to help!