The config-logger package is a basic configurable logger. It reads the configuration data for the logging from an external YAML, JSON file or from a given python dictionary and validates it. The contents of this dictionary are described in Configuration dictionary schema. This package is currently tested on Python 2.7.
pip install config-logger
or
download the latest release and run
python setup.py install
#logging.yaml contains the configuration data which defines the logging in your project
from config_logger import Logger
logger = Logger(name='my_logger', cfg_path='/path/to/logging.yaml')
logger.info("This will be written in a file called info.log")
Console Output
2017-01-31 12:20:32,693 - my_logger - INFO - This will be written in a file called info.log
log_config = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'basic': {
'format': '%(asctime)s - %(name)s - %(levelname)s - %(message)s'
}
},
'handlers': {
'console': {
'class': 'logging.StreamHandler',
'formatter': 'basic',
'level': 'WARNING',
'stream': 'ext://sys.stdout'
}
'root': {
'handlers': ['console'],
'level': 'WARNING'
}
}
from config_logger import Logger
logger = Logger(name='my_logger', default_conf=log_config)
logger.warning("This will be written in a file called warning.log")
Console Output
2017-01-31 13:12:56,002 - my_logger - WARNING - This will be written in a file called warning.log
Note: You can find sample of logging configuration files supported by config-logger in this repo.
This project is licensed under the MIT license.