mirror of
https://github.com/ajurna/cbwebreader.git
synced 2025-12-06 22:27:19 +00:00
78 lines
2.6 KiB
Python
78 lines
2.6 KiB
Python
import os
|
||
import logging
|
||
|
||
from .base import BASE_DIR
|
||
from .base import DEBUG
|
||
|
||
# Usage in other modules:
|
||
#
|
||
# from djangoproject.logger import log
|
||
# log.info('some output')
|
||
#
|
||
# Note, doing this manually in other modules results in nicer output:
|
||
#
|
||
# import logging
|
||
# log = logging.getLogger(__name__)
|
||
# log.info('some output')
|
||
|
||
# the basic logger other apps can import
|
||
log = logging.getLogger(__name__)
|
||
|
||
# the minimum reported level
|
||
if DEBUG:
|
||
min_level = 'DEBUG'
|
||
else:
|
||
min_level = 'INFO'
|
||
|
||
# the minimum reported level for Django's modules
|
||
# optionally set to DEBUG to see database queries etc.
|
||
# or set to min_level to control it using the DEBUG flag
|
||
min_django_level = 'INFO'
|
||
|
||
# logging dictConfig configuration
|
||
LOGGING = {
|
||
'version': 1,
|
||
'disable_existing_loggers': False, # keep Django's default loggers
|
||
'formatters': {
|
||
# see full list of attributes here:
|
||
# https://docs.python.org/3/library/logging.html#logrecord-attributes
|
||
'verbose': {
|
||
'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'
|
||
},
|
||
'simple': {
|
||
'format': '%(levelname)s %(message)s'
|
||
},
|
||
'timestampthread': {
|
||
'format': "%(asctime)s [%(threadName)-12.12s] [%(levelname)-5.5s] [%(name)-20.20s] %(message)s",
|
||
},
|
||
},
|
||
'handlers': {
|
||
'logfile': {
|
||
# optionally raise to INFO to not fill the log file too quickly
|
||
'level': min_level, # this level or higher goes to the log file
|
||
'class': 'logging.handlers.RotatingFileHandler',
|
||
# IMPORTANT: replace with your desired logfile name!
|
||
'filename': os.path.join(BASE_DIR, 'djangoproject.log'),
|
||
'maxBytes': 50 * 10**6, # will 50 MB do?
|
||
'backupCount': 3, # keep this many extra historical files
|
||
'formatter': 'timestampthread'
|
||
},
|
||
'console': {
|
||
'level': min_level, # this level or higher goes to the console
|
||
'class': 'logging.StreamHandler',
|
||
},
|
||
},
|
||
'loggers': {
|
||
'django': { # configure all of Django's loggers
|
||
'handlers': ['logfile', 'console'],
|
||
'level': min_django_level, # this level or higher goes to the console
|
||
'propagate': False, # don't propagate further, to avoid duplication
|
||
},
|
||
# root configuration – for all of our own apps
|
||
# (feel free to do separate treatment for e.g. brokenapp vs. sth else)
|
||
'': {
|
||
'handlers': ['logfile', 'console'],
|
||
'level': min_level, # this level or higher goes to the console,
|
||
},
|
||
},
|
||
} |