一、日志配置变量参数说明

1. 日志设置说明:
# log4j.rootLogger = debug,stdout,D,E
# 等号之后的值表示appender对象,每个apperder对象表示一个日志输出类型

# log4j.appender 之后的值是自定义的,表示输出的类型名称,具体的定义语法如下:
# log4j.appender.自定义的输出类型名.属性名=属性值
# 例如:log4j.appender.db 自定义输出类型名称为 db,如果db表示数据库 ,log4j.appender.db.url 表示数据库的url地址
# 目的地由后面的类决定:
# org.apache.log4j.ConsoleAppender 控制台
# org.apache.log4j.FileAppender 文件,文件路径及名称 若没有则自动创建
# 文件子类 org.apache.log4j.RollingFileAppender 按日志的大小滚动拆分日志文件
# 文件子类 org.apache.log4j.DailyRollingFileAppender 按一定的时间频率滚动拆分日志记录文件
# org.apache.log4j.jdbc.JDBCAppender 数据库

2. 输出到文件时的设置:
# log4j.appender.file 输出file是文件
# 常见属性有:
# log4j.appender.file.File 日志存储位置,例如:log4j.appender.E.File =D://WorkSpace/logs/error.log
# .Append 追加方式写入文件,默认为true
# .Threshold 写入的日志级别
# .layout 日志布局方式
# .conversionPattern 日志格式
# .ImmediateFlush true表示所有消息都会被立即输出,为false则不输出
# RollingFileAppender 类型还有下列参数:
# .maxFileSize 默认值是10MB,日志回滚最大值 例如:log4j.appender.FILE.MaxFileSize=1KB
# .maxBackupIndex 默认值是1,日志文件备份个数 例如:log4j.appender.FILE.MaxBackupIndex=1
# 说明:每个日志文件的最大值为1KB。最开始创建日志文件log.out,当超过日志文件最大值时,
# log.out.1新的日志文件将被创建。同时,log.out中的日志转移到log.out.1中(备份文件设置为1)。
# log.out日志文件永远写入最新日志
# DailyRollingFileAppender 类型还有下列参数:
# .DatePattern=‘.’yyyy-MM 每月 ‘.’yyyy-ww 每星期
# ‘.’yyyy-MM-dd 每天 ‘.’yyyy-MM-dd-a 每半天
# ‘.’yyyy-MM-dd-HH 每小时 ‘.’yyyy-MM-dd-HH-mm 每分钟

3. org.apache.log4j.db 输出到数据库
# 常见属性:
# .driver 设置驱动程序类为指定的字符串。如果没有指定驱动程序类,默认为sun.jdbc.odbc.JdbcOdbcDriver
# .url 设置JDBC URL
# .user 数据库用户名
# .password 数据库用密码
# .sql 指定SQL语句,在每次记录事件发生的时间执行。这可能是INSERT,UPDATE或DELETE 例如:INSERT INTO LOGS VALUES('%t','%d{yyyy-MM-dd}','%C','%p','%m')
# .bufferSize 设置缓冲区的大小。默认大小为1
# .layout 设置要使用的布局。默认布局org.apache.log4j.PatternLayout

二、配置示例

# 设置日志输出类型
log4j.rootLogger = debug,stdout,debug,error,db

# 输出信息到控制台
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
# 输出格式
log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss, SSS} method:%l%n%m%n

# 输出 debug 级别以上的日志到D://sun//logs/error/debug.log
log4j.appender.debug = org.apache.log4j.RollingFileAppender
log4j.appender.debug.File = D://sun//logs/debug/debug.log
log4j.appender.debug.Append = true
log4j.appender.debug.Threshold = DEBUG
log4j.appender.debug.maxFileSize=10kb
log4j.appender.debug.maxBackupIndex=1
log4j.appender.debug.layout = org.apache.log4j.PatternLayout
# 打印 debug 信息格式
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n

#输出 error 级别以上的日志到 D://sun//logs/error/error.log
log4j.appender.error = org.apache.log4j.DailyRollingFileAppender
log4j.appender.error.File =D://sun//logs/error/error.log
log4j.appender.error.Append = true
log4j.appender.error.Threshold = ERROR
log4j.appender.error.DatePattern='.'yyyy-MM-dd-HH-mm
log4j.appender.error.layout = org.apache.log4j.PatternLayout
# 打印ERROR信息格式
log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n

