当前位置:   article > 正文

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

django中日志模块logging的配置和使用
 一、文件的配置

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

  1. # 日志记录
  2. LOGGING = {
  3. "version": 1,
  4. "disable_existing_loggers": False, # 用于确定在应用新的日志配置时是否禁用之前配置的日志器
  5. # 格式器
  6. "formatters": {
  7. "verbose": { # 输出日志级别名称、日志信息,以及生成日志信息的时间、进程、线程和模块。format格式化输出
  8. "format": "{levelname} {asctime} {module} {process:d} {thread:d} {message}",
  9. "style": "{",
  10. },
  11. "simple": { # 输出日志级别名称和日志信息。
  12. "format": "{levelname} {message}",
  13. "style": "{",
  14. },
  15. },
  16. # 过滤器
  17. "filters": {
  18. "require_debug_true": {
  19. "()": "django.utils.log.RequireDebugTrue", # 当DEBUG为True时,传递记录。
  20. },
  21. },
  22. # 处理器
  23. "handlers": {
  24. "console": { # 输出到终端
  25. "level": "INFO", # 日志级别
  26. "filters": ["require_debug_true"], # 使用的过滤器,上边已经定义
  27. "class": "logging.StreamHandler", # 用于将日志消息发送到一个流,通常是一个输出流,比如控制台(标准输出)
  28. "formatter": "simple", # 格式器,上边有定义
  29. },
  30. "file": { # 输出到文件
  31. "level": "INFO", # 日志级别
  32. "class": "logging.handlers.RotatingFileHandler", # 将日志输出到一个文件中
  33. "filename": os.path.join(BASE_DIR, 'logs/mall.log'), # 日志输出的文件, os.path.join用来拼接路径
  34. "maxBytes": 300 * 1024 * 1024, # 一个文件300M
  35. "backupCount": 10, # 备份10个文件
  36. "formatter": "verbose", # 格式器
  37. },
  38. },
  39. "loggers": { # 日志器
  40. "django": { # 创建的日志记录器
  41. "handlers": ["console", 'file'], # 处理方式:在终端输出、输出到文件
  42. "propagate": True, # 日志没有被处理,日志消息将向上传递给上级记录器
  43. 'level': 'INFO', # 日志输出最低级别,低于这个将不会输出
  44. },
  45. },
  46. }

二、记录器的使用
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, 只有当日志消息级别大于等于设置好的日志级别,日志消息才会被记录 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/人工智能uu/article/detail/840352
推荐阅读
相关标签
  

闽ICP备14008679号