FORMATTERS = (
{
"verbose": {
"format": "{levelname} {asctime:s} {name} {threadName} {thread:d} {module} {filename} {lineno:d} {name} {funcName} {process:d} {message}",
"style": "{",
},
"simple": {
"format": "{levelname} {asctime:s} {name} {module} {filename} {lineno:d} {funcName} {message}",
"style": "{",
},
},
)
HANDLERS = {
"console_handler": {
"class": "logging.StreamHandler",
"formatter": "simple",
"level": "DEBUG"
},
"info_handler": {
"class": "logging.handlers.RotatingFileHandler",
"filename": f"{BASE_DIR}/logs/blogthedata_info.log",
"mode": "a",
"encoding": "utf-8",
"formatter": "verbose",
"level": "INFO",
"backupCount": 5,
"maxBytes": 1024 * 1024 * 5, # 5 MB
},
"error_handler": {
"class": "logging.handlers.RotatingFileHandler",
"filename": f"{BASE_DIR}/logs/blogthedata_error.log",
"mode": "a",
"formatter": "verbose",
"level": "WARNING",
"backupCount": 5,
"maxBytes": 1024 * 1024 * 5, # 5 MB
},
}
LOGGERS = (
{
"django": {
"handlers": ["console_handler", "info_handler"],
"level": "INFO",
},
"django.request": {
"handlers": ["error_handler"],
"level": "INFO",
"propagate": True,
},
"django.template": {
"handlers": ["error_handler"],
"level": "DEBUG",
"propagate": True,
},
"django.server": {
"handlers": ["error_handler"],
"level": "INFO",
"propagate": True,
},
},
)
LOGGING = {
"version": 1,
"disable_existing_loggers": False,
"formatters": FORMATTERS[0],
"handlers": HANDLERS,
"loggers": LOGGERS[0],
}
https://docs.djangoproject.com/en/4.0...
https://docs.python.org/3/library/log...