log4j日志配置和使用
一、日志配置变量参数说明
1. 日志设置说明:
# log4j.rootLogger = debug,stdout,D,E
# 等号之后的值表示appender对象,每个apperder对象表示一个日志输出类型
# log4j.appender 之后的值是自定义的,表示输出的类型名称,具体的定义语法如下:
# log4j.appender.自定义的输出类型名.属性名=属性值
# 例如:log4j.appender.db 自定义输出类型名称为 db,如果db表示数据库 ,log4j.appender.db.url 表示数据库的url地址
# 目的地由后面的类决定:
# org.apache.log4j.ConsoleAppender 控制台
# org.apache.log4j.FileAppender 文件,文件路径及名称 若没有则自动创建
# 文件子类 org.apache.log4j.RollingFileAppender 按日志的大小滚动拆分日志文件
# 文件子类 org.apache.log4j.DailyRollingFileAppender 按一定的时间频率滚动拆分日志记录文件
# org.apache.log4j.jdbc.JDBCAppender 数据库
2. 输出到文件时的设置:
# log4j.appender.file 输出file是文件
# 常见属性有:
# log4j.appender.file.File 日志存储位置,例如:log4j.appender.E.File =D://WorkSpace/logs/error.log
# .Append 追加方式写入文件,默认为true
# .Threshold 写入的日志级别
# .layout 日志布局方式
# .conversionPattern 日志格式
# .ImmediateFlush true表示所有消息都会被立即输出,为false则不输出
# RollingFileAppender 类型还有下列参数:
# .maxFileSize 默认值是10MB,日志回滚最大值 例如:log4j.appender.FILE.MaxFileSize=1KB
# .maxBackupIndex 默认值是1,日志文件备份个数 例如:log4j.appender.FILE.MaxBackupIndex=1
# 说明:每个日志文件的最大值为1KB。最开始创建日志文件log.out,当超过日志文件最大值时,
# log.out.1新的日志文件将被创建。同时,log.out中的日志转移到log.out.1中(备份文件设置为1)。
# log.out日志文件永远写入最新日志
# DailyRollingFileAppender 类型还有下列参数:
# .DatePattern=‘.’yyyy-MM 每月 ‘.’yyyy-ww 每星期
# ‘.’yyyy-MM-dd 每天 ‘.’yyyy-MM-dd-a 每半天
# ‘.’yyyy-MM-dd-HH 每小时 ‘.’yyyy-MM-dd-HH-mm 每分钟
3. org.apache.log4j.db 输出到数据库
# 常见属性:
# .driver 设置驱动程序类为指定的字符串。如果没有指定驱动程序类,默认为sun.jdbc.odbc.JdbcOdbcDriver
# .url 设置JDBC URL
# .user 数据库用户名
# .password 数据库用密码
# .sql 指定SQL语句,在每次记录事件发生的时间执行。这可能是INSERT,UPDATE或DELETE 例如:INSERT INTO LOGS VALUES('%t','%d{yyyy-MM-dd}','%C','%p','%m')
# .bufferSize 设置缓冲区的大小。默认大小为1
# .layout 设置要使用的布局。默认布局org.apache.log4j.PatternLayout
二、配置示例
# 设置日志输出类型
log4j.rootLogger = debug,stdout,debug,error,db
# 输出信息到控制台
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
# 输出格式
log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss, SSS} method:%l%n%m%n
# 输出 debug 级别以上的日志到D://sun//logs/error/debug.log
log4j.appender.debug = org.apache.log4j.RollingFileAppender
log4j.appender.debug.File = D://sun//logs/debug/debug.log
log4j.appender.debug.Append = true
log4j.appender.debug.Threshold = DEBUG
log4j.appender.debug.maxFileSize=10kb
log4j.appender.debug.maxBackupIndex=1
log4j.appender.debug.layout = org.apache.log4j.PatternLayout
# 打印 debug 信息格式
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
#输出 error 级别以上的日志到 D://sun//logs/error/error.log
log4j.appender.error = org.apache.log4j.DailyRollingFileAppender
log4j.appender.error.File =D://sun//logs/error/error.log
log4j.appender.error.Append = true
log4j.appender.error.Threshold = ERROR
log4j.appender.error.DatePattern='.'yyyy-MM-dd-HH-mm
log4j.appender.error.layout = org.apache.log4j.PatternLayout
# 打印ERROR信息格式
log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
#将日志保存到数据库
log4j.appender.DB=org.apache.log4j.jdbc.JDBCAppender
# url链接
log4j.appender.DB.URL=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
# 驱动
log4j.appender.DB.driver=com.mysql.cj.jdbc.Driver
# 用户名
log4j.appender.DB.user=root
# 密码
log4j.appender.DB.password=123456
# 日志插入数据库 %d 日期 %C 类名 %p 优先级 %m 日志信息
log4j.appender.DB.sql=INSERT INTO LOGS VALUES('%t','%d{yyyy-MM-dd HH:mm:ss}','%C','%p','%m')
# 日志布局方式
log4j.appender.DB.layout=org.apache.log4j.PatternLayout
log4j日志配置和使用的更多相关文章
- Log4J日志配置详解
一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...
- (转)Log4J日志配置详解
http://www.cnblogs.com/ITtangtang/p/3926665.html 一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源 ...
- java Log4j日志配置详解大全
一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...
- Spark log4j日志配置详解(转载)
一.spark job日志介绍 spark中提供了log4j的方式记录日志.可以在$SPARK_HOME/conf/下,将 log4j.properties.template 文件copy为 l ...
- Log4J日志配置详解[转]
一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...
- Log4J日志配置与Juit测试
一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器).Appenders(输出源)和Layouts(布局). 这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...
- log4j 日志配置和jar包下载
1.日志log4j文件配置 ${webapp.root}才是项目根目录log4j.appender.logfile.File= ${catalina.home}/log/filter.log 指生成日 ...
- tomcat 6.x + log4j日志配置并按天(或大小)生成文件
tomcat日志,默认路径在${catalina.home}/logs目录下,默认使用的是tomcat自己封装的logging工具类,默认配置文件使用的${catalina.home}/conf/ ...
- Log4J日志配置具体解释
一.Log4j简单介绍 Log4j有三个基本的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综 ...
- springboot 关于log4j日志配置
自动加载配置文件:(1)如果采用log4j输出日志,要对log4j加载配置文件的过程有所了解.log4j启动时,默认会寻找source folder下的log4j.xml配置文件,若没有,会寻找log ...
随机推荐
- HDU 5428:The Factor
The Factor Accepts: 101 Submissions: 811 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65 ...
- form——验证器Validators
form表单最大的作用就是验证功能了,通过cleaned_data清洗,我们可以获取传来的值,通过参数.验证器.自定义验证方法,我们可以做到很多的验证. 验证器可用于在不同类型的字段之间重用验证逻辑. ...
- JZOJ-2019-11-5 B组
T1 给出一二维01矩阵\(f_{i,j}\), 定义点\((x_a, y_a), (x_b, y_b)\)的「距离」为\(max\{|x_a-x_b|, |y_a-y_b|\}\) 求出一矩阵\(w ...
- Arduino IIC 主从设备连接通信
目的: 实现Arduino主从设备之间的互相IIC通信,掌握IIC通信协议的使用方法. 器材: Arduino UNO R3 一块 Arduino Nano 三块 面包板 导线 3K ...
- 腾讯大佬告诉你,写Python到底用什么IDE合适
不管你是 Python 新手还是老鸟,肯定纠结过一个问题: 到底用什么编辑器写 Python 代码好? 为此,我们调查了数十位鹅厂程序猿们爱用的 Python IDE,从他们对每款编辑器的看法中,也许 ...
- LeetCode——139. 单词拆分
给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词. 说明: 拆分时可以重复使用字典中的单词. 你可以假设字典中没有重复 ...
- Eclipse 配置spring boot pom.xml第1行报错的两种解决办法
现象 通过spring boot项目导入eclipse后,pom.xml文件的第一行总是报错.这里使用的spring版本是2.1.5,2.1.4以前的版本等其他版本的spring没有这个问题. 解决办 ...
- mysql字符集配置&mysql中文乱码
问题描述 这两天重置了下自己的电脑系统,一个ubuntu,另外一个当然就是windows. 不过在运行程序的时候发现,出现了很多的"????",也就是乱码字符.毫无疑问,这定然是m ...
- vue打包空白及字体路径错误问题
vue项目打包后空白 在config/index.js文件中 assetsPublicPath: '/', 改为 assetsPublicPath: './', build: { // Templat ...
- php empty,isset,is_null判断比较(差异与异同)
php empty,isset,is_null判断比较(差异与异同) 作者: 字体:[增加 减小] 类型:转载 做php开发时候,想必在使用:empty,isset,is_null 这几个函数时候,遇 ...