博客
关于我
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/

    你可能感兴趣的文章
    PHP图片处理—PNG透明缩放并生成灰图
    查看>>
    php在liunx系统中设置777权限不起作用解决方法
    查看>>
    PHP基于openssl实现的非对称加密操作
    查看>>
    php基本符号大全
    查看>>
    php基础篇-二维数组排序 array_multisort
    查看>>
    php基础配置环境变量
    查看>>
    php增删改查封装方法
    查看>>
    springboot之jar包Linux后台启动部署及滚动日志查看且日志输出至文件保存(超级详细)
    查看>>
    php多条件筛选功能的实现
    查看>>
    php多线程
    查看>>
    PHP大数组循环-避免产生Notice或者是Warning
    查看>>
    PHP大数组过滤元素、修改元素性能分析
    查看>>
    PHP大文件切片下载代码
    查看>>
    PHP如何下载远程文件到指定目录
    查看>>
    php如何优化压缩的图片
    查看>>
    php如何做表格,新手怎么制作表格
    查看>>
    RabbitMQ高级特性
    查看>>
    php如何定义的数位置,php如何实现不借助IDE快速定位行数或者方法定义的文件和位置...
    查看>>
    RabbitMQ集群 - 普通集群搭建、宕机情况
    查看>>
    php如何正确的获得文件的后缀名
    查看>>