生成文件到默认位置:

#生成日志文件
#log4j.appender.systemFile=org.apache.log4j.RollingFileAppender
#按天生成
log4j.appender.systemFile=org.apache.log4j.DailyRollingFileAppender log4j.appender.systemFile.layout=org.apache.log4j.PatternLayout
#将旧的文件重新命名为年月日结尾
log4j.appender.systemFile.DatePattern = '.'yyyy-MM-dd
#log4j.appender.systemFile.layout.ConversionPattern=%l : %m %n
log4j.appender.systemFile.layout.ConversionPattern=[%5p] %d{dd-MM-yy HH:mm:ss} : %F %L : %m %n
log4j.appender.systemFile.File=D\:/gaeaback/logs/gaeaback.log

生成日志到数据库:首先你需要穿件对应的数据库表,这样你配置中的sql语句才可能会有效执行。

log4j.rootLogger=INFO,stdout

log4j.logger.org.springframework.web.servlet=INFO,logfile

log4j.logger.org.springframework.beans.factory.xml=INFO,logfile
log4j.logger.com.bing.controler=INFO,db 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} %p [%c] - - <%m>%n #log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
#log4j.appender.logfile.File=${webapp.root}/WEB-INF/logs/exppower.log
#log4j.appender.logfile.DatePattern=.yyyy-MM-dd
#log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
#log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] wang- <%m>%n
######################## # JDBC Appender ####################### #log4j.logger.business=INFO,db
#log4j.appender.db=com.neam.commons.MyJDBCAppender
log4j.appender.db=org.apache.log4j.jdbc.JDBCAppender log4j.appender.db.BufferSize=1 log4j.appender.db.sqlname=log #log4j.appender.db.driver=net.sourceforge.jtds.jdbc.Driver
log4j.appender.db.driver=oracle.jdbc.driver.OracleDriver #log4j.appender.db.URL=jdbc:jtds:SqlServer://localhost:1433;DatabaseName=pubs
log4j.appender.db.URL=jdbc:oracle:thin:@127.0.0.1:1521:orcl log4j.appender.db.user=uername log4j.appender.db.password=password log4j.appender.db.sql=insert into T_LOG (FID,LogName,UserName,Class,Mothod,createTime,LogLevel,MSG,DATESTAMP) values(sys_guid(),'%X{userId}','%X{userName}','%C','%M','%d{yyyy/MM/dd HH:mm:ss}','%p','%m',sysdate) log4j.appender.db.layout=org.apache.log4j.PatternLayout

上面的配置中'%X{userId}','%X{userName}'这两个变量是用户加进去的。在org.apache.log4j.MDC这个类中有个静态的普通方法,用法如下

 MDC.put("userId",customer.getUserName());
MDC.put("userName",customer.getUserId());

当调用put方法是后,MDC中存在一个静态变量以键值对的形式来存储加入的值。执行过这个方法后,就能在配置文件中读取到

log4j自动生成日志文件配置的更多相关文章

  1. Flask log配置,实现按照日期自动生成日志文件

    Flask自带了logger模块,用来方便程序员群众记录日志,这里粘贴出来的是一段代码,用来初始化日志各项配置参数,并根据日期自动生成日志文件. #log配置,实现日志自动按日期生成日志文件def m ...

  2. springboot添加log4j日志配置log4j.xml生成日志文件

    第一步:添加pom文件依赖 <!-- log4j --> <dependency> <groupId>org.springframework.boot</gr ...

  3. log4j不生成日志文件的问题

    直接看我的注解吧 注意地址的斜杠,还有地址别写什么相对地址了,这包太老了,服务器update一下兼容问题就出来了. #第一个参数定义达到什么程度就输出 第二第三....第N 定义输出的类型 #debu ...

  4. log4j每天生成一个文件配置

    log4j.rootLogger=INFO,CONSOLE,logDailyFile log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppenderlo ...

  5. mybatis 自动生成xml文件配置

    http://blog.csdn.net/techbirds_bao/article/details/9233599/

  6. logging日志文件配置

    Django配置如下 简洁版: LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'console' ...

  7. SpringBoot日志配置(详解) 涉及控制台输出日志、生成日志文件、日志级别修改、hibernate日志不输出

    写在前面 本篇主要讲述日志配置,看完本篇可以解决下述问题, 控制台输出日志.生成日志文件.日志级别修改.hibernate日志不输出 Git Demo Path:https://github.com/ ...

  8. 【spring boot logback】日志logback 生成日志文件在本项目下,而不在指定的日志文件目录下/指定日志文件到达最大值后不按照配置进行切割

    原本的日志文件配置如下: <?xml version="1.0" encoding="UTF-8"?> <configuration scan ...

  9. NGINX按天生成日志文件的简易配置

    NGINX按天生成日志文件的简易配置 0x01 最近后端童鞋遇到一个小需求,拆分nginx生成的log文件,最好是按天生成,看着她还有很多bug待改的状态,我说这个简单啊,我来吧.曾经搞node后端的 ...

随机推荐

  1. iOS开发——实战总结OC篇&网易彩票开发知识点总结

    网易彩票开发知识点总结 关于网易彩票开发中遇到了不少的坑,弄了好久才弄懂,或者有些犹豫很久没用就不记得了,所以这里就总结了一下,希望以后不会忘记,就算忘记也能快速查看! /************** ...

  2. IIS问题汇总

    1.问题描述   VS和Framework的安装顺序不对导致网站打不开   原因分析   Framework出现问题   解决办法   重新注册Framework版本   a.开始->运行-&g ...

  3. 设备文件的创建mknod

    设备文件是通过mknod命令来创建的.其命令格式为: mknod [OPTION]... NAME TYPE [MAJOR MINOR] TYPE取值: 主设备号和次设备号两个参数合并成一个16位的无 ...

  4. nopCommerce 数据缓存

    为了提高一个系统或网站的性能和IO吞吐量,我们一般都会采用缓存技术.当然NopCommerce也不例外,本文我们就来给大家分析一下nop中Cache缓存相关类设计.核心源码及实现原理. 一.Nop.C ...

  5. 你应该知道的基础 Git 命令

    我们在早先一篇文章中已经快速介绍过 Vi 速查表了.在这篇文章里,我们将会介绍开始使用 Git 时所需要的基础命令. Git Git 是一个分布式版本控制系统,它被用在大量开源项目中.它是在 2005 ...

  6. Linux下校验下载文件的完整性(MD5,SHA1,PGP)

    查看: Linux下校验下载文件的完整性(MD5,SHA1,PGP) http://blog.useasp.net/archive/2014/03/29/use-md5-sha1-or-pgp-to- ...

  7. excel,access常用公式函数VBA代码汇总文章

    批量将CSV导入access alt+f11 打开access的vbe环境 Sub test() Dim SQL As String Dim MyPath As String Dim MyPathDb ...

  8. VS 之 InstallShield Limited Edition for Visual Studio 2015 图文教程

    从Visual Studio 2012开始,微软就把自家原来的安装与部署工具彻底废掉了,转而让大家去安装使用第三方的打包工具“InstallShield Limited Edition for Vis ...

  9. ios uitableviewcell动态计算高度

    #import <UIKit/UIKit.h> @interface TestCell : UITableViewCell @property (weak, nonatomic) IBOu ...

  10. Android(java)学习笔记267:Android线程池形态

    1. 线程池简介  多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力.     假设一个服务器完成一项任务所需时间为:T1 创建线程时间, ...