1.log 打印异常信息

Logger logger = Logger.getLogger(LoggerTest.class);  //追踪产生此日志的类

Logger extends Category

Category {

public void error(Object message);//print the name of the  Throwable  but no stack trace.

public void error(Object message, Throwable t);//including its stack trace 会打印异常堆栈的信息

}

日志级别:OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者您定义的级别

Log4j建议只使用四个级别,优先级从高到低分别是 ERROR、WARN、INFO、DEBUG

大于等于设定级别的级别日志才输出。比如在这里定义了INFO级别,则应用程序中所有DEBUG级别的日志信息将不被打印出来

顺便学习 log4j 的配置:

log4j.rootLogger = ${pom.log.level}, console,logInfo //将等级为INFO的日志信息输出到console和logInfo这两个目的地
log4j.logger.OperationLogger = INFO,fileA

### console appender ####
log4j.appender.console = org.apache.log4j.ConsoleAppender  //定义名为console的输出端是哪种类型

org.apache.log4j.ConsoleAppender(控制台),

org.apache.log4j.FileAppender(文件),

org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),

org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)

org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

log4j.appender.console.layout = org.apache.log4j.PatternLayout  //定义名为console的输出端的layout是哪种类型

org.apache.log4j.HTMLLayout(以HTML表格形式布局),

org.apache.log4j.PatternLayout(可以灵活地指定布局模式),

org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),

org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)

log4j.appender.console.layout.ConversionPattern = [%t] %d{yyyy-MM-dd HH:mm:ss} %-5p -%l %x - %m%n //如果使用pattern布局就要指定的打印信息的具体格式ConversionPattern

### logInfo appender ####
log4j.appender.logInfo = org.apache.log4j.DailyRollingFileAppender
log4j.appender.logInfo.File = ${catalina.home}/logs/devportal.log
log4j.appender.logInfo.DatePattern = '-'yyyyMMdd'.log'
log4j.appender.logInfo.layout = org.apache.log4j.PatternLayout
log4j.appender.logInfo.layout.ConversionPattern=[%t] %d{yyyy-MM-dd HH:mm:ss} %-5p -%l %x - %m%n

### OperationLogger fileA appender ###
log4j.appender.fileA = org.apache.log4j.DailyRollingFileAppender
log4j.appender.fileA.File = ${catalina.home}/logs/devportal-business.log
log4j.appender.fileA.DatePattern = '-'yyyyMMdd'.log'
log4j.appender.fileA.layout = org.apache.log4j.PatternLayout
log4j.appender.fileA.layout.ConversionPattern=[%t] %d{yyyy-MM-dd HH:mm:ss} %-5p -%l %x - %m%n

#level
log4j.logger.org.apache=${pom.log.level}
log4j.logger.org.springframework=${pom.log.level}
log4j.logger.net.rubyeye=error

#mybatis
log4j.logger.org.mybatis = ${pom.log.level}
#log4j.logger.com.ibatis=debug
#log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=debug
#log4j.logger.com.ibatis.common.jdbc.ScriptRunner=debug
#log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=debug

#sql
log4j.logger.java.sql.ResultSet=${pom.log.level}
log4j.logger.java.sql.Connection=${pom.log.level}
log4j.logger.java.sql.Statement=${pom.log.level}
log4j.logger.java.sql.PreparedStatement=${pom.log.level}

