设为首页 收藏本站
查看: 769|回复: 0

[经验分享] apache log4j实例

[复制链接]

尚未签到

发表于 2016-12-29 10:22:40 | 显示全部楼层 |阅读模式
  闲来无事的时候学习了一下log4j,并写了一个简单的例子,来与大家一同分享!
  到apache官方网站下载log4j的应用
  需要引入log4j.jar

package test;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
public class TestMyLog {
public TestMyLog() { }
private static Logger logger = Logger.getLogger(TestMyLog.class);
static {
PropertyConfigurator.configure(TestMyLog.class.getResource("log4j.properties")); //初始化日志文件,之后相应的日志文件就会被创建
}
public static void main(String[] args) {
logger.debug("debug");logger.info("info");logger.warn("warn");logger.error("error");logger.fatal("fatal") ;
}
}

  log4j.properties文件的编写如下:
  #############################################  
  #格式为log4j.rootLogger = [ level ],appenderName1,appenderName2...
  log4j.rootLogger = debug,stdout,R
#记日志到console中
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
  
log4j.appender.stdout.layout.ConversionPattern =%d{yyyy-MM-dd HH:mm:ss} [%-5p] %C.%M(%L) %n\u4fe1\u606f: %m%n

#记日志到文件中 其中有一些设置 记日志的方式 记录的位置 最大的文件大小 记日志的内容等
log4j.appender.R = org.apache.log4j.RollingFileAppender
log4j.appender.R.File = c:/logs/my.log
log4j.appender.R.MaxFileSize = 20KB
log4j.appender.R.MaxBackupIndex = 1

log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%-5p] %C.%M(%L) %n\u4fe1\u606f: %m%n
#############################################
  说明log4j.properties文件中配置参数所表达的含义
  log4j中有个Appender的接口,表示日志记录的位置,有下面一些实现类
  org.apache.log4j.ConsoleAppender,控制台
org.apache.log4j.FileAppender,文件,可以设置日志文件的参数,比如文件的大小
org.apache.log4j.DailyRollingFileAppender,每天产生一个日志文件,当然不必设定文件的大小等参数信息,反正每天就产生一个日志文件,或大或小
org.apache.log4j.RollingFileAppender,文件大小到达指定尺寸的时候产生一个新的文件,可以设置日志文件的参数,比如文件的大小(log4j.appender.filter.maxfilesize),备份文件的个数(log4j.appender.gilter.maxbackupindex)等
  org.apache.log4j.WriterAppender,将日志信息以流格式发送到任意指定的地方
  此外还有一些不是非常常用的Appender
  org.apache.log4j.SMTPAppender,用于邮件发送
org.apache.log4j.JDBCAppender,用于数据库 
org.apache.log4j.SocketAppender,用于网络传输
  并且有个Layout接口,表示日志记录的样式,有下面的一些实现类
  org.apache.log4j.HTMLLayout,以HTML表格形式布局  
org.apache.log4j.PatternLayout,可以灵活地指定布局模式,比较常用  
org.apache.log4j.SimpleLayout,包含日志信息的级别和信息字符串  
org.apache.log4j.TTCCLayout,包含日志产生的时间、线程、类别等等信息
  说明下上面的ConversionPattern值表示的含义
%d 表示日期,可以设定日期的格式
%p 表示日志级别,DEBUG,INFO,WARN,ERROR,FATAL,为优先级由低到高,如果日志级别设置为DEBUG,则DEBUG级别和之上的日志级别都将会输出,同样,如果日志级别是INFO,则INFO和它之上的日志级别都将会输出
%t 表示输出该日志的线程名
%C 表示类,显示类的全路径
%M 表示方法
%L 表示行号
%n 表示回车换行符,Windows平台为\r\n,Unix平台为\n
\u4fe1\u606f 为unicode编码的字符
%m 表示记录的消息
  此外,log4j.properties文件中并不是大小写敏感的,写成下面的两种形式都是可以的(本人更倾向于小写的形式)
log4j.appender.filter.FILE = log/filter.log
log4j.appender.filter.file = log/filter.log

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-320971-1-1.html 上篇帖子: tomcat+apache 集成 下篇帖子: APACHE集成TOMCAT
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表