#将日志保存到数据库
log4j.appender.DB=org.apache.log4j.jdbc.JDBCAppender
# url链接
log4j.appender.DB.URL=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
# 驱动
log4j.appender.DB.driver=com.mysql.cj.jdbc.Driver
# 用户名
log4j.appender.DB.user=root
# 密码
log4j.appender.DB.password=123456
# 日志插入数据库 %d 日期 %C 类名 %p 优先级 %m 日志信息
log4j.appender.DB.sql=INSERT INTO LOGS VALUES('%t','%d{yyyy-MM-dd HH:mm:ss}','%C','%p','%m')
# 日志布局方式
log4j.appender.DB.layout=org.apache.log4j.PatternLayout

log4j日志配置和使用的更多相关文章

  1. Log4J日志配置详解

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...

  2. (转)Log4J日志配置详解

    http://www.cnblogs.com/ITtangtang/p/3926665.html 一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源 ...

  3. java Log4j日志配置详解大全

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...

  4. Spark log4j日志配置详解(转载)

    一.spark job日志介绍    spark中提供了log4j的方式记录日志.可以在$SPARK_HOME/conf/下,将 log4j.properties.template 文件copy为 l ...

  5. Log4J日志配置详解[转]

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...

  6. Log4J日志配置与Juit测试

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器).Appenders(输出源)和Layouts(布局). 这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...

  7. log4j 日志配置和jar包下载

    1.日志log4j文件配置 ${webapp.root}才是项目根目录log4j.appender.logfile.File= ${catalina.home}/log/filter.log 指生成日 ...

  8. tomcat 6.x + log4j日志配置并按天(或大小)生成文件

      tomcat日志,默认路径在${catalina.home}/logs目录下,默认使用的是tomcat自己封装的logging工具类,默认配置文件使用的${catalina.home}/conf/ ...

  9. Log4J日志配置具体解释

    一.Log4j简单介绍 Log4j有三个基本的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综 ...

  10. springboot 关于log4j日志配置

    自动加载配置文件:(1)如果采用log4j输出日志,要对log4j加载配置文件的过程有所了解.log4j启动时,默认会寻找source folder下的log4j.xml配置文件,若没有,会寻找log ...

随机推荐

  1. bugku-Web 求getshell

    求getshell 上传一个png文件发现提示My name is margin,give me a image file not a php 然后也尝试上传php文件,但是依然不行,这里显然对文件类 ...

  2. 关于torch.nn.Linear的笔记

    关于该类: torch.nn.Linear(in_features, out_features, bias=True) 可以对输入数据进行线性变换: $y  = x A^T + b$ in_featu ...

  3. Python基本数据类型之字符串

    Python转义字符 在需要在字符中使用特殊字符时,python用反斜杠(\)转义字符.如下表: 转义字符 描述 \(在行尾时) 续行符 \\ 反斜杠符号 \' 单引号 \" 双引号 \a ...

  4. JS-表单非空验证

    JavaScript 表单验证 JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证. 实例:1.用户名的非空验证代码如下: <head> <m ...

  5. 9.1hadoop 内置计数器、自定义枚举计数器、Streaming计数器

    1.1  计数器 计数器的作用是用来统计数量的,用于记录特定事件的次数,分为内置计数器.自定义java枚举计数器.自定义Stream计数器三大类.用于质量分析,或应用级统计.分析计数器的值比分析一堆日 ...

  6. .NET 软件下面win10自动启动配置

    1.设置所有用户登录都能启动,打开文件夹 C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp 2.给要启动的应用程序创建快捷方式, ...

  7. 吴裕雄--天生自然JAVA线程编程笔记:进程与线程

  8. VCPU的解释

    vCPU,顾名思义,是虚拟CPU. 创建虚拟机时,需要配置vCPU资源. 因此vCPU是虚拟机的部件. 因此脱离VM,谈论vCPU是没有意义的. 虚拟化管理系统如何调度vCPU,取决于系统内的虚拟机数 ...

  9. Eclipse打开,出现Initializing Java Tooling “has encountered a problem错误,而且鼠标悬停在没有导包的类上面不会出现import信息。

    问题1:打开eclipse,出现了Initializing Java Tooling “has encountered a problem,点开详细信息,报的是空指针异常. 问题2:鼠标悬停在没有导包 ...

  10. Flink(四) —— 数据流编程模型

    分层抽象 The lowest level abstraction simply offers stateful streaming. It is embedded into the DataStre ...