Django日志系统

在Django中使用的日志系统是基于Python中的loggin模块。 首先简单介绍下logging。

一 Loggin模块简介

loggin模块主要包含以下四个部分:

  • Loggers           用户使用的直接接口,将日志传递给Handler
  • Handlers          控制日志输出到哪里,console,file…    一个logger可以有多个Handler
  • Filters          控制哪些日志可以从logger流向Handler
  • Formatters       控制日志的格式

1 Loggers  

A logger is configured to have a log level. This log level describes the severity of the messages that the logger will handle. Python defines the following log levels:

  • DEBUG: Low level system information for debugging purposes            
  • INFO: General system information
  • WARNING: Information describing a minor problem that has occurred.
  • ERROR: Information describing a major problem that has occurred.
  • CRITICAL: Information describing a critical problem that has 

每个日志信息都可以设定日志级别进行处理,

当logger对象接收到了一条日志消息时会对log level进行比较, 如果log level超出或等自己的log level那么会忽略这条消息,否则交由handler处理 

2 Handlers

 handler决定了如何处理一条日志消息,它指定特定的日志记录行为比如将日志输出到屏幕或者输出到文件等等

 如何logger, handler也同样有log level 如果log level超出或等自己的log level那么同样会忽略这条消息

一个logger可以有多个hanlder,每个hanlder可以有不同的log level 通过这种方式,可以根据消息的重要性提供不同形式的日志输出,比如你可以用一个handler进行ERROR和CRITCAL的页面输出,也可以同时用第二个hanlder把所有的日志级别输出到文件进行分析

猜你喜欢

转载自www.cnblogs.com/harryblog/p/10190342.html
今日推荐