secret-squirrel/log_settings.py

35 строки
1.0 KiB
Python
Исходник Постоянная ссылка Обычный вид История

import logging
import logging.handlers
from django.conf import settings
# Loggers created under the "sso" namespace, e.g. "sso.caching", will inherit the
# configuration from the base logger.
log = logging.getLogger('sso')
level = settings.LOG_LEVEL
if settings.DEBUG:
fmt = ('%(asctime)s %(name)s:%(levelname)s %(message)s '
':%(pathname)s:%(lineno)s')
fmt = getattr(settings, 'LOG_FORMAT', fmt)
handler = logging.StreamHandler()
formatter = logging.Formatter(fmt, datefmt='%H:%M:%S')
else:
fmt = '%s: %s' % (settings.SYSLOG_TAG,
'%(name)s:%(levelname)s %(message)s :%(pathname)s:%(lineno)s')
fmt = getattr(settings, 'SYSLOG_FORMAT', fmt)
SysLogger = logging.handlers.SysLogHandler
handler = SysLogger(facility=SysLogger.LOG_LOCAL7)
formatter = logging.Formatter(fmt)
log.setLevel(level)
handler.setLevel(level)
handler.setFormatter(formatter)
for f in getattr(settings, 'LOG_FILTERS', []):
handler.addFilter(logging.Filter(f))
log.addHandler(handler)