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

 更新时间:2019年05月17日 11:35:10   作者:Lockeyi  
这篇文章主要介绍了Python Django框架实现应用添加logging日志操作,结合实例形式分析了Django框架中添加Python内建日志模块相关操作技巧,需要的朋友可以参考下

本文实例讲述了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程序设计有所帮助。

相关文章

  • python中multiprosessing模块的Pool类中的apply函数和apply_async函数的区别

    python中multiprosessing模块的Pool类中的apply函数和apply_async函数的区别

    这篇文章主要介绍了python中multiprosessing模块的Pool类中的apply函数和apply_async函数的区别、文章围绕主题的相关内容展开详细介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-06-06
  • pandas 数据类型转换的实现

    pandas 数据类型转换的实现

    这篇文章主要介绍了pandas 数据类型转换的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • Django添加bootstrap框架时无法加载静态文件的解决方式

    Django添加bootstrap框架时无法加载静态文件的解决方式

    这篇文章主要介绍了Django添加bootstrap框架时无法加载静态文件的解决方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • Python装饰器用法实例分析

    Python装饰器用法实例分析

    这篇文章主要介绍了Python装饰器用法,结合实例形式分析了带参数装饰器、无参数装饰器等相关实现与使用技巧,需要的朋友可以参考下
    2019-01-01
  • Python从函数参数类型引出元组实例分析

    Python从函数参数类型引出元组实例分析

    这篇文章主要介绍了Python从函数参数类型引出元组,结合实例形式分析了Python函数定义与使用中常见的三种参数类型,并简单分析了元组类型参数的使用,需要的朋友可以参考下
    2019-05-05
  • PySide2出现“ImportError: DLL load failed: 找不到指定的模块”的问题及解决方法

    PySide2出现“ImportError: DLL load failed: 找不到指定的模块”的问题及解决方法

    这篇文章主要介绍了PySide2出现“ImportError: DLL load failed: 找不到指定的模块”的问题及解决方法,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2020-06-06
  • 总结Python常用的魔法方法

    总结Python常用的魔法方法

    今天带大家学习Python的相关知识,文中对Python常用的魔法方法作了非常详细的总结,对正在学习python的小伙伴们有很好地帮助,需要的朋友可以参考下
    2021-05-05
  • python验证身份证信息实例代码

    python验证身份证信息实例代码

    这篇文章主要介绍了python验证身份证信息的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • 使用python计算三角形的斜边例子

    使用python计算三角形的斜边例子

    这篇文章主要介绍了使用python计算三角形的斜边例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • Python有序容器的 sort 方法详解

    Python有序容器的 sort 方法详解

    这篇文章主要介绍了Python有序容器的 sort 方法,容器.sort(key=选择排序依据的函数, reverse=True|False) 可以将有序容器进行排序,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-09-09

最新评论