log4j2怎么输出日志到文件

如题所述

第1个回答  2017-10-28
、前提条件 系统必须使用LOG4J进行志管理否则效 系统必须包含mons-logging-xxx.jarlog4j-xxx.jar两JAR包XXX版本号 二、操作步骤 1、创建志表 要志持久化必须数据库创建张用存储志信息表表内字段志 主要属性包括:操作类执行打印间志级别志内容 CREATE TABLE RESLOG (LOGID VARCHAR2(20) NOT NULL, CLASS VARCHAR2(200), METHOD VARCHAR2(100), CREATETIME DATE, LOGLEVEL VARCHAR2(50), MSG VARCHAR2(4000)) 存储类类全部路径所CLASS字段度需要比较 2、志管理配置 LOG4J主要两种配置文件.properties.xmlproperties文件基础讲 述关于XML文件配置相信家看完面介绍能轻松完 通LOG4J.PROPERTIES文件第行: log4j.rootLogger= XXX句控制志输想吧志输数据库 则需要XXX添加DBlog4j.rootLogger=INFO,stdout,Platform,db面 句志级别INFO信息输STDOUT,PLATFORMDB (DATABASE) 配置信息LOG4J知道用户想信息存入数据库接我要 配置数据库相关信息(包括缓存数据库连接信息执行SQL)配置信息: ###JDBCAppender log4j.appender.db = org.apache.log4j.jdbc.JDBCAppender //配置选择使用JDBCAppender志信息存储数据库要做其操作自写类继承JDBCAppenderOK log4j.appender.db.BufferSize=1 //配置告诉LOG4J条志信息才存入数据库我1,说条查条显产环境影响系统性能 log4j.appender.db.driver=oracle.jdbc.driver.OracleDriver //配置告诉LOG4J做数据库存储所用驱 log4j.appender.db.URL=jdbc:oracle:thin:@:: //配置数据库连接URL用说都知道 log4j.appender.db.user=XXX log4j.appender.db.password=XXX //面两数据库连接用户名密码 log4j.appender.db.sql=insert into RESLOG (LogId,Class,Method,createTime,LogLevel,MSG) values (SQ_RESLOG_LOGID.Nextval,'%C','%M', to_date('%d{yyyy-MM-dd HH:mm:ss}','yyyy-MM-dd HH24:mi:ss'),'%p','%m') //配置告诉LOG4J吧志存储数据库用SQL语句SQ_RESLOG_LOGID.Nextval我建SEQUENCE;‘%C’志CLASS;‘%M’打印志执行类;‘%d’打印间支持格式化;‘%P’志级别包括INFO、DEBUG、ERROR等;‘%m’MSG志内容注意参数区写 log4j.appender.db.layout=org.apache.log4j.PatternLayout 通面配置现再启服务LOG4J自原存储.LOG文件信息同存储数据库
相似回答