Useful scripts to parse and visualize MongoDB log files, launch test environments, and reproduce issues.
Project description
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, and mtransfer, a tool for transferring databases between MongoDB instances.
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)
- mlaunch
a script to quickly spin up local test environments, including replica sets and sharded systems (requires pymongo)
- mtransfer
an experimental script to transfer databases between MongoDB instances by copying WiredTiger data files (requires pymongo and wiredtiger)
For more information, see the mtools documentation.
Requirements and Installation Instructions
The mtools collection is written in Python, and most of the tools only use the standard packages shipped with Python. The tools are currently tested with Python 3.7, 3.8, 3.9, and 3.10.
Some of the tools have additional dependencies, which are listed under the specific tool’s section. See the installation instructions for more information.
The mtools suite is only tested with actively supported (non End-of-Life) versions of the MongoDB server. As of October 2022, that includes MongoDB 4.2 or newer.
NOTE: logv2 format (MongoDB 4.4+) is not fully supported yet.
Recent Changes
See Changes to mtools 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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file mtools-1.7.2.tar.gz
.
File metadata
- Download URL: mtools-1.7.2.tar.gz
- Upload date:
- Size: 2.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.41.0 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ce195befef85a3aa6e9e51d8dc1d13011b8809240f5914d815506adb9456acbc |
|
MD5 | 8144d771a7b70e1dda2e98dd6690e2dc |
|
BLAKE2b-256 | 334de5b59050096fc7f7ec276357b83681eac4e50e1337805f9a0b97c9dc8a4e |
File details
Details for the file mtools-1.7.2-py3-none-any.whl
.
File metadata
- Download URL: mtools-1.7.2-py3-none-any.whl
- Upload date:
- Size: 2.1 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.41.0 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 72679b2ea755164eca4332687757f2556aeb5cc1c54c8fc866a6920e24d022f2 |
|
MD5 | ef84eea2704162d38ff7ea115a9bf959 |
|
BLAKE2b-256 | f1beb36572aad05b557e54e722421a65c26f5b3d0a5d0d3a0e01d78758d4f01c |