1. 定义日志记录器
  2. 可以在setting.py里设置日志记录器
    # 自定义日志输出信息
    LOGGING = {
    'version': 1,
    'disable_existing_loggers': True,
    'formatters': {
    'standard': {
    'format': '%(asctime)s [%(threadName)s:%(thread)d] [%(name)s:%(lineno)d] [%(module)s:%(funcName)s] [%(levelname)s]- %(message)s'} #日志格式
    },
    'filters': {
    },
    'handlers': {
    'mail_admins': {
    'level': 'ERROR',
    'class': 'django.utils.log.AdminEmailHandler',
    'include_html': True,
    },
    'default': {
    'level':'DEBUG',
    'class':'logging.handlers.RotatingFileHandler',
    'filename': 'log/all.log', #日志输出文件
    'maxBytes': 1024*1024*5, #文件大小
    'backupCount': 5, #备份份数
    'formatter':'standard', #使用哪种formatters日志格式
    },
    'error': {
    'level':'ERROR',
    'class':'logging.handlers.RotatingFileHandler',
    'filename': 'log/error.log',
    'maxBytes':1024*1024*5,
    'backupCount': 5,
    'formatter':'standard',
    },
    'console':{
    'level': 'DEBUG',
    'class': 'logging.StreamHandler',
    'formatter': 'standard'
    },
    'request_handler': {
    'level':'DEBUG',
    'class':'logging.handlers.RotatingFileHandler',
    'filename': 'log/script.log',
    'maxBytes': 1024*1024*5,
    'backupCount': 5,
    'formatter':'standard',
    },
    'scprits_handler': {
    'level':'DEBUG',
    'class':'logging.handlers.RotatingFileHandler',
    'filename':'log/script.log',
    'maxBytes': 1024*1024*5,
    'backupCount': 5,
    'formatter':'standard',
    }
    },
    'loggers': {
    'django': {
    'handlers': ['default', 'console'],
    'level': 'DEBUG',
    'propagate': False
    },
    'django.request': {
    'handlers': ['request_handler'],
    'level': 'DEBUG',
    'propagate': False,
    },
    'scripts': {
    'handlers': ['scprits_handler'],
    'level': 'INFO',
    'propagate': False
    },
    'blog.views': {
    'handlers': ['default', 'error'],
    'level': 'DEBUG',
    'propagate': True
    },
    }
    }
  3. 在views.py里调用日志记录器
    import logging #调用日志记录器
    from django.shortcuts import render logging = logging.getLogger('blog.views') #调用日志器中的 'blog.views' 函数 # Create your views here.
    def index(request):
    try:
    file = open('sss.txt','r') #打开一个不存在的文件
    except Exception as e:
    logging.error(e) #捕获错误,记录入日志中
    return render(request, 'index.html', locals())

最新文章

  1. AngularJs之四(作用域)
  2. CSS 优先级判断
  3. (Hibernate进阶)Hibernate映射——一对一双向关联映射(六)
  4. bzoj2565: 最长双回文串
  5. Hive 按某列的部分排序 以及 删列操作
  6. 基于Maven引入Hadoop包报Missing artifact jdk.tools:jdk.tools:jar:1.6
  7. Linux 信号捕捉
  8. BZOJ1109 : [POI2007]堆积木Klo
  9. 前端异步解决方案——mmDeferred
  10. 重要性!important
  11. Android String 转 MD5
  12. java正则表达式去除html标签
  13. MyEclipse取消Show in Breadcrumb的方法
  14. VC常用数据类型使用转换详解
  15. 安装vue-cli时出现的错误,cmd 卡住
  16. Jmeter3.2默认自带的HTML报告
  17. jQuery 第六章 jQuery在Ajax应用
  18. 删除倒数第k个元素
  19. Shiro学习
  20. 一个简单的TensorFlow可视化MNIST数据集识别程序

热门文章

  1. mui 怎样监听scroll事件的滚动距离
  2. Context-Aware Network Embedding for Relation Modeling
  3. DOM编程艺术读书笔记 (须熟读)
  4. 如何测试一台主机的IP和端口是否能连通,ping telnet
  5. 简写代码:当变量为false时['',false,null,undefined,0,NaN]时,返回默认值
  6. 怎么WordPress增加在线投稿功能
  7. android studio 入门比较好的书籍
  8. 解决Gradle报错找不到org.gradle.api.internal.project.ProjectInternal.getPluginManager()方法问题
  9. 使用Gradle管理第三方依赖
  10. C++ 取整数学函数