django logger(工作中使用)

Posted wt7018

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django logger(工作中使用)相关的知识,希望对你有一定的参考价值。

1、setting.py

注意:创建log文件夹

# 存放Log的目录
LOGGING_DIR = os.path.join(BASE_DIR, log)

LOGGING = {
    version: 1,
     disable_existing_loggers: True,
     formatters: {
         simple: {
             format: [%(asctime)s] %(levelname)s : %(message)s
         },
         verbose: {
             format: [%(asctime)s] %(levelname)s %(module)s %(process)d %(thread)d : %(message)s
         },
         standard: {
             format: %(asctime)s [%(threadName)s:%(thread)d] [%(name)s:%(lineno)d] [%(levelname)s]- %(message)s
         },
     },
    # handlers:用来定义具体处理日志的方式,可以定义多种,"default"就是默认方式,"console"就是打印到控制台方式。file是写入到文件的方式,注意使用的class不同
     handlers: {
         mail_admins:{
             level: ERROR,
             class: django.utils.log.AdminEmailHandler,
             include_html: True,
         },
         default: {
            level: DEBUG,
            class: logging.handlers.RotatingFileHandler,
            filename: os.path.join(LOGGING_DIR, run.log),
            maxBytes: 1024*1024*5,
            backupCount: 5,
            formatter: simple,
         },
         # ‘request_handler‘: {
         #     ‘level‘: ‘DEBUG‘,
         #     ‘class‘: ‘logging.handlers.RotatingFileHandler‘,
         #     ‘filename‘: os.path.join(LOGGING_DIR, ‘debug_request.log‘),
         #     ‘maxBytes‘: 1024*1024*5,
         #     ‘backupCount‘: 5,
         #     ‘formatter‘: ‘standard‘,
         # },
         console: {
             level: INFO,
             class: logging.StreamHandler,  # 用这‘logging.StreamHandler‘ 日志信息才会输出到console
             # ‘filename‘:os.path.join(LOGGING_DIR,‘info_console.log‘),
             # ‘formatter‘: ‘standard‘,
             formatter: simple,
         },
     },
    # log记录器,配置之后就会对应的输出日志
     loggers: {
         django: {
             # ‘handlers‘: [‘console‘, ‘  ‘, ‘default‘],
             handlers: [console, default],
             level: INFO,
             propagate: True,
         },
     },
}

# ‘django‘是一种类型的日志
logger = logging.getLogger("django")

2、使用

导入包

from 项目名称.settings import logger

具体使用

logger.info(ok ok ok)
logger.error(no no no)

 

以上是关于django logger(工作中使用)的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Django Summernote 中显示编程片段的代码块?

django使用celery执行异步任务时采用信号实现每个任务日志独立存放(after_setup_logger)

Django中日志管理

登录 Django 和 gunicorn

Django终端打印SQL语句

Django之logging日志使用