Changes

Jump to navigation Jump to search
2,182 bytes added ,  16:17, 28 November 2018
Created page with "<source lang=python> import logging.config def set_logging(log_level='DEBUG', # Logging levels available: 'DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL' logs..."
<source lang=python>
import logging.config
def set_logging(log_level='DEBUG', # Logging levels available: 'DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL'
logs_path="/var/fotingo/",
keep_logs=7,
log_max_size=52428800 # 50 * 1024 * 1024 bytes
):

logging = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'file_formatter': {
'format': '%(asctime)s [%(levelname)s] %(name)s: %(message)s %(filename)s %(lineno)d'
},
'console_formatter': {
'format': '%(asctime)s [%(levelname)s] %(name)s: %(message)s\n └── %(pathname)s %(lineno)d\n'
},

},
'handlers': {
'logfile': {
'level': log_level,
'class': 'logging.handlers.RotatingFileHandler',
'filename': os.path.join(logs_path, "fotingo.log"),
'maxBytes': log_max_size,
'backupCount': keep_logs,
'formatter': 'file_formatter'
},
'error_logfile': {
'level': 'ERROR',
'class': 'logging.handlers.RotatingFileHandler',
'filename': os.path.join(logs_path, "errors.log"),
'maxBytes': log_max_size,
'backupCount': keep_logs,
'formatter': 'file_formatter'
},
'console': {
'level': log_level,
'formatter': 'console_formatter',
'class': 'logging.StreamHandler',
},
},
'loggers': {
'': {
'handlers': ['logfile', 'console'],
'level': log_level
},
"fotingo": {
'handlers': ['logfile', 'console', 'error_logfile'],
'level': log_level,
'propagate': False,
},
}
}
return logging
BASE_DIR = '.'
LOGGING = set_logging(logs_path=os.path.join(BASE_DIR, 'logs'))

logging.config.dictConfig(LOGGING)
logger = logging.getLogger('fotingo')
logger.debug('Test logger')</source>

Navigation menu