log4j和log4jdbc的使用
2017-11-01 10:15
246 查看
log4j
借鉴:http://www.blogjava.net/zJun/archive/2006/06/28/55511.html
Log4j可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器等;也可以控制每一条日志的输出格式;
通过定义日志信息的级别,可以更加细致地控制日志的生成记录。
log4j配置文件的大概格式如下:
[level]
是日志的输出级别。共包含5个等级。会打印出等于或高于设定等级的日志信息。
可直接配置跟logeer的日志等级,也可为每个Appender设定不同的日志等级,将不同等级的日志区分开。
[AppenderType]
指定了日志的输出目的地。
log4j提供的appender有以下几种:
[LayoutType]
指定日志的输出形式。有以下几种:
常用的配置例子:
java代码中的使用示例:
log4jdbc
借鉴:http://www.cnblogs.com/xdp-gacl/p/4081848.html
http://www.cnblogs.com/JSONBEAN/p/6363237.html
1、简介:
log4jdbc是工作在jdbc层的一个日志框架,能够在不改变原有代码的情况下,记录SQL及数据库连接执行信息。
相对于mybatis,hibernate,spring jdbc等框架将参数值用占位符标识,参数值与sql代码分离的缺点。log4jdbc可以完整的打印出可执行的完整sql。
2、依赖
使用log4jdbc需要引入log4jdbc-1.2.jar,以及依赖的相关Jar包log4j-1.2.17.jar、slf4j-api-1.6.0.jar、slf4j-log4j12-1.7.7.jar。
3、配置
在log4jdbc中定义了以下五个日志对象:
如上面log4j部分的“常用的配置例子”,可在log4j.rootLogger下加入如下配置:
4、修改jdbc配置
修改驱动和url,如下所示:
借鉴:http://www.blogjava.net/zJun/archive/2006/06/28/55511.html
Log4j可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器等;也可以控制每一条日志的输出格式;
通过定义日志信息的级别,可以更加细致地控制日志的生成记录。
log4j配置文件的大概格式如下:
#配置根Logger log4j.rootLogger = [level], appender1, appender2,… #配置日志信息输出目的地Appender1 log4j.appender.appenderName1 = org.apache.log4j.[AppenderType] log4j.appender.appenderName1.layout = org.apache.log4j.[LayoutType] log4j.appender.appenderName1.layout.ConversionPattern = [pattern] log4j.appender.appenderName1.option1 = value1 … log4j.appender.appenderName1.optionN = valueN #配置日志信息输出目的地Appender2 log4j.appender.appenderName2 = org.apache.log4j.[AppenderType] log4j.appender.appenderName2.layout = org.apache.log4j.[LayoutType] log4j.appender.appenderName2.layout.ConversionPattern = [pattern] log4j.appender.appenderName2.option1 = value1 … log4j.appender.appenderName2.optionN = valueN …
[level]
是日志的输出级别。共包含5个等级。会打印出等于或高于设定等级的日志信息。
可直接配置跟logeer的日志等级,也可为每个Appender设定不同的日志等级,将不同等级的日志区分开。
FATAL 0 ERROR 3 WARN 4 INFO 6 DEBUG 7
[AppenderType]
指定了日志的输出目的地。
log4j提供的appender有以下几种:
org.apache.log4j.ConsoleAppender(控制台), org.apache.log4j.FileAppender(文件), org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件), org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件), org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
[LayoutType]
指定日志的输出形式。有以下几种:
org.apache.log4j.HTMLLayout(以HTML表格形式布局), org.apache.log4j.PatternLayout(可以灵活地指定布局模式), org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串), org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
常用的配置例子:
### set log levels ### log4j.rootLogger = DEBUG,console,D,E ### 输出到控制台 ### 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} [ %t:%r ] - [ %p ] %m%n ### 输出到日志文件 ### log4j.appender.D = org.apache.log4j.RollingFileAppender ##文件大小到达指定尺寸的时候产生一个新的文件 log4j.appender.D.File = ${catalina.home}/mylogs/log.log ##文件的输出路径 log4j.appender.D.MaxFileSize = 10MB ##文件的最大尺寸 log4j.appender.D.Threshold = DEBUG ##此appender的日志级别 log4j.appender.D.layout = org.apache.log4j.PatternLayout ##表达式指定布局 log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n ### 保存异常信息到单独文件 ### log4j.appender.E = org.apache.log4j.DailyRollingFileAppender ##每日生成一个文件 log4j.appender.E.File = ${catalina.home}/mylogs/error.log ##文件输出路径 log4j.appender.E.Threshold = ERROR ##此appender的级别 log4j.appender.E.layout = org.apache.log4j.PatternLayout log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
java代码中的使用示例:
public class LoggerTest { private Logger log = Logger.getLogger(LoggerTest.class); public static void main(String[] args) { log.debug("调试使用"); log.info("info及以上级别可见"); log.warn("warn及以上级别可见"); try{ //TODO } catch(Exception e){ log.error("异常时输出此信息", e); } } }
log4jdbc
借鉴:http://www.cnblogs.com/xdp-gacl/p/4081848.html
http://www.cnblogs.com/JSONBEAN/p/6363237.html
1、简介:
log4jdbc是工作在jdbc层的一个日志框架,能够在不改变原有代码的情况下,记录SQL及数据库连接执行信息。
相对于mybatis,hibernate,spring jdbc等框架将参数值用占位符标识,参数值与sql代码分离的缺点。log4jdbc可以完整的打印出可执行的完整sql。
2、依赖
使用log4jdbc需要引入log4jdbc-1.2.jar,以及依赖的相关Jar包log4j-1.2.17.jar、slf4j-api-1.6.0.jar、slf4j-log4j12-1.7.7.jar。
3、配置
在log4jdbc中定义了以下五个日志对象:
jdbc.sqlonly : 记录系统执行过的sql语句 jdbc.sqltiming : 记录sql执行的时间,可以分析耗时的sql语句 jdbc.audit : 记录除了ResultSet外的所有JDBC调用情况。一般不需要。 jdbc.resultset : 记录返回结果集信息。数据太多,一般也不用。可将执行的sql复制到plsql执行。 jdbc.connection : 记录数据库连接和释放信息,可记录当前的数据库连接数,便于诊断连接是否释放。
如上面log4j部分的“常用的配置例子”,可在log4j.rootLogger下加入如下配置:
#jdbc执行日志配置 log4j.logger.jdbc.sqlonly=INFO log4j.logger.jdbc.sqltiming=INFO log4j.logger.jdbc.resultset=OFF ##关闭不打印 log4j.logger.jdbc.audit=OFF ##关闭不打印 log4j.logger.jdbc.connection=ERROR ##只打印连接异常信息
4、修改jdbc配置
修改驱动和url,如下所示:
jdbc.driverClassName=net.sf.log4jdbc.DriverSpy jdbc.url=jdbc:log4jdbc:oracle:thin:@localhost:1521:orcl jdbc.username=scort jdbc.password=tiger
相关文章推荐
- 使用log4j
- Log4j使用
- log4jdbc数据库访问日志框架使用
- Exception信息转换为字符串,或者直接将使用Log4j进行异常记录
- Spring boot中使用log4j记录日志
- Log4j配置使用
- 使用Log4j进行日志操作
- 如何使用Log4j?
- 常用日志使用方式(slf4j,logback,log4j,common-log)
- log4j.properties 的使用详解
- Struts中使用Log4j
- 使用log4j获取SQL语句
- Log4j配置及使用经验总结
- Log4j日志管理系统简单使用说明
- java中Log4j的使用
- Spring 中使用Log4j
- log4j使用示例
- Log4J使用完全手册
- springboot 高版本后继续使用log4j的解决方法
- Spring中使用Log4j记录日志