Skip to main content

Useful scripts to parse and visualize MongoDB log files, launch test environments, and reproduce issues.

Project description

PyPI version Build Status Python 36 Python 37 Python 38

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.

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)

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.6, 3.7, and 3.8.

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 January 2020, that includes MongoDB 3.6 or newer.

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mtools-1.6.2.tar.gz (2.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mtools-1.6.2-py3-none-any.whl (2.1 MB view details)

Uploaded Python 3

File details

Details for the file mtools-1.6.2.tar.gz.

File metadata

  • Download URL: mtools-1.6.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.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.41.0 CPython/3.7.4

File hashes

Hashes for mtools-1.6.2.tar.gz
Algorithm Hash digest
SHA256 7c35e129a0a589ea72fdc1a396463ee9c0552a8f236165ce6bcaf48d258a2a29
MD5 dbf3b65d6af6b648665a7b1fe3012361
BLAKE2b-256 cf6ac7e6118202e99b0b4b59f4f3ce7f1ff98c3959432f75dd969933a76c0be3

See more details on using hashes here.

File details

Details for the file mtools-1.6.2-py3-none-any.whl.

File metadata

  • Download URL: mtools-1.6.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.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.41.0 CPython/3.7.4

File hashes

Hashes for mtools-1.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fcf75bda76c455b73743d2313fb2c75dfb657885c5a6871eee3298a35c40aa27
MD5 dfe82bbad9b08efc0e630c1a52f0856e
BLAKE2b-256 c56b00faf0a15b862138c036bd93f816b606a61446dfdf76cc85dcd0906aa548

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page