logging配置

settings.py

# Django的日志配置项

BASE_LOG_DIR = os.path.join(BASE_DIR, "log")LOGGING = {'version': 1,  # 保留字'disable_existing_loggers': False,  # 禁用已经存在的logger实例# 日志文件的格式'formatters': {# 详细的日志格式'standard': {'format': '[%(asctime)s][%(threadName)s:%(thread)d][task_id:%(name)s][%(filename)s:%(lineno)d]''[%(levelname)s][%(message)s]'},# 简单的日志格式'simple': {'format': '[%(levelname)s][%(asctime)s][%(filename)s:%(lineno)d]%(message)s'},# 定义一个特殊的日志格式'collect': {'format': '%(message)s'}},# 过滤器'filters': {'require_debug_true': {'()': 'django.utils.log.RequireDebugTrue',},},# 处理器'handlers': {# 在终端打印'console': {'level': 'DEBUG','filters': ['require_debug_true'],  # 只有在Django debug为True时才在屏幕打印日志'class': 'logging.StreamHandler',  #
            'formatter': 'simple'},# 默认的'default': {'level': 'INFO','class': 'logging.handlers.RotatingFileHandler',  # 保存到文件,自动切'filename': os.path.join(BASE_LOG_DIR, "xxx_info.log"),  # 日志文件'maxBytes': 1024 * 1024 * 50,  # 日志大小 50M'backupCount': 3,  # 最多备份几个'formatter': 'standard','encoding': 'utf-8',},# 专门用来记错误日志'error': {'level': 'ERROR','class': 'logging.handlers.RotatingFileHandler',  # 保存到文件,自动切'filename': os.path.join(BASE_LOG_DIR, "xxx_err.log"),  # 日志文件'maxBytes': 1024 * 1024 * 50,  # 日志大小 50M'backupCount': 5,'formatter': 'standard','encoding': 'utf-8',},# 专门定义一个收集特定信息的日志'collect': {'level': 'INFO','class': 'logging.handlers.RotatingFileHandler',  # 保存到文件,自动切'filename': os.path.join(BASE_LOG_DIR, "xxx_collect.log"),'maxBytes': 1024 * 1024 * 50,  # 日志大小 50M'backupCount': 5,'formatter': 'collect','encoding': "utf-8"}},'loggers': {# 默认的logger应用如下配置'': {'handlers': ['default', 'console', 'error'],  # 上线之后可以把'console'移除'level': 'DEBUG','propagate': True,  # 向不向更高级别的logger传递
        },# 名为 'collect'的logger还单独处理'collect': {'handlers': ['console', 'collect'],'level': 'INFO',}},
}
Django的日志配置项

 

log  (根目录创建log文件夹)

views.py  (app)

import logging
# 生成一个以当前文件名为名字的logger实例
logger = logging.getLogger(__name__)
# 生成一个名为collect的logger实例
collect_logger = logging.getLogger("collect")
import logging
logger.debug("一个萌萌的请求过来了。。。。")
logger.info("一个更萌的请求过来了。。。。")collect_logger.info("筠姐吃醋了!")
collect_logger.info("对子哈特")
View Code

 

转载于:https://www.cnblogs.com/nick477931661/p/8778194.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/353839.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

定制Spring Data JPA存储库

Spring Data是一个非常方便的库。 但是,由于该项目是一个相当新的项目,因此功能不佳。 默认情况下,Spring Data JPA将基于SimpleJpaRepository提供DAO的实现。 在最近的项目中,我开发了一个定制的存储库基类,以便可以在…

ubuntu+eclipse+svn

ubuntueclipsesvn 2010-06-23 16:02:32| 分类: 默认分类 |字号 订阅 昨天装了一天的CVS,但是始终无法启动CVSD,防火墙也没有开,不知道是什么原因,无奈之下只好转向了SVN,也当是学习一下~~&…

Log4j 2.x XSD的描述不完整

在博客文章JAXB和Log4j XML配置文件中 ,我讨论了“与使用JAXB通过Java类处理[Log4j 1.x和Log4j 2.x] XML配置文件相关的细微差别。” 在本文中,我将探讨另一个与通过Log4j 2.x XML Schema文件Log4j-config.xsd生成的JAXB对象生成Log4j 2.x配置XML相关的挑…

Protobuf学习笔记

Protobuf学习笔记 Posted by iamxhuon 2012/05/22 Leave a comment (0)Go to commentsProtocol buffers是什么? 首先了解一下Protocol Buffers(简称ProtoBuf)是什么?官网对它的定义如下: Protocol buffers are Google’s language-neutral, …

如何掌握Java内存(并保存程序)

通过AppDynamics解决应用程序问题的速度提高了10倍–以最小的开销在代码级深度监视生产应用程序。 开始免费试用! 您花了无数小时来研究Java应用程序中的错误并在需要的地方获得其性能。 在测试期间,您注意到应用程序随着时间的推移逐渐变慢&#xff0c…

程序集版本号

