log4j 打印日志
# Set log levels # 设置日志级别
log4j.rootLogger = INFO, DebugFile,Console, LogFile, ErrorFile
## Disable other log 禁用其他日志
#log4j.logger.org.mybatis=DEBUG
log4j.logger.cn.vfinance.open.esb.appmanage.dao=ON
log4j.logger.cn.vfinance.open.job.dao=OFF
log4j.logger.cn.vfinance.open.job.schedule=OFF
log4j.logger.cn.vfinance.open.esb.core=OFF
log4j.logger.org.springframework.jdbc.datasource=OFF
# Output the log info to the Java Console # 将日志信息输出到Java控制台
log4j.appender.Console = org.apache.log4j.ConsoleAppender 输出日志和信息到控制台
log4j.appender.Console.Target = System.out 默认情况下是:System.out,指定输出控制台
log4j.appender.Console.ImmediateFlush = true 默认值是true,所有的消息都会被立即输出
log4j.appender.Console.Threshold = INFO 输出INFO级别以上的日志
log4j建议只使用4个级别,它们从上到下分别为ERROR、WARN、INFO、DEBUG,假设你定义的级别是info,那么error和warn的日志可以显示而比他低的debug信息就不显示了。
log4j.appender.Console.layout = org.apache.log4j.PatternLayout //灵活地指定布局模式
log4j.appender.Console.layout.ConversionPattern = %d{MM-dd HH:mm:ss} [%p] [%t] [%c(%r)] %m%n
设置了PatternLayout灵活指定格式,则要指定打印参数 [%-5p][%d{HH:mm:ss}][%l] %m%n
# Save the log debug to the log file # 将日志调试保存到日志文件
log4j.appender.DebugFile = org.apache.log4j.RollingFileAppender
文件大小到达指定尺寸的时候产生一个新的文件
log4j.appender.DebugFile.File = /data/logs/laser/paas/laser/debug/debug.log
定义名为DebugFile的输出端的文件名为D:///data/logs/laser/paas/laser/error/error.log可以自行修改。
log4j.appender.DebugFile.Append = true 默认值是true,即将消息增加到指定文件中,false指将消息覆盖指定的文件内容。
log4j.appender.DebugFile.ImmediateFlush = true 默认值是true,所有的消息都会被立即输出
log4j.appender.DebugFile.MaxFileSize = 8MB 指定文件的最大
log4j.appender.DebugFile.MaxBackupIndex = 256 日志最大备份数目
log4j.appender.DebugFile.Threshold = INFO 输出INFO级别以上的日志
log4j.appender.DebugFile.layout = org.apache.log4j.PatternLayout 灵活地指定布局模式
log4j.appender.DebugFile.layout.ConversionPattern = %d{MM-dd HH:mm:ss} [%p] [%t] [%c(%r)] %m%n
设置了PatternLayout灵活指定格式,则要指定打印参数 [%-5p][%d{HH:mm:ss}][%l] %m%n
%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921
# Save the log debug to the log file# 将日志调试保存到日志文件
log4j.appender.LogFile = org.apache.log4j.RollingFileAppender 文件大小到达指定尺寸的时候产生一个新的文件
log4j.appender.LogFile.File = /data/logs/laser/paas/laser/info/log.log 定义名为LogFile的输出端的文件名为/data/logs/laser/paas/laser/error/error.log可以自行修改。
log4j.appender.LogFile.Append = true 默认值是true,即将消息增加到指定文件中,false指将消息覆盖指定的文件内容。
log4j.appender.LogFile.ImmediateFlush = true 默认值是true,所有的消息都会被立即输出
log4j.appender.LogFile.MaxFileSize = 8MB 指定文件的最大
log4j.appender.LogFile.MaxBackupIndex = 256 日志最大备份数目
log4j.appender.LogFile.Threshold = INFO 输出INFO级别以上的日志
log4j.appender.LogFile.layout = org.apache.log4j.PatternLayout 灵活地指定布局模式
log4j.appender.LogFile.layout.ConversionPattern = %d{MM-dd HH:mm:ss} [%p] [%t] [%c(%r)] %m%n
设置了PatternLayout灵活指定格式,则要指定打印参数 [%-5p][%d{HH:mm:ss}][%l] %m%n
# Save the error info to the error file. A file one day. #
将错误信息保存到错误文件中。一天的文件
log4j.appender.ErrorFile = org.apache.log4j.DailyRollingFileAppender
定义名为ErrorFile的输出端的类型为每天产生一个日志文件。
log4j.appender.ErrorFile.File = /data/logs/laser/paas/laser/error/error.log
定义名为ErrorFile的输出端的文件名为/data/logs/laser/paas/laser/error/error.log可以自行修改。
log4j.appender.ErrorFile.DatePattern='.'yyyy-MM-dd
每天滚动一次文件,即每天产生一个新的文件。当然也可以指定按月、周、天、时和分
log4j.appender.ErrorFile.Append = true
默认值是true,即将消息增加到指定文件中,false指将消息覆盖指定的文件内容。
log4j.appender.ErrorFile.ImmediateFlush = true 默认值是true,所有的消息都会被立即输出
log4j.appender.ErrorFile.Threshold = ERROR 输出INFO级别以上的日志
log4j.appender.ErrorFile.layout = org.apache.log4j.PatternLayout 灵活地指定布局模式
log4j.appender.ErrorFile.layout.ConversionPattern =%d{MM-dd HH\:mm\:ss} [%p] [%t] [%c(%r)] %m%n
如果使用pattern布局就要指定的打印信息的具体格式ConversionPattern,打印参数如下:
%m 输出代码中指定的消息
%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
%r 输出自应用启动到输出该log信息耗费的毫秒数
%c 输出所属的类目,通常就是所在类的全名
%t 输出产生该日志事件的线程名
%n 输出一个回车换行符,Windows平台为“rn”,Unix平台为“n”
%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921
%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。*/
配置信息解释:
Log4j由三个重要的组件构成:日志信息的优先级,日志信息的输出目的地,日志信息的输出格式。
日志信息的优先级从高到低有ERROR、WARN、 INFO、DEBUG,分别用来指定这条日志信息的重要程度;
日志信息的输出目的地指定了日志将打印到控制台还是文件中;而输出格式则控制了日志信息的显示内容
logger是进行记录的主要类,appender是记录的方式,layout是记录的格式
此句为定义名为ErrorFile的输出端的layout是哪种类型,可以是
org.apache.log4j.HTMLLayout(以HTML表格形式布局),
org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)*/
log4j.rootLogger = [ level ], appendName1, appendName2, …appendNameN。同一个记录器可有多个输出端。
1、level的级别(此级别可以自定义,系统默认提供了以下级别):
debug//调试信息
info//一般信息
warn//警告信息
error//错误信息
fatal//致命错误信息
上面列出的就是所谓log4j的输出级别,log4j建议只使用4个级别,它们从上到下分别为ERROR、WARN、INFO、DEBUG,假设你定义的级别是info,那么error和warn的日志可以显示而比他低的debug信息就不显示了。
2、log4j.appender.appenderName = fully.qualified.name.of.appender.class。log4j提供了以下几种常用的输出目的地:
org.apache.log4j.ConsoleAppender,将日志信息输出到控制台
org.apache.log4j.FileAppender,将日志信息输出到一个文件
org.apache.log4j.DailyRollingFileAppender,将日志信息输出到一个,并且每天输出到一个新的日志文件
org.apache.log4j.RollingFileAppender,将日志信息输出到一个文件,通过指定文件的的尺寸,当文件大小到达指定尺寸的时候会自动把文件改名,如名为example.log的文件会改名为 example.log.1,同时产生一个新的example.log文件。如果新的文件再次达到指定尺寸,又会自动把文件改名为 example.log.2,同时产生一个example.log文件。依此类推,直到example.log. MaxBackupIndex, MaxBackupIndex的值可在配置文件中定义。
org.apache.log4j.WriterAppender,将日志信息以流格式发送到任意指定的地方。
org.apache.log4j.jdbc.JDBCAppender,通过JDBC把日志信息输出到数据库中。
3、Log4j提供了一下几种布局:
org.apache.log4j.HTMLLayout,以HTML表格形式布局
org.apache.log4j.PatternLayout,可以灵活地指定布局模式
org.apache.log4j.SimpleLayout,包含日志信息的级别和信息字符串
org.apache.log4j.TTCCLayout, 包含日志产生的时间、线程、类别等等信息
定义一个PatternLayout布局的语句为:
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
4、log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1} - %m%n
ConversionPattern参数的格式含义
格式名 含义
%c 输出日志信息所属的类的全名
%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy-MM-dd HH:mm:ss },输出类似:2002-10-18- 22:10:28
%f 输出日志信息所属的类的类名
%l 输出日志事件的发生位置,即输出日志信息的语句处于它所在的类的第几行
%m 输出代码中指定的信息,如log(message)中的message
%n 输出一个回车换行符,Windows平台为“\r\n”,Unix平台为“\n”
%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL。如果是调用debug()输出的,则为DEBUG,依此类推
%r 输出自应用启动到输出该日志信息所耗费的毫秒数
%t 输出产生该日志事件的线程名
DatePattern='.'yyyy-ww:每周滚动一次文件,即每周产生一个新的文件。当然也可以指定按月、周、天、时和分。即对应的格式如下:
1)'.'yyyy-MM: 每月
2)'.'yyyy-ww: 每周
3)'.'yyyy-MM-dd: 每天
4)'.'yyyy-MM-dd-a: 每天两次
5)'.'yyyy-MM-dd-HH: 每小时
6)'.'yyyy-MM-dd-HH-mm: 每分钟
org.apache.log4j.ConsoleAppender(控制台)
org.apache.log4j.FileAppender(文件)
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
log4j 打印日志的更多相关文章
- 使用log4j打印日志
在项目中我们必不可少需要打印日志,通过日志我们可以查看系统的运行状态是否正常,当程序出现异常的时候,我们也可以通过查看日志来定位问题的位置,给程序员的工作带来了极大的便利. 以下这边博客的内容是我从一 ...
- 使用 log4j 打印日志
开发阶段:发现程序的问题,排错 产品阶段:记录程序运行的状况 Maven中配置依赖 通过配置文件输出日志的格式,输送的位置等 一.入门实例 1.新建一个JAva工程,导入包log4j-1.2.17.j ...
- log4j打印日志配置
1.所需的jar包 <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifa ...
- Spring boot使用log4j打印日志
先将maven中spring-boot-starter的日志spring-boot-starter-logging去掉 <dependency> <groupId>org.sp ...
- java项目添加log4j打印日志+转换系统时间
1.pom.xml文件引入依赖如下: <dependency> <groupId>org.springframework.boot</groupId> <ar ...
- apache log4j打印日志源码出口
Throwable.class: public void printStackTrace(PrintStream s) { synchronized (s) { s.println(this); St ...
- log4j输出日志乱码(转)
log4j日志文件乱码问题的解决方法 log4j日志文件中文乱码处理方法 log4j 控制台和文件输出乱码问题解决 写在前面,第三篇文章中将原因解释的最清楚,为什么设置为UTF-8或者GBK就生效了, ...
- Log4j配置的经典总结,打印日志文件,日志存库
一.介绍 Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制 日志信息输送的目的地是控制台.文件.GUI组件.甚至是套接口服务 器.NT的事件记录器.UNIX Sy ...
- 使用log4j2打印Log,log4j不能打印日志信息,log4j2不能打印日志信息,log4j和logj2,idea控制台信息乱码(文末)
说来惭愧,今天就写了个"hello world",了解了一下log4j的日志. 本来是想在控制台打印个log信息,也是遇到坎坷重重,开始也没去了解log4j就来使用,log4j配置 ...
随机推荐
- [Linux] day04——Linux 入门
Linux 入门 =================Gnome 基于GTK图形库 速度快 稳定性好 专注与桌面本身 偏商务 RedHat企业版默认桌面KDE 基于QT 速度慢 软件多 习惯接近win ...
- 银行输入密码五次次数限制python程序实现
python银行输入密码五次次数限制程序实现,主要在于对于异常情况的处理语句的编写,需要使用while循环语句和try和except异常处理语句的复合编写语句n=0while n<5: try: ...
- 四、java基础-面向过程_对象_类中可出现的因素
1.面向过程和面向对象区别: 1)面向过程:开发一个应用程序.一个项目,必须先了解整个过程,了解各个步骤.模块间的因果关系,使的面向过程方式去开发程序时,代码和代码之间的关联程度是非常强.所以其中任何 ...
- 转:Nginx 性能优化有这篇就够了!
目录: https://mp.weixin.qq.com/s/YoZDzY4Tmj8HpQkSgnZLvA 1.Nginx运行工作进程数量 Nginx运行工作进程个数一般设置CPU的核心或者核心数x2 ...
- Windows Server 2008 R2 SP1 中IIS7.5 和 TOMCAT7 整合笔记
Windows Server 2008 R2 SP1 中IIS7.5 和 TOMCAT7 整合笔记 来源:www.roak.com 整合文件在百度网盘或博客盘 配置了N次,64位操作系统真坑爹~~~下 ...
- js 中 一些重要的数组方法
今天在学Vue的时候,看到了好多JS的数组方法,但是我不知道,我以为是Vue的方法,结果找了半天资料也没找出来,最后才发现这是JS的数组对象方法,于是就想做一下笔记,加深一下印象. Array 对象方 ...
- 新闻网大数据实时分析可视化系统项目——17、Spark2.X分布式弹性数据集
1.三大弹性数据集介绍 1)概念 2)优缺点对比 2.Spark RDD概述与创建方式 1)概述 在集群背后,有一个非常重要的分布式数据架构,即弹性分布式数据集(resilientdistribute ...
- 变相降价的iPhone,能挽救苹果在中国的命运吗?
人无千日好,花无百样红.当年iPhone的横空出世不仅开辟了智能手机时代,还间接导致了诺基亚.黑莓等手机品牌的没落.十余年来,苹果凭借iPhone活得风光无限,并成为全球首个市值超万亿美元的公司.但进 ...
- git 创建分支并提交代码
1.查看所有分支 git branch -a 2.查看当前分支 git branch 3.新建一个分支 git branch feature-xx 4.切换到新建分支上面 git checkout f ...
- python SSTI tornado render模板注入
原理tornado render是python中的一个渲染函数,也就是一种模板,通过调用的参数不同,生成不同的网页,如果用户对render内容可控,不仅可以注入XSS代码,而且还可以通过{{}}进行传 ...