A JSON logger for map colonies project
Project description
json-logger
Installation
Installation with dependencies
pip3 install python-json-logger MapColoniesJSONLogger
Usage Example
import os
from jsonlogger.logger import JSONLogger
APP_NAME = 'my-service'
# there should be a formatter that uses these fields in configuration yaml (e.g. format: '%(timestamp)s %(service)s')
additional_constant_fields = {'service': APP_NAME}
# NOTICE: there should be a matching logger name in configuration yaml (e.g. main-info)
log = JSONLogger('main-info',
config={'handlers': {'file': {'filename': 'Meow.log'}}}, # Optional, override values
additional_fields=additional_constant_fields)
log.critical('system crashed')
log.error('incorrect input')
log.warn('not ready')
log.info('some info', extra={'action_id': 3}) # extra fields
log.debug('some info', extra={'action_id': 4}) # will not be logged because logger level set to INFO ('main-info')
Example Configuration YAML used by the package
{
'version': 1,
'formatters': {
'brief': {
'format': '%(message)s'
},
'json': {
'format': '%(timestamp)s %(service)s %(loglevel)s %(message)s',
'class': 'jsonlogger.logger.CustomJsonFormatter'
}
},
'handlers': {
'console': {
'class': 'logging.StreamHandler',
'formatter': 'json',
'stream': 'ext://sys.stdout'
},
'file': {
'class': 'logging.handlers.RotatingFileHandler',
'formatter': 'json',
'filename': '/var/log/osm-seed/logfile.log',
'maxBytes': 5242880,
'backupCount': 10
}
},
'loggers': {
'main-debug': {
'handlers': [
'console',
'file'
],
'level': 'DEBUG'
},
'main-info': {
'handlers': [
'console',
'file'
],
'level': 'INFO'
},
'main-warning': {
'handlers': [
'console',
'file'
],
'level': 'WARNING'
},
'main-error': {
'handlers': [
'console',
'file'
],
'level': 'ERROR'
},
'main-critical': {
'handlers': [
'console',
'file'
],
'level': 'CRITICAL'
}
}
}
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
Close
Hashes for MapColoniesJSONLogger-0.0.11.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b52fb2c4025d2fcbfac1aa5c5f964059713c8c67f527c8a7bbcbe6ae9176d59 |
|
MD5 | a853c672cd48ed7ddc82de3954c323b2 |
|
BLAKE2b-256 | 256888d44c20eb724714d2c8ee5f0c2e8c5d14a03ed86825e41fbd4339a6f8c7 |
Close
Hashes for MapColoniesJSONLogger-0.0.11-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 399931a19c085eda037f53a6a697798d279b45d432511f47b0c2f9a78ec99e01 |
|
MD5 | 9d4b9fb6aa986d256545176b5da8f294 |
|
BLAKE2b-256 | f06f8835fbb298cd76e4692f647fa87677295f264bd199cad717ed974c956ce9 |