/mtools

A collection of scripts to set up MongoDB test environments and parse and visualize MongoDB log files.

Primary LanguageHTMLApache License 2.0Apache-2.0

mtools

PyPI version Build Status Python 27

mtools is a collection of helper scripts to parse, filter, and visualize MongoDB log files (mongod, mongos). mtools also includes mlaunch, a utility to quickly set up complex MongoDB test environments on a local machine.

mtools box

What's in the box?

The following tools are in the mtools collection:

mlogfilter
slices log files by time, merges log files, filters slow queries, finds table scans, shortens log lines, filters by other attributes, convert to JSON
mloginfo
returns info about log file, like start and end time, version, binary, special sections like restarts, connections, distinct view
mplotqueries
visualize log files with different types of plots (requires matplotlib)
mlogvis
creates a self-contained HTML file that shows an interactive visualization in a web browser (as an alternative to mplotqueries)
mlaunch
a script to quickly spin up local test environments, including replica sets and sharded systems (requires pymongo)

You can find the manual and many usage examples on the mtools wiki pages.

Requirements and Installation Instructions

The mtools collection is written in Python, and most of the tools only use the standard packages shipped with Python version 2.7.x.

mtools is not currently compatible with Python 3.

Some of the tools have additional dependencies, which are listed under the specific tool's section. See the INSTALL.md file for installation instructions for these modules.

The mtools utilities are only tested with currently supported (non End-of-Life) versions of the MongoDB server. As of September 2017, that includes MongoDB 3.0 or newer.

Recent Changes

See CHANGES.md for a list of changes from previous versions of mtools.

Contribute to mtools

If you'd like to contribute to mtools, please read the contributor page for instructions.

Disclaimer

This software is not supported by MongoDB, Inc. under any of their commercial support subscriptions or otherwise. Any usage of mtools is at your own risk. Bug reports, feature requests and questions can be posted in the Issues section on GitHub.