博客
关于我
Django进阶 ----日志管理
阅读量:571 次
发布时间:2019-03-09

本文共 1377 字,大约阅读时间需要 4 分钟。

  • 概念说明
    日志信息记录了一个事件的发生,通常包括以下几个关键要素:
    • 事件发生时间
    • 事件发生位置
    • 事件的严重程度(日志级别)
    • 事件内容

    日志级别分为以下几种:

    • DEBUG:用于调试目的的低级系统信息
    • INFO:一般系统信息
    • WARNING:已发生的小问题的警告信息
    • ERROR:已发生的主要问题的错误信息
    • CRITICAL:已发生的严重问题的信息
    1. Django日志模块
      Django默认使用的日志模块是 Python 的 logging 模块,主要由四个部分组成:
      • Logger 记录仪:生成和记录日志信息及级别
      • Handler 处理程序:根据日志级别交由相应处理程序处理(如生成日志文件或发送邮件)
      • Filters 过滤器:日志交由处理程序处理前需满足的过滤条件
      • Formatters 格式化程序:决定日志的打印输出格式

      常用配置示例:

      import logging  logger = logging.getLogger(__name__)  def my_view(request, arg1, arg2):      # 其他业务逻辑处理      if error_happens:          logger.error('Something went wrong!')
      1. Loguru日志模块
        Loguru 是一个强大且灵活的日志工具库,安装后直接在视图中使用:
      2. from loguru import logger  logger.add("django.log",             format="{time:YYYY-MM-DD at HH:mm:ss} | {level} | {message}",             rotation="100 MB",             filter="",             level="INFO",             encoding='utf-8')  def my_view(request, arg1, arg2):      # 其他业务逻辑处理      if error_happens:          logger.error("Something went wrong")
        1. Sentry错误监控
          Sentry 是一款广泛支持的错误监控工具,支持 Django 等多种框架:
          安装配置步骤如下:
        2. 安装 Sentry SDK:
          pip install --upgrade sentry-sdk
        3. 在 Sentry 网站注册登录,创建 Django 项目并获取 PublicKey
        4. 修改 Django 项目的 settings.py:
        5. import sentry_sdk  from sentry_sdk.integrations.django import DjangoIntegrations  sentry_sdk.init(      dsn="https://yourPublicKey@o0.ingest.sentry.io/0",      integrations=[DjangoIntegration()],      traces_sample_rate=1.0,      send_default_pii=True,  )

    转载地址:http://tyupz.baihongyu.com/

    你可能感兴趣的文章
    Objective-C实现Adler32算法(附完整源码)
    查看>>
    Objective-C实现AffineCipher仿射密码算法(附完整源码)
    查看>>
    Objective-C实现all combinations所有组合算法(附完整源码)
    查看>>
    Objective-C实现all permutations所有排列算法(附完整源码)
    查看>>
    Objective-C实现all subsequences所有子序列算法(附完整源码)
    查看>>
    Objective-C实现AlphaNumericalSort字母数字排序算法(附完整源码)
    查看>>
    Objective-C实现alternate disjoint set不相交集算法(附完整源码)
    查看>>
    Objective-C实现An Armstrong number阿姆斯特朗数算法(附完整源码)
    查看>>
    Objective-C实现anagrams字谜算法(附完整源码)
    查看>>
    Objective-C实现ApproximationMonteCarlo蒙特卡洛方法计算pi值算法 (附完整源码)
    查看>>
    Objective-C实现area under curve曲线下面积算法(附完整源码)
    查看>>
    Objective-C实现arithmetic算术算法(附完整源码)
    查看>>
    Objective-C实现armstrong numbers阿姆斯壮数算法(附完整源码)
    查看>>
    Objective-C实现articulation-points(关键点)(割点)算法(附完整源码)
    查看>>
    Objective-C实现atoi函数功能(附完整源码)
    查看>>
    Objective-C实现average absolute deviation平均绝对偏差算法(附完整源码)
    查看>>
    Objective-C实现average mean平均数算法(附完整源码)
    查看>>
    Objective-C实现average median平均中位数算法(附完整源码)
    查看>>
    Objective-C实现average mode平均模式算法(附完整源码)
    查看>>
    Objective-C实现avl 树算法(附完整源码)
    查看>>