log4j.properties详解
首先建立项目

package a;
import org.apache.log4j.Logger;
public class Test {
private static Logger logger=Logger.getLogger(Test.class);
public static void main(String[] args) {
logger.debug("debug");
logger.info("info");
logger.warn("warn");
logger.error("error");
logger.fatal("fatal");
}
}
log4j.properties
log4j.rootLogger=DEBUG,Console,DEBUGFile ,ERRORFile log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.SimpleLayout #DEBUGFile
log4j.appender.DEBUGFile = org.apache.log4j.FileAppender
log4j.appender.DEBUGFile.File = E://debug.log #${catalina.base}/logs/debug.log
log4j.appender.DEBUGFile.layout = org.apache.log4j.PatternLayout
log4j.appender.DEBUGFile.layout.ConversionPattern =%d [%t] %-5p [%c] - %m%n
log4j.appender.DEBUGFile.Threshold = DEBUG
log4j.appender.DEBUGFile.Append = false #ERRORFile
log4j.appender.ERRORFile = org.apache.log4j.FileAppender
log4j.appender.ERRORFile.File = E://error.log
log4j.appender.ERRORFile.layout = org.apache.log4j.PatternLayout
log4j.appender.ERRORFile.layout.ConversionPattern =%d [%t] %-5p [%c] - %m%n
log4j.appender.ERRORFile.Threshold = ERROR
二话不说,先把项目跑起来

在到E盘中看看我们的日志文件

