django中日志模块logging的配置和使用

 一、文件的配置

settings.py文件中添加LOGGING块的配置,配置如下

# 日志记录
LOGGING = {
    "version": 1,
    "disable_existing_loggers": False,  # 用于确定在应用新的日志配置时是否禁用之前配置的日志器

    # 格式器
    "formatters": {
        "verbose": {  # 输出日志级别名称、日志信息,以及生成日志信息的时间、进程、线程和模块。format格式化输出
            "format": "{levelname} {asctime} {module} {process:d} {thread:d} {message}",
            "style": "{",
        },
        "simple": {  # 输出日志级别名称和日志信息。
            "format": "{levelname} {message}",
            "style": "{",
        },
    },

    # 过滤器
    "filters": {
        "require_debug_true": {
            "()": "django.utils.log.RequireDebugTrue",  # 当DEBUG为True时,传递记录。
        },
    },

    # 处理器
    "handlers": {
        "console": {  # 输出到终端
            "level": "INFO",  # 日志级别
            "filters": ["require_debug_true"],  # 使用的过滤器,上边已经定义
            "class": "logging.StreamHandler",  # 用于将日志消息发送到一个流,通常是一个输出流,比如控制台(标准输出)
            "formatter": "simple",  # 格式器,上边有定义
        },
        "file": {  # 输出到文件
            "level": "INFO",  # 日志级别
            "class": "logging.handlers.RotatingFileHandler",  # 将日志输出到一个文件中
            "filename": os.path.join(BASE_DIR, 'logs/mall.log'),  # 日志输出的文件, os.path.join用来拼接路径
            "maxBytes": 300 * 1024 * 1024,  # 一个文件300M
            "backupCount": 10,  # 备份10个文件
            "formatter": "verbose",  # 格式器
        },
    },
    "loggers": {  # 日志器
        "django": {  # 创建的日志记录器
            "handlers": ["console", 'file'],  # 处理方式:在终端输出、输出到文件
            "propagate": True,  # 日志没有被处理,日志消息将向上传递给上级记录器
            'level': 'INFO',  # 日志输出最低级别,低于这个将不会输出
        },
    },
}

二、记录器的使用
1、导入日志模块

import logging

2、创建日志记录器,'django'在settings文件中已创建,可以自行创建

logger=logging.getLogger('django')

3、调用方法保存日志

logger.error("文件不存在")

logger.info("正常访问")

logger.warning('redis缓存空间不足')

logger.debug("1111")

具体的代码

4、访问结果

只有级别大于等于INFO的日志记录才显示

终端中显示:

日志文件中显示

 

  

三、日志级别介绍

DEBUG:排查故障时使用的低级别系统信息

INFO:一般的系统信息

WARNING:描述系统发生了一些小问题的信息

ERROR:描述系统发生了大问题的信息

CRITICAL:描述系统发生严重问题的信息

日志级别:CRITICAL > ERROR > WARNING > INFO > DEBUG, 只有当日志消息级别大于等于设置好的日志级别,日志消息才会被记录 

相关推荐

  1. 如何使用Pythonlogging模块进行日志记录?

    2024-07-17 10:16:02       31 阅读
  2. Nginx日志模块应用配置

    2024-07-17 10:16:02       51 阅读
  3. 如何启动odoologging 日志配置

    2024-07-17 10:16:02       34 阅读
  4. log4j日志框架使用

    2024-07-17 10:16:02       52 阅读
  5. python开发:日志工具logging使用

    2024-07-17 10:16:02       61 阅读
  6. .NET 7(C#)配置使用log4net日志框架方法

    2024-07-17 10:16:02       44 阅读
  7. 【Python】Pythonlogging模块介绍示例

    2024-07-17 10:16:02       34 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-17 10:16:02       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-17 10:16:02       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-17 10:16:02       58 阅读
  4. Python语言-面向对象

    2024-07-17 10:16:02       69 阅读

热门阅读

  1. Matlab学习笔记01 - 基本数据类型

    2024-07-17 10:16:02       27 阅读
  2. spring-boot2.x整合Kafka步骤

    2024-07-17 10:16:02       19 阅读
  3. 武汉大学学报哲学社会科学版

    2024-07-17 10:16:02       22 阅读
  4. CUDA编程01- 并行编程介绍

    2024-07-17 10:16:02       21 阅读
  5. mysql和redis区别

    2024-07-17 10:16:02       23 阅读
  6. C++ LP 开头字符串自定义类型

    2024-07-17 10:16:02       24 阅读
  7. UBUNTU22 安装QT5.15.2 记录

    2024-07-17 10:16:02       18 阅读
  8. Html_Css问答集(12)

    2024-07-17 10:16:02       25 阅读