当前位置: 首页 > 编程笔记 >

Python Django框架实现应用添加logging日志操作示例

艾星河
2023-03-14
本文向大家介绍Python Django框架实现应用添加logging日志操作示例,包括了Python Django框架实现应用添加logging日志操作示例的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了Python Django框架实现应用添加logging日志。分享给大家供大家参考,具体如下:

Django uses Python's builtin logging module to perform system logging.

Django使用python的内建日志模块来记录系统日志,但是要想在django应用中开启此功能使我们的部分操作能够被记录到日志文件,那么就需要进行一定的配置并且根据具体的log类型来进行调用

step 1:配置setting.py

以下配置除了filename和formatters需要根据实际情况来修改外都可以保持不变

LOGGING = {
  'version': 1,
  'disable_existing_loggers': False,#此选项开启表示禁用部分日志,不建议设置为True
  'formatters': {
    'verbose': {
      'format': '%(levelname)s %(asctime)s %(message)s'#日志格式
    },
    'simple': {
      'format': '%(levelname)s %(message)s'
    },
  },
  'filters': {
    'require_debug_true': {
      '()': 'django.utils.log.RequireDebugTrue',#过滤器,只有当setting的DEBUG = True时生效
    },
  },
  'handlers': {
    'console': {
      'level': 'DEBUG',
      'filters': ['require_debug_true'],
      'class': 'logging.StreamHandler',
      'formatter': 'verbose'
    },
    'file': {#重点配置部分
      'level': 'DEBUG',
      'class': 'logging.FileHandler',
      'filename': '/home/lockey23/myapp/myapp/debug.log',#日志保存文件
      'formatter': 'verbose'#日志格式,与上边的设置对应选择
        }
  },
  'loggers': {
    'django': {#日志记录器
      'handlers': ['file'],
      'level': 'DEBUG',
      'propagate': True,
    }
  },
}

step 2: 实际调用

比如说我们想在某些view中调用logger来记录操作,如下:

import logging
logger = logging.getLogger('django')#这里的日志记录器要和setting中的loggers选项对应,不能随意给参
#接下来就是调用了:
logger.debug('[Debug] '+ msg)
logger.info('[Success] '+ msg)
logger.warning('[Warning] '+ msg)
logger.error('[Error] '+ msg)
logger.critical('[Critical] '+ msg)
......
if auth_pass:
  logger.info('[Success] '+ user +' has logged in!')
  return JsonResponse({'result': 'Success', 'message': 'Login successfully.'})
else:
  logger.warning('[Failed] '+ user + ' failed to login!')

希望本文所述对大家基于Django框架的Python程序设计有所帮助。

 类似资料:
  • 本文向大家介绍django框架创建应用操作示例,包括了django框架创建应用操作示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了django框架创建应用操作。分享给大家供大家参考,具体如下: 18.1.5  安装Django 安装Django 18.1.6  在Django 中创建项目: /django/mysite/learning_log/learning_log 18.1.7

  • 本文向大家介绍python+logging+yaml实现日志分割,包括了python+logging+yaml实现日志分割的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了python+logging+yaml实现日志分割的具体代码,供大家参考,具体内容如下 1、建立log.yaml文件 2、在自己的app.py中引用log.yaml 之后就可以在需要日志的业务节点上使用logger.

  • 本文向大家介绍Laravel框架实现利用中间件进行操作日志记录功能,包括了Laravel框架实现利用中间件进行操作日志记录功能的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Laravel框架实现利用中间件进行操作日志记录功能。分享给大家供大家参考,具体如下: 利用中间件进行操作日志记录过程: 1、创建中间件 2、生成了文件./app/Http/Middleware/AdminOperat

  • 本文向大家介绍PHP的Yii框架的常用日志操作总结,包括了PHP的Yii框架的常用日志操作总结的使用技巧和注意事项,需要的朋友参考一下 日志 Yii提供了一个高度自定义化和高扩展性的日志框架。根据使用场景的不同,你可以很容易的对各种消息就行记录、过滤、合并,比如说文本文件,数据库文件,邮件。 使用Yii的日志框架包含如下步骤: 调用日志记录的方法 在主应用的配置文件(例如basic下面的web.p

  • 主要内容:GWT 日志框架 介绍,记录器的类型,日志处理程序, GWT 日志框架 示例GWT 日志框架 介绍 日志框架模拟 java.util.logging,因此它使用与服务器端日志代码相同的语法和行为 GWT 日志记录是使用 .gwt.xml 文件配置的。 我们可以配置启用/禁用日志记录;我们可以启用/禁用特定处理程序,并更改默认日志记录级别。 记录器的类型 记录器以树结构组织,根记录器位于树的根部。 记录器的名称使用 确定父/子关系。分隔名称的各个部分。 例如,如果我们有两个

  • 主要内容:日志记录框架概述,记录器对象,严重程度在编程中的日志是指记录活动/事件。通常,应用程序开发人员应该负责日志记录。 为了使日志记录更容易,Java提供了各种框架 - log4J,java.util.logging(JUL), tiny log,logback等。 日志记录框架概述 日志框架通常包含三个元素 - 记录仪 - 捕获消息和元数据。 格式化 - 格式化记录器捕获的消息。 处理器 - 或最终通过在控制台上打印或通过存储在数据库中或