【建议收藏】Log4j配置详解
大家在日常开发中必然会使用到日志组件,Log4j是Java方向上比较常用的日志组件,今天给大家分享下Log4j支持的配置项,强烈建议收藏,以便配置时查看
#展示log4j各种配置,私有部分见文件中注释,公有部分详细注释见文件最后
log4j.rootLogger=DEBUG,console,file,rolling,daily,DATABASE,MAIL #控制台
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} - [%p] - [%l] %m%n #普通文件
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.Encoding=UTF-8
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} - [%p] - [%l] %m%n
log4j.appender.file.File=../logs/file.log
log4j.appender.file.Append=true
log4j.appender.rolling.Threshold=DEBUG #轮转文件
log4j.appender.rolling=org.apache.log4j.RollingFileAppender
log4j.appender.rolling.layout=org.apache.log4j.PatternLayout
log4j.appender.rolling.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} - [%p] - [%l] %m%n
log4j.appender.rolling.Append=true
log4j.appender.rolling.Encoding=UTF-8
log4j.appender.rolling.Threshold=DEBUG
#表示最多保存10个日志文件
log4j.appender.rolling.MaxBackupIndex=10
log4j.appender.rolling.File=../logs/rolling.log
log4j.appender.rolling.MaxFileSize=10MB #按日期区分
log4j.appender.daily=org.apache.log4j.DailyRollingFileAppender
log4j.appender.daily.layout=org.apache.log4j.PatternLayout
log4j.appender.daily.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} - [%p] - [%l] %m%n
log4j.appender.daily.Append=true
log4j.appender.daily.Encoding=UTF-8
log4j.appender.daily.Threshold=DEBUG
log4j.appender.daily.File=../logs/daily.log
# 表示重开文件的频率
# yyyy-MM,对应monthly(每月)
# yyyy-ww,对应weekly(每周)
# yyyy-MM-dd,对应daily(每天)
# yyyy-MM-dd-a,对应half-daily(每半天)
# yyyy-MM-dd-HH,对应hourly(每小时)
# yyyy-MM-dd-HH-mm,对应minutely(每分钟)
# 不用处理的文字放在单引号之间
log4j.appender.daily.DatePattern='.'yyyy-MM-dd'.log' #写入数据库
log4j.appender.DATABASE=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.DATABASE.URL=jdbc:mysql://localhost:3306/test
log4j.appender.DATABASE.driver=com.mysql.jdbc.Driver
log4j.appender.DATABASE.user=root
log4j.appender.DATABASE.password=root
log4j.appender.DATABASE.sql=INSERT INTO test (text) VALUES ('%d{yyyy-MM-dd HH:mm:ss} - [%p] - [%l] %m%n')
log4j.appender.DATABASE.layout=org.apache.log4j.PatternLayout
log4j.appender.DATABASE.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} - [%p] - [%l] %m%n #发送邮件
log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender
log4j.appender.MAIL.Threshold=ERROR
log4j.appender.MAIL.From=7610aotian@sina.com
log4j.appender.MAIL.SMTPHost=smtp.sina.com
log4j.appender.MAIL.Subject=Log4J Message
log4j.appender.MAIL.To=7610aotian@sina.com
#发件箱登陆用户名
log4j.appender.MAIL.SMTPUsername=******
#发件箱登陆密码
log4j.appender.MAIL.SMTPPassword=******
log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout
log4j.appender.MAIL.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} - [%p] - [%l] %m%n # 定义输出级别和输出端(A1,A2,A3....)
# DEBUG: 指出细粒度信息事件对调试应用程序是非常有帮助的,就是输出debug的信息.
# INFO: 表明消息在粗粒度级别上突出强调应用程序的运行过程,就是输出提示信息.
# WARN: 表明会出现潜在错误的情形,就是显示警告信息.
# ERROR: 指出虽然发生错误事件,但仍然不影响系统的继续运行.就是显示错误信息.
# FATAL: 指出每个严重的错误事件将会导致应用程序的退出.
# ALL: 是最低等级的,用于打开所有日志记录.
# OFF: 是最高等级的,用于关闭所有日志记录.
# log4j建议只使用五个级别,级别顺序(由低到高): DEBUG < INFO < WARN < ERROR < FATAL
# windows下控制台效率比较差,输出的多了,非常影响服务器性能.
# 调试程序用debug或更低的优先级,这样开发的时候可以尽量输出,方便调试.
# 正式部署之后,可以提高日志的级别,只输出关键信息
log4j.rootLogger=DEBUG,*,*,*,*...... # 定义A1输出到控制器
# ConsoleAppender:写到控制台
# FileAppender:写到指定的文件中
# DailyRollingFileAppender:把Log信息输出到按照日期来区分的文件中,每天产生一个log文件
# RollingFileAppender:文件大小到达指定尺寸的时候产生一个新的文件
# WriterAppender:将日志信息以流格式发送到任意指定的地方(需要配合代码进行,不常用)
# JDBCAppender:输出日志文件到数据库
# SMTPAppender:发送到指定邮箱
log4j.appender.*=org.apache.log4j.ConsoleAppender # 定义A1的布局模式
# HTMLLayout:以HTML表格形式布局
# PatternLayout:可以灵活地指定布局模式,就是可以自定义输出样式
# SimpleLayout:包含日志信息的级别和信息字符串
# TTCCLayout:包含日志产生的时间、线程、类别等等信息
log4j.appender.*.layout=org.apache.log4j.PatternLayout # 定义A1的输出格式
# %m 输出代码中指定的消息
# %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
# %r 输出自应用启动到输出该log信息耗费的毫秒数
# %t 输出产生该日志事件的线程名;
# %n 输出一个回车换行符,Windows平台为"\r\n",Unix平台为"\n"
# %d 输出日志时间的日期或时间,默认格式为ISO8601,也可以在其后指定格式
# %c 输出所属的类目,通常就是所在类的全名,如“iNotes.Default”;
# %l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数
# %L 输出代码中的行数;
# %F 输出代码中的文件名;
log4j.appender.*.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} - [%p] - [%l] %m%n

