Skip to main content

Pre-configured file, web and email logging for neuropixels projects, repackaging code from mpeconfig.

Project description

import np_config

np_config.setup() will run automatically on import using a default logging config.

ZooKeeper configs can be fetched via their path:

test_config: dict = np_config.fetch_zk_config(
    '/projects/np_logging_test/defaults/logging'
)

Once a logging config dict has been modified as necessary...

test_config['handlers']['email_handler']['toaddrs'] = username@alleninstitute.org

re-run the logging setup with the new config dict:

np_config.setup(
    config: dict = test_config,
    project_name = 'test',
)

The default config provides the loggers web and email, in addition to the default root which includes file handlers for info and debug logging levels, plus console logging:

logging.getLogger('web').info('test message')
logging.getLogger('email').info('test message')
logging.debug('test message to files and console')

Other parameters to np_config.setup():

  • log_at_exit (default True)

    • If True, a message is logged when the program terminates, reporting total elapsed time.
  • email_at_exit (default False)

    • If True, an email is sent when the program terminates, reporting the elapsed time and cause of termination. If an exception was raised, the traceback is included.

    • If logging.error, the email is only sent if the program terminates via an exception.

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

np_logging-0.1.0.tar.gz (3.9 kB view hashes)

Uploaded Source

Built Distribution

np_logging-0.1.0-py3-none-any.whl (3.7 kB view hashes)

Uploaded Python 3

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