• Django中logging的配置


    一、配置信息:

      ADMINS = (
      ('tom','*******@163.com'),
      )

    LOGGING = {
        'version': 1, #版本
    'disable_existing_loggers': False, #是否禁用其他的logger 'formatters': { 'standard': { 'format': '%(asctime)s [%(threadName)s:%(thread)d] [%(name)s:%(lineno)d] [%(module)s:%(funcName)s] [%(levelname)s]- %(message)s'}, 'myself':{ 'format': '%(asctime)s- %(message)s ' } }, 'filters': { # 'require_debug_false': { # '()': 'django.utils.log.RequireDebugFalse', # }, 'require_debug_true':{ '()': 'django.utils.log.RequireDebugTrue', } }, 'handlers': { 'null': { 'level': 'DEBUG', 'class': 'logging.NullHandler', }, 'mail_admins': { 'level': 'ERROR', 'class': 'django.utils.log.AdminEmailHandler', 'filters': ['require_debug_true'], }, 'debug': { 'level': 'DEBUG', 'class': 'logging.handlers.RotatingFileHandler', 'filename': os.path.join(BASE_DIR, "log", 'debug.log'),#log文件地址 手动新建一个log目录下debug.log, 不然会报错 'maxBytes': 1024 * 1024 * 5,# 5M 'backupCount': 5, 'formatter': 'myself', }, 'console': { 'level': 'DEBUG', 'class': 'logging.StreamHandler', 'formatter': 'myself', }, }, 'loggers': { 'django': { 'handlers': ['console', 'debug'], 'level': 'DEBUG', 'propagate': True }, 'django.request': { 'handlers': ['debug', 'mail_admins'], 'level': 'ERROR', 'propagate': True, # 是否继承父类的log信息 }, # 对于不在 ALLOWED_HOSTS 中的请求不发送报错邮件 'django.security.DisallowedHost': { 'handlers': ['null'], 'propagate': False, }, } }

    二、使用举例:

    def hello_log(request):
        logger = logging.getLogger("django")#使用上面配置中的“django”配置
        logger.error("haha error")
        return HttpResponse("hello log")
  • 相关阅读:
    Spring Boot → 08:嵌入式Servlet容器自定义
    Spring Boot → 09:使用外置Servlet容器_tomcat9.0
    Spring Boot → 07:错误处理机制
    Spring Boot → 06:项目实战-账单管理系统
    Spring Boot → 05:Web开发
    zzz Objective-C的消息传递机制
    Objective-C中的SEL、IMP和Class类型(转)
    zzzObjective-C的动态特性
    zzz KVC/KVO原理详解及编程指南
    zzzzz iOS绘图教程
  • 原文地址:https://www.cnblogs.com/appium/p/16421921.html
Copyright © 2020-2023  润新知