【建议收藏】Log4j配置详解的更多相关文章
- Log4j配置详解之log4j.xml
Log4j配置详解之log4j.xml Log4J的配置文件(Configuration File)就是用来设置记录器的级别.存放器和布局的,它可接key=value格式的设置或xml格式的设置信息. ...
- log4j日志输出到日志文件中和控制台中 +log4j配置详解
1.引入log4j的jar包 https://mvnrepository.com/,可以找到log4j的jar和依赖. 2.创建log4j.properties,并配置log4j #设置日志的级别 , ...
- Log4j配置详解(转)
一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...
- log4j配置详解[http://www.iteye.com/topic/378077]
log4j是一个非常强大的log记录软件,下面我们就来看看在项目中如何使log4j. 首先当然是得到log4j的jar档,推荐使用1.2.X版,下载地址: http://logging.apache. ...
- log4j 配置详解
参考如下两个网址,讲的很详细,先看第一个再看第二个: log4j使用介绍:http://swiftlet.net/archives/683 java日志处理组件log4j--log4j.xml配置详解 ...
- log4j配置详解(非常详细)
Log4J的配置文件(Configuration File)就是用来设置记录器的级别.存放器和布局的,它可接key=value格式的设置或xml格式的设置信息.通过配置,可以创建出Log4J的运行环境 ...
- (二) Log4j 配置详解
第一节: rootLogger 根配置 Log4j 根配置语法 log4j.rootLogger = [ level ] , appenderName, appenderName, … 指代 把指定级 ...
- (二)log4j 配置详解
原文链接:https://blog.csdn.net/liupeifeng3514/article/details/79625013 1.配置根logger log4j.rootLogger = de ...
- log4j配置详解
Log4J的配置文件(Configuration File)就是用来设置记录器的级别.存放器和布局的,它可接key=value格式的设置或xml格式的设置信息.通过配置,可以创建出Log4J的运行环境 ...
- Log4j配置详解及不同的包(package)下的日志写入到不同的日志文件下
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt262 以下都是log4j.properties要写入的内容: 一:参数介绍: ...
随机推荐
- ACM-CodeForces-#685(Div.2)
好久没见过CF有这么水的contest了,蒟蒻赶紧找找自信 A. Subtract or Divide #include<iostream> using namespace std; in ...
- 关于Java中的异常处理(详细)
Error:Java虚拟机无法解决的严重问题.如:JVM系统内部错误.资源耗尽等严重情况.比如:StackOverflowError和OOM.一般不编写针对性的代码进行处理 Exception:其它因 ...
- java -- Object类和String类
Object类 java.lang.Object类是Java语言中的根类,每个类都使用 Object 作为超类, 所有的类都直接或间接继承自 Object 类.所有对象(包括数组)都实现这个类的方法. ...
- [数据库/MYSQL]MYSQL开启Bin-Log
1 概述: MYSQL数据库的二进制日志----bin log 什么是二进制日志(binlog)? MySQL的二进制日志binlog,可以说是MySQL最重要的日志,它记录了所有的DDL和DML语句 ...
- 四月十号java知识点
1.数组:若干个相同数据类型元素按照一定顺序排列的集合2.JAVA语言内存分为栈内存和堆内存3.方法中的一些基本类型变量和对象的引用变量都在方法中的栈内存中分配4.堆内存用来存放new运算符创建的数组 ...
- LeeCode链表问题(一)
本文中所使用的链表定义如下所示: # Definition for singly-linked list. class ListNode: def __init__(self, val=0, next ...
- Python 使用QQ 邮箱进行发送邮件及经验总结
今天我带大家实现下简单的发邮件功能.我们要使用到email和smtplib库,这两个库时python自带的,直接import 引用就好了,实现环境python3.6. 对QQ邮箱进行开启SMTP服务 ...
- javasec(三)类加载机制
这篇文章介绍java的类加载机制. Java是一个依赖于JVM(Java虚拟机)实现的跨平台的开发语言.Java程序在运行前需要先编译成class文件,Java类初始化的时候会调用java.lang. ...
- Typora 最新中文版安装破解V1.4.8
Typora中文破解版是一款好用极简免费的跨平台Markdown编辑器,软件使用这款软件能够帮助用户轻松将文本转换到HTML,软件从底层向上设计,软件支持markdown的标准语法,同时这款软件还支持 ...
- ray-分布式计算框架-集群与异步Job管理
0. ray 简介 ray是开源分布式计算框架,为并行处理提供计算层,用于扩展AI与Python应用程序,是ML工作负载统一工具包 Ray AI Runtime ML应用程序库集 Ray Core 通 ...