log4j 日志相关的更多相关文章

  1. log4j日志工具

    一.关于日志 1.日志定义: 项目在运行阶段产生的信息 2.日志级别 最常见的日志级别有4个: error :错误日志 warn:警告日志 info:流程日志 debug:调试日志   优先级从高到低 ...

  2. commons-logging和Log4j 日志管理/log4j.properties配置详解

    commons-logging和Log4j 日志管理 (zz) 什么要用日志(Log)? 这个……就不必说了吧. 为什么不用System.out.println()? 功能太弱:不易于控制.如果暂时不 ...

  3. web项目Log4j日志输出路径配置问题

    问题描述:一个web项目想在一个tomcat下运行多个实例(通过修改war包名称的实现),然后每个实例都将日志输出到tomcat的logs目录下实例名命名的文件夹下进行区分查看每个实例日志,要求通过尽 ...

  4. Spring集成log4j日志管理

    原文地址:http://blog.csdn.net/naruto1021/article/details/7969535 在使用Spring框架的时候,我们可以很方便的配置log4j来进行日志管理. ...

  5. springBoot----aop--整合日志相关

    springBoot整合日志相关 1:新建log4j.properties文件 : log4j.properties: #log4j.rootLogger=CONSOLE,info,error,DEB ...

  6. Log4j日志体系结构

    转自:https://my.oschina.net/andylucc/blog/794867 摘要 我们在写日志的时候首先要获取logger,在每一个使用log4j的项目都有很多个地方要获取logge ...

  7. log4j日志相对路径,Tomcat(第三方和Springboot内置)参数catalina.home和catalina.base的设置

    关于Log4j日志相对路径的配置请看:log4j 产生的日志位置设置 和 catalina.home.catalina.base . 由于我们在Log4j的配置中引入了系统属性${catalina.b ...

  8. log4j日志输出到文件的配置

    1.Maven的dependency 2.log4j.properties的配置 3.Junit的Test类 4.web.xml的配置(非必要) 5.spring的db.config的配置(非必要) ...

  9. 基于java配置log4j日志详解

    1.Log4j 1.1了解Log4j Log4j是Apache的一个开源项目,通过使用log4j,我们可以控制日志信息输送的目的地可以是控制台.文件.GUI组件,我们也可以控制每一条日志的输出格式,通 ...

随机推荐

  1. Mac上Nginx-增加对HLS的支持

    Mac上Nginx-增加对HLS的支持 我们在Mac上搭建直播服务器Nginx说了如何在Mac搭建视频直播服务器Nginx,对RTMP推流和RTMP拉流的支持.接下来说说如何增加对HLS的支持. 在N ...

  2. 跟着百度学PHP[15]-SESSION的应用/网站登陆案例完整案例

    先把几个应该要有的页面建立好.

  3. Qt之模式、非模式对话框

    关于“模式”和“非模式”对话框,相信大家都比较熟悉,但其中有一个可能很多人都比较陌生,介于两者之间的状态,我们称之为“半模式“. 模式对话框 描述 阻塞同一应用程序中其它可视窗口输入的对话框.模式对话 ...

  4. VM克隆之后启动eth0找不到eth0:unknown interface:no such device

    问题出现:VMware 克隆之后,ifconfig命令执行找不到eth0,报错 eth0:unknown interface:no such device 是因为/etc/sysconf/networ ...

  5. 01 SQL核心语句

    在 sqlplus 中可以使用 ; 或 / 来执行一条 sql 语句, 但是 / 必须要换行, 个人感觉只有那些脚本啊什么的最后一般使用 / , 其他的都使用; 核心语句 SELECT oracle  ...

  6. c++封装的发邮件类CSendMail

    项目需要做发邮件的功能,在网上找了一下代码,比较出名的SMailer编译不过(把那个Base64的encode拉到MailSender中实现就能过,但我搞不懂原来出错的原因,就不想用),另外找到了一个 ...

  7. 你的企业是否须要开发APP?

    移动互联网时代的到来,粗分出"新兴行业"与"传统行业".除了互联网公司,其它似乎都被归到了"传统行业".连传统行业中最传统的房地产公司代表人 ...

  8. CopyOnWriteArrayList分析

    ArrayList是比较常用的一个可变大小的数组集合,但是是不能同步的.如果多个线程同时访问一个ArrayList实例,其中至少一个线程从结构上修改了列表,那么它必须保持外部同步.一般通过加锁对象进行 ...

  9. python+selenium之字符串切割操作

    python+selenium之字符串切割操作 在Python中自带的一个切割方法split(),这个方法不带参数,就默认按照空格去切割字段,如果带参数,就按照参数去切割. 新建一个python文件, ...

  10. manacher算法处理最长的回文子串(二)

    在上篇<manacher算法处理最长的回文子串(一)>解释了manacher算法的原理,接着给该算法,该程序在leetcode的最长回文子串中通过.首先manacher算法维护3个变量.一 ...