程序集版本号分为4段,例如1.0.4.23。 第一段为主版本号,项目一但启动则不会更改。 第二段为次版本号,在项目功能做较大调整时增加,增量为1。 第三段为修订版本号,通常在解决缺陷或者细微功能变化时增加,增量…

py-kms使用方法

搭建py-kms服务器,先下载py-kms https://github.com/myanaloglife/py-kms 启动py-kms服务(需要服务器安装有python): python server.py 这样py-kms服务就启动好了,如果需要后台运行可以制作deamon脚本。 py-kms可以激活企业/专业版vl windows系统和vol版本的office软件: window…

JAVA泛型--待续

原做法&#xff1a; Map m new HashMap();m.put("key", "blarg");String s (String) m.get("key"); 泛型做法&#xff1a; Map<K,V> m new HashMap()<K,V>;m.put("key", "blarg");//非<K,V>类型无法操…

Tortoise SVN 版本控制常用操作知识

Tortoise SVN 版本控制常用操作知识 Posted on 2010-11-26 23:07 szh114 阅读(5897) 评论(0) 编辑 收藏 今天老大跑过来问我如何把SVN服务器上的当前版本回退到某一个版本上去&#xff0c;我没回答上来&#xff0c;很失败&#xff0c;所以现在整理一下Tortoise SVN的操作知识&…

如何导入任何JBoss BRMS示例项目

在过去几周内&#xff0c;JBoss BRMS演示的用户反复询问我以下内容时&#xff0c;会给您这些提示和技巧&#xff1a; “如何将与各种JBoss BRMS演示项目相关的项目导入到我自己的现有安装中&#xff1f;” 这意味着用户希望在产品的个人安装中有一个示例项目&#xff0c;而无…

2110: 扫雷

http://acm.zcmu.edu.cn/JudgeOnline/problem.php?id2110 2110: 扫雷 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 88 Solved: 36[Submit][Status][Web Board]Description 扫雷游戏你一定玩过吧&#xff01;现在给你若干个nm的地雷阵&#xff0c;请你计算出每个矩阵中每…

使用eclipse生成文档(javadoc)

使用eclipse生成文档&#xff08;javadoc&#xff09;主要有三种方法&#xff1a; 1&#xff0c;在项目列表中按右键&#xff0c;选择Export&#xff08;导出&#xff09;&#xff0c;然后在Export(导出)对话框中选择java下的javadoc&#xff0c;提交到下一步。 在Javadoc Gene…

青椒苗

转载于:https://www.cnblogs.com/wainiwann/p/8793418.html

更改日志级别_如何在运行时更改日志记录级别

更改日志级别在运行时中更改日志记录级别非常重要&#xff0c;这主要在生产环境中非常重要&#xff0c;在生产环境中&#xff0c;您可能希望在有限的时间内进行调试日志记录。 好了&#xff0c;更改根记录器非常简单–假设您有一个具有所需记录级别的输入参数&#xff0c;只需…

JDBC和Ibatis中的Date,Time,Timestamp处理

JDBC和Ibatis中的Date,Time,Timestamp处理 November 25th, 2010西坪 Leave a commentGo to comments在此前&#xff0c;遇到过使用Ibatis操作Oracle时时间精度丢失的问题&#xff0c;昨天又遇到JDBC操作MySQL时间字段的问题&#xff0c;从网上看到各种式样的解释这些问题的博文…

每日算法之抽签

X星球要派出一个5人组成的观察团前往W星。其中&#xff1a;A国最多可以派出4人。B国最多可以派出2人。C国最多可以派出2人。....那么最终派往W星的观察团会有多少种国别的不同组合呢&#xff1f;下面的程序解决了这个问题。数组a[] 中既是每个国家可以派出的最多的名额。程序执…

如何开始Java机器学习

什么是开始使用Java机器学习的最佳工具&#xff1f; 他们已经存在了一段时间&#xff0c;但如今看来&#xff0c;每个人都在谈论人工智能和机器学习。 对于科学家和研究人员而言&#xff0c;它已不再是秘密&#xff0c;几乎可以在任何新兴技术中实现。 在下面的文章中&#x…

keil中关于使用_at_绝对地址定位问题

keil中关于使用_at_绝对地址定位问题 2008-01-07 13:46:26| 分类&#xff1a; MCU51 | 标签&#xff1a; |字号大中小 订阅 在网上看到有人提到在keil中使用_at_进行绝对地址定位问题&#xff0c;我简单介绍一下它的用法。 使用_at_关键字对存储器进行绝对地址定位程序…

ztree树

常规的ztree树 后台数据封装成list对象 public PageModel getTreeBuildingRegData(Map<String, String> params) {PageModel pageModelnew PageModel();String statusparams.get("status");String orgIdparams.get("org_id");List<OmsBuildingReg…

如何提高效率

如何提高效率 时间管理 April 28th, 2011 本文来自读者 桃雨 翻译投稿。 Aaron Swartz写过一篇很有名的文章&#xff0c;叫做《HOWTO: Be more productive》&#xff08;如何提高效率&#xff09;。这篇文章写的实在是太好了&#xff0c;我看了好多遍&#xff0c;很赞同作者的…