实践已经结束了,现在开始理论了。
日志级别从高到低:
| OFF | 关闭了日志信息 ,什么也不记录(一般不用) |
| FATAL | 可能导致应用中止的严重事件错误 |
| ERROR | 严重错误 主要是程序的错误 |
| WARN | 一般警告,比如session丢失 |
| INFO | 一般要显示的信息,比如登录登出 |
| DEBUG | 为程序的调试信息 |
| TRACE | 为比DEBUG更细粒度的事件信息 |
| ALL | 全纪录(一般不用) |
log4j.rootLogger是根配置属性
log4j.rootLogger=【level】,目的地名1,目的地名2,目的地名3....
level是日志等级,
目的地:是日志的记录信息输出到什么地方
目的地的值:
org.apache.log4j.ConsoleAppender 控制台
org.apache.log4j.FileAppender 文件
org.apache.log4j.DailyRollingFileAppender 每天产生一个日志文件
org.apache.log4j.RollingFileAppender 文件大小到达指定尺寸的时候产生一个新的文件
org.apache.log4j.WriterAppender 将日志信息以流格式发送到任意指定的地方
org.apache.log4j.JdbcAppender 将日志讯息保存到数据库中
log4j.appender.Console.layout 日志的输出形式,
值如下:
org.apache.log4j.HTMLLayout HTML表格形式布局
org.apache.log4j.PatternLayout 自定义日志格式
org.apache.log4j.SimpleLayout 包含日志信息的级别和信息字符串
org.apache.log4j.TTCCLayout 包含日志产生的时间、线程、类别等等信息 log4j.appender.DEBUGFile.File = E://debug.log 日志的输出地址
log4j.appender.Console.layout.ConversionPattern=%-5p [%c] - %m%n 自定义日志的输出格式
其中-5这一项表示的是输出的日志级别名称所占的字符数为5,不足5个字符的用空格补全,其实就是起到对齐的作用,方便查看日志内容
具体参数如下
| %m |
|
| %M |
|
| %p |
|
| %r |
|
| %c |
|
| %t |
|
| %n |
|
| %d |
|
| %l |
|
log4j.appender.DEBUGFile.Threshold = DEBUG 日志消息的输出最低层次 这里的值只能比根层级高,否则无法输出
log4j.appender.DEBUGFile.Append = false 日志文件是否追加,默认就是true,表示追加
log4j.properties详解的更多相关文章
- log4j.properties 详解与配置步骤(转)
找的文章,供参考使用 转自 log4j.properties 详解与配置步骤 一.log4j.properties 的使用详解 1.输出级别的种类 ERROR.WARN.INFO.DEBUGERROR ...
- log4j.properties 详解与配置步骤
一.log4j.properties 的使用详解 1.输出级别的种类 ERROR.WARN.INFO.DEBUGERROR 为严重错误 主要是程序的错误WARN 为一般警告,比如session丢失IN ...
- 转--log4j.properties 详解与配置步骤
一.log4j.properties 的使用详解 1.输出级别的种类 ERROR.WARN.INFO.DEBUGERROR 为严重错误 主要是程序的错误WARN 为一般警告,比如session丢失IN ...
- log4j.properties 详解与配置步骤总结
先提供一个项目中使用log4j.properties配置 #log4j.rootLogger=WARN, stdout, file log4j.rootLogger=INFO,console,dail ...
- 【转】log4j.properties 详解与配置步骤 - edward0830ly的专栏 - 博客频道 - CSDN.NET
一.log4j.properties 的使用详解 1.输出级别的种类 ERROR.WARN.INFO.DEBUGERROR 为严重错误 主要是程序的错误WARN 为一般警告,比如session丢失IN ...
- log4j.properties详解与例子
在项目中的classes 中新建立一个log4j.properties文件即可: 在实际编程时,要使Log4j真正在系统中运行事先还要对配置文件进行定义.定义步骤就是对Logger.Appender及 ...
- 【配置】log4j.properties 详解与配置步骤
一.Log4j基本使用方法 Log4j由三个重要的组件构成:[日志信息的优先级],[日志信息的输出目的地],[日志信息的输出格式]. 日志信息的优先级从高到低有ERROR.WARN. INFO.DEB ...
- Log4j使用详解(log4j.properties格式)
Log4j使用详解(log4j.properties格式) 1.Log4j 的引入 在应用程序中添加日志记录总的来说基于三个目的: ① 监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计 ...
- org.apache.log4j.Logger详解
org.apache.log4j.Logger 详解 1. 概述 1.1. 背景 在应用程序中添加日志记录总的来说基于三个目的 :监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析工 ...
随机推荐
- 十年京东Java程序员的工作总结,写给迷茫中的你!
很多年前,刚刚从大学毕业的时候,很多公司来校招.其中最烂俗的一个面试问题是:“你希望你之后三到五年的发展是什么?”.我当时的标准回答是(原话):“成为在某一方面能够独当一面的技术专家“.后来经历了几家 ...
- Python中的yield生成器的简单介绍
Python yield 使用浅析(整理自:廖 雪峰, 软件工程师, HP 2012 年 11 月 22 日 ) 初学 Python 的开发者经常会发现很多 Python 函数中用到了 yield 关 ...
- day72 关于rbac组件的小部分面试题
rbac的权限组件 基于角色的权限控制 1.什么是权限? url代表的就是一个权限 2.如何实现权限的控制? 表结构 以我们讲的课的内容为例 菜单表: - title 标题 - icon 图标 ...
- librdkafka安装和php扩展php-rdkafka安装
1.安装librdkafka mac下 brew install librdkafka linux下 git clone https://github.com/edenhill/librdkafk ...
- js生成指定范围的随机数
<!doctype html> <html lang="en"> <head> <meta http-equiv="Conten ...
- js 面试知识点
基础 原型 原型链 作用域 闭包 异步 单线程 JS API DOM操作 AJAX 事件绑定 开发环境 版本管理 模块化 打包工具 运行环境 页面渲 ...
- css实现半圆和圆
1.半圆 半圆分为:上半圆.下半圆.左半圆.右半圆,我们只要学会制作某一个方向的半圆,其他方向的半圆都可以轻松实现,其原理都一样. 假如我们要制作上半圆,实现原理:把高度height设置为宽度widt ...
- 浏览器输入URL按回车后都经历了什么?
在浏览器上输入一个URL,按回车后,这个过程发生了什么? 1.首先,浏览器地址栏输入了URL,先解析URL,检测URL地址是否合法 2.浏览器先查看浏览器缓存-系统缓存-路由器缓存,如果缓存中有,会直 ...
- Jsの练习-数组常用方法 -slice()
slice() 返回从原数组指定开始下标到结束下标之间的项组成的新数组. slice()方法可以接收一个或两个参数,即要返回项的起始和结束位置. 在只有一个参数的情况下,slice()方法返回从该参数 ...
- Fescar Example-Spring Cloud
项目说明 本项目演示如何使用 Fescar Starter 完成 Spring Cloud 应用的分布式事务接入. 准备工作 在运行此示例之前,你需要先完成如下几步准备工作: 配置数据库 创建 UND ...