白云岛资源网 Design By www.pvray.com
本文实例讲述了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程序设计有所帮助。
白云岛资源网 Design By www.pvray.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
白云岛资源网 Design By www.pvray.com
暂无评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。