https://docs.djangoproject.com/en/3.0/topics/logging/
https://yiyibooks.cn/xx/python_352/library/logging.html#logger-objects
https://docs.python.org/3/library/logging.html#logrecord-attributes
https://yiyibooks.cn/xx/python_352/library/logging.handlers.html
级别 | 值 | 描述 |
---|---|---|
CRITICAL | 50 | 关键错误、消息 |
ERROR | 40 | 错误 |
WARNING | 30 | 警告 |
INFO | 20 | 通知消息 |
DEBUG | 10 | 调试 |
NOTSET | 0 | 无级别 |
‘loggers‘: {
‘log名称‘:{
‘handlers‘: [‘处理器名称1‘,,‘处理器名称2‘],
‘level‘: ‘日志级别‘,
‘propagate‘: False,
},
‘handlers名称‘: {
‘level‘: ‘日志级别‘,
‘class‘: ‘handlers类‘,
‘filename‘: ‘文件全路径‘,
‘when‘: "D",
‘interval‘: 1,
‘formatter‘: ‘formatter名称‘
},
"formatter名称": {
"format": ‘%(asctime)s %(name)s %(levelname)s %(pathname)s:%(lineno)d %(module)s:%(funcName)s %(message)s‘,
"datefmt": "%Y-%m-%d %H:%M:%S"
},
格式 | 描述 |
---|---|
%(name)s | 记录器 logger 的名字 |
%(levelno)s | 数据形式的日志记录级别 |
%(levelname)s | 文本形式的日志记录级别 |
%(filename)s | 执行日志记录调用的源文件的文件名 |
%(pathname)s | 执行日志记录调用的源文件的 全路径+文件名 |
%(funcName)s | 执行日志记录调用的函数名称 |
%(module)s | 调用的模块名称,django是 app 的名称 |
%(lineno)d | 记录调用的行号 |
%(created)s | 执行日志记录的时间 |
%(asctime)s | 日期时间 |
%(msecs)s | 毫秒部分 |
%(thread)s | 线程ID |
%(threadName)s | 线程名称 |
%(process)d | 进程ID |
%(message)s | 记录的消息,自定义内容 |
https://docs.python.org/3/library/logging.handlers.html#timedrotatingfilehandler
格式 | 描述 |
---|---|
‘S‘ | Seconds |
‘M‘ | Minutes |
‘H‘ | Hours |
‘D‘ | Days |
‘W0‘ - ‘W6‘ | Weekday (0=Monday) |
‘midnight‘ | Roll over at midnight |
‘loggers‘: {
‘mylogger‘:{
‘handlers‘: [‘console‘],
‘level‘: ‘DEBUG‘
},
‘console‘: {
‘level‘: ‘DEBUG‘,
‘class‘: ‘logging.StreamHandler‘,# 写到屏幕
‘formatter‘: ‘simple‘
},
import logging
logger = logging.getLogger(‘mylogger‘)
logger.debug(‘视图的debuglog‘)
‘file‘: {
‘level‘ :‘DEBUG‘,
‘class‘: ‘logging.FileHandler‘,
‘filename‘: ‘/tmp/debug.log‘,
‘formatter‘: ‘simple‘,
}
‘mylogger‘:{
‘handlers‘: [‘console‘,‘file‘],
‘level‘: ‘DEBUG‘,
‘propagate‘: False,
},
DEBUG DEBUG 日志
ERROR ERROR 日志
DEBUG debug log
ERROR error log
System check identified no issues (0 silenced).
May 22, 2020 - 08:16:34
Django version 3.0.6, using settings ‘ops.settings‘
Starting development server at http://0.0.0.0:8000/
Quit the server with CONTROL-C.
DEBUG 视图的debuglog
/tmp/debug.log 也会有这个日志
"default": {
"format": ‘%(asctime)s %(pathname)s:%(lineno)d %(module)s:%(funcName)s ‘
‘%(levelname)s- %(message)s‘,
"datefmt": "%Y-%m-%d %H:%M:%S"
},
2020-05-22 08:31:46 /home/jenvid/PycharmProjects/django/ops/apps/users/views.py:20 views:get DEBUG- 视图的debuglog
LOGGING = {
‘version‘: 1,
‘disable_existing_loggers‘: False,
‘formatters‘: {
‘verbose‘: {
‘format‘: ‘{levelname} {asctime} {module} {process:d} {thread:d} {message}‘,
‘style‘: ‘{‘,
},
‘simple‘: {
‘format‘: ‘{levelname} {message}‘,
‘style‘: ‘{‘,
},
"default": {
"format": ‘%(asctime)s %(name)s %(pathname)s:%(lineno)d %(module)s:%(funcName)s ‘
‘%(levelname)s- %(message)s‘,
"datefmt": "%Y-%m-%d %H:%M:%S"
},
},
‘handlers‘: {
‘console‘: {
‘level‘: ‘DEBUG‘,
‘class‘: ‘logging.StreamHandler‘,
‘formatter‘: ‘default‘
},
‘file‘: {
‘level‘: ‘DEBUG‘,
‘class‘: ‘logging.handlers.TimedRotatingFileHandler‘,
‘filename‘: ‘/tmp/debug.log‘,
‘when‘: "D",
‘interval‘: 1,
‘formatter‘: ‘default‘
},
"request": {
‘level‘: ‘DEBUG‘,
‘class‘: ‘logging.FileHandler‘,
‘filename‘: ‘/tmp/request.log‘,
‘formatter‘: ‘default‘
},
"server": {
‘level‘: ‘DEBUG‘,
‘class‘: ‘logging.FileHandler‘,
‘filename‘: ‘/tmp/server.log‘,
‘formatter‘: ‘default‘
},
"root": {
‘level‘: ‘DEBUG‘,
‘class‘: ‘logging.FileHandler‘,
‘filename‘: ‘/tmp/root.log‘,
‘formatter‘: ‘default‘
},
"db_backends": {
‘level‘: ‘DEBUG‘,
‘class‘: ‘logging.FileHandler‘,
‘filename‘: ‘/tmp/db_backends.log‘,
‘formatter‘: ‘default‘
},
"autoreload": {
‘level‘: ‘INFO‘,
‘class‘: ‘logging.FileHandler‘,
‘filename‘: ‘/tmp/autoreload.log‘,
‘formatter‘: ‘default‘
}
},
‘loggers‘: {
‘mylogger‘:{
‘level‘: ‘DEBUG‘,
‘handlers‘: [‘console‘,‘file‘],
‘propagate‘: True,
},
"django": {
"level": "DEBUG",
"handlers": ["console", "file"],
‘propagate‘: False,
},
"django.request": {
"level": "DEBUG",
"handlers": ["request"],
‘propagate‘: False,
},
"django.server": {
"level": "DEBUG",
"handlers": ["server"],
‘propagate‘: False,
},
"django.db.backends": {
"level": "DEBUG",
"handlers": ["db_backends"],
‘propagate‘: False,
},
"django.utils.autoreload": {
"level": "INFO",
"handlers": ["autoreload"],
‘propagate‘: False,
}
},
‘root‘: {
"level": "DEBUG",
"handlers": ["root"],
}
}
-rw-r--r-- 1 jenvid docker 0 5月 22 15:47 request.log
-rw-r--r-- 1 jenvid docker 81K 5月 23 12:57 debug.log.2020-05-23_04-57
-rw-r--r-- 1 jenvid docker 1.9K 5月 23 13:21 autoreload.log
-rw-r--r-- 1 jenvid docker 9.4K 5月 23 13:21 db_backends.log
-rw-r--r-- 1 jenvid docker 9.1K 5月 23 13:21 server.log
-rw-r--r-- 1 jenvid docker 1.5K 5月 23 13:21 root.log
-rw-r--r-- 1 jenvid docker 632 5月 23 13:21 debug.log
cat root.log
2020-05-22 10:20:25 mylogger /home/jenvid/PycharmProjects/django/ops/apps/idcs/views.py:13 views:<module> DEBUG- DEBUG 日志
2020-05-22 10:20:25 mylogger /home/jenvid/PycharmProjects/django/ops/apps/idcs/views.py:14 views:<module> ERROR- ERROR 日志
2020-05-22 10:20:25 mylogger /home/jenvid/PycharmProjects/django/ops/apps/users/views.py:13 views:<module> DEBUG- debug log
2020-05-22 10:20:25 mylogger /home/jenvid/PycharmProjects/django/ops/apps/users/views.py:14 views:<module> ERROR- error log
2020-05-22 10:20:30 mylogger /home/jenvid/PycharmProjects/django/ops/apps/users/views.py:20 views:get DEBUG- 视图的debuglog
2020-05-23 04:57:57 mylogger /home/jenvid/PycharmProjects/django/ops/apps/users/views.py:20 views:get DEBUG- 视图的debuglog
2020-05-23 05:21:39 asyncio /usr/lib/python3.7/asyncio/selector_events.py:53 selector_events:__init__ DEBUG- Using selector: EpollSelector
2020-05-23 05:21:40 mylogger /home/jenvid/PycharmProjects/django/ops/apps/idcs/views.py:13 views:<module> DEBUG- DEBUG 日志
2020-05-23 05:21:40 mylogger /home/jenvid/PycharmProjects/django/ops/apps/idcs/views.py:14 views:<module> ERROR- ERROR 日志
2020-05-23 05:21:40 mylogger /home/jenvid/PycharmProjects/django/ops/apps/users/views.py:13 views:<module> DEBUG- debug log
2020-05-23 05:21:40 mylogger /home/jenvid/PycharmProjects/django/ops/apps/users/views.py:14 views:<module> ERROR- error log
2020-05-23 05:21:44 mylogger /home/jenvid/PycharmProjects/django/ops/apps/users/views.py:20 views:get DEBUG- 视图的debuglog
原文:https://www.cnblogs.com/jenvid/p/12942190.html