Skip to main content

This module provides an easy mechanism to connect to MongoDb along with various monitoring options that help debug issues at database level

Project description

README

This module provides an easy mechanism to connect to MongoDb.

Currently implemented features -

  1. Provide MongoClient handle
  2. Monitor the MongoClient instance
  3. Log the interactions with Mongodb server
  4. Methods to retrieve details such as username, password, database name, port number and host name for scripts that access database without a database handle.

How to get a mongodb connection?

  1. Import the module into the script
  2. Create an object of the Database class - This will return a class object.

Database Class -

Parameters -

  1. uri = Mongodb URI
mongodb://username:password@host_name:port_number/database_name
  1. logger = Pass a logger handle

  2. log =

     |Option                 |Value                        |
     |-----------------------|-----------------------------|
     |commandlogger          |True | False (Default: True) |
     |serverlogger           |True | False (Default: False)|
     |heartbeatlogger        |True | False (Default: False)|
     |topologylogger         |True | False (Default: False)|
     |connectionpoollogger   |True | False (Default: False)|
    

Get the client handle by calling connect() of the Database class.

Example code -

import mongodb_util

obj = mongodb_util.Database("test_URI")
database_client = obj.connect()
database = database_client.<database name>

Read from a collection

database.<collection_name>.find()

Write into a collection

database.<collection_name>.insert({‘a’:1})

Developing mongodb_util -

To install mongodb_util, along with the tools you need to develop and run tests, run the following in your virtualenv:

$ pip install -e .[dev]

Changelog

  1. Version 1.0 -
  • Provide a mechanism to obtain a mongodb handle
  • Monitoring various transactions with the database
  • Supports custom configuration file.
  1. Version 1.1 -
  • Support for passing logger handle
  1. Version 1.2 -
  • Remove config support
  • Modify the way database credentials are picked, user input expected.
  1. Version 1.3 -
  • Fix Pylint (Pylint version - 1.9.2)

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

mongodb_util-1.3.tar.gz (7.8 kB view hashes)

Uploaded Source

Supported by

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