Java log4j日志记录工具配置说明

    Java log4j日志记录工具配置说明

--- 以下是示例配置信息 ---

log4j.rootLogger = debug, stdout, logfile

log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.err
log4j.appender.stdout.layout = org.apache.log4j.SimpleLayout

log4j.appender.logfile = org.apache.log4j.FileAppender
log4j.appender.logfile.File = jbit.log
log4j.appender.logfile.layout = org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern =%d{yyyy-MM-dd HH\:mm\:ss} %l %p %F %m %n

--------------------
1..输出级别
    log4j.rootLogger = debug, stdout, logfile
    其中,dubug指的是日志记录器(Logger)的输出级别,主要输出级别含义如下。

    1.fatal<致命的,毁灭性的>:指出严重的错误事件将会导致应用程序的退出。
    2.error<错误,过失>:指虽然发生错误事件,但仍不会影响系统继续运行。
    3.warn<警告,提醒;通知>:表明会出现潜在错误的情形
    4.info< 信息;情报>:在粒度级别上指明消息,强调应用程序的运行过程。
    5.debug<调试;除错>:指出粒度信息事件,对调试应用程序是非常有帮助的。

    各个输出级别优先级
        fatal > error > warn > info > debug
    日志记录器(Logger)将只输出那些级别高于或等于它的信息,例如,级别为debug,将输出fatal,error,warn,info,debug级别的信息,而级别为error,将只输出fatal,error级别的日志信息。
--------------------

2..日志输出目的地(Appender)
    log4j.rootLogger = debug, stdout, logfile

    其中,stdout, logfile 指的是日志输出目的地的名字
    log4j允许记录日志到多个输出目的地,一个输出目的地被称为一个Appender。
    
    log4j中最常用的Appender有以下两种:
    1.ConsoleAppender:输出日志到控制台。通过Target属性配置输出到System.out或者System.err,默认是System.out。
    2.FileAppender:输出日志事件到一个文件。通过File属性配置文件的路径及名称。
--------------------

3..日志布局类型 (Layout)
    Appender必须使用一个与之关联的布局类型Layout,用来指定它的输出样式。log4j中最常用的Layout有以下三种:
    1.HTMLLayout:格式化日志输出为HTML表格。
    2.SimpleLayout:以一种非常简单的方式格式化日志输出,它输出级别Level,然后跟着一个破折号"——",最后是日志消息。
    3.PatternLayout:根据指定的转换模式格式化日志输出,从而支持丰富多样的输出格式。需要配置layout.ConversionPattern属性,若没有配置该属性,则使用默认的转换模式。
--------------------

4..转换模式 ConversionPattern
    对于PatternLayout,需要配置layout.ConversionPattern属性,常用的配置参数及含义如下:
    1. %d <date>     用来设置输出日志的日期和时间,默认格式为 ISO8601 。也在其后指定格式,比如 %d{yyyy-MM-dd HH:mm:ss}。
    2. %m <message> 用来输出代码中指定的消息。
    3. %n <line>    用来输出一个回车换行符。
    4. %l <location>用来输出日志事件的发生位置,包括类名,发生的线程,以及在代码中的行数。
    5. %p <prior>    用来输出优先级,及debug,info,warn,fatal等。
    6. %F <file>    用来输出文件名。
    7. %M <Method>    用来输出方法名。
--------------------

时间: 2024-09-17 07:00:27

Java log4j日志记录工具配置说明的相关文章

log4j,slf4j (日志记录工具)

一个logger对应着若干个appender和一个日志级别. 一个appender对应着一个输出位置与格式. 1.获取 <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> 需要的jar包.log4j.properties文件等项目结构见图1. 图1

ELK菜鸟手记 (一) 环境配置+log4j日志记录

1. 背景介绍 在大数据时代,日志记录和管理变得尤为重要. 以往的文件记录日志的形式,既查询起来又不方便,又造成日志在服务器上分散存储,管理起来相当麻烦, 想根据一个关键字查询日志中某个关键信息相当困难. 这个时候,ELK诞生了. 什么是ELK? 简单来说:它是一套完整的日志记录和分析的解决方案平台.   2. 技术栈介绍 ELK = Elasticsearch + Logstash + Kibana 2-1) Elasticsearch: ( Elasticsearch is a distri

Merlin的魔力: 异常和日志记录

为了理解问题的根源并适当地响应,Merlin 发行版添加了几个与异常处理相关的功能.现在,您不必手工分析堆栈转储信息就可以检查堆栈跟踪信息,并且可以把异常连成一条菊花链,这样就能够在重新抛出异常时附加上异常的原因,这会大大促进调试工作.此外,现在还有一个内建的日志记录工具用来记录消息的不同级别.在 Merlin 的魔力系列的这一部分,John Zukowski 演示了这些新的日志记录和异常功能的工作原理并提供了一个示例程序以供查看和下载. 这个 Merlin 发行版中新添加的许多功能(比如异常处

PHP中错误与异常的日志记录用法分析_php技巧

本文分析了PHP中错误与异常的日志记录用法.分享给大家供大家参考,具体如下: 提到 Nginx + PHP 服务的错误日志,我们通常能想到的有 Nginx 的 access 日志.error 日志以及 PHP 的 error 日志.虽然看起来是个很简单的问题,但里面其实又牵扯到应用配置以及日志记录位置的问题,如果是在 ubuntu 等系统下使用 apt-get 的方式来安装,其自有一套较为合理的的配置文件可用.再者运行的应用程序中的配置也会影响到日志记录的方式及内容. 错误与异常的区别 关于错误

[Java开发之路](16)学习log4j日志

1. 新建一个Java工程,导入Jar包(log4j-1.2.17.jar) Jar包下载地址:点击打开链接 2. 配置文件:创建并设置log4j.properties # 设置 log4j.rootLogger = debug,stdout,D,E   # 输出信息到控制台 log4j.appender.stdout = org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target = System.out log4j.append

如何有效地记录 Java SQL 日志(转)

在常规项目的开发中可能最容易出问题的地方就在于对数据库的处理了,在大部分的环境下,我们对数据库的操作都是使用流行的框架,比如 Hibernate . MyBatis 等.由于各种原因,我们有时会想知道在这些框架下实际执行的 SQL 究竟是什么. 虽然 Hibernate 可以在配置文件中打开 SHOW SQL 的功能, MyBatis 则可以在 Log4j 的配置文件中配置 SQL 语句的输出,但这些输出是类似这样的 INSERT - ? ? ? 语句,并不是一个完整可以运行的 SQL ,要想知

Java日志记录中很常见的五条规则

日志记录是在软件开发过程中常常需要考虑的关键因素.当产品运行出错时,日志文件通常是我们进行错误分析的首要选择.而且,在很多情况下,它们是我们手上唯一可以用来查明发生状况和问题根本原因的信息.可见,正确记录需要的信息是极其重要的. 以下5条日志规则,让我们可以检查和改进在代码中操作日志记录的方式. 同时也请注意,我们既不会讨论怎么配置一个日志引擎,也不会相互比较. 规则1.日志是面向读者的 日志消息不仅要对书写(日志)代码的人有意义,也应该对日志文件的读者有意义. 这似乎是一条很明显但却经常违背的

Apache日志记录组件Log4j出现反序列化漏洞 黑客可以执行任意代码 所有2.x版本均受影响

开源的东西用的人多了,自然漏洞就多.Apache用于日志记录的组件Log4j使用非常灵活,在相当多的开源项目中都有使用,此次漏洞影响所有Apache Log4j 2.*系列版本: Apache Log4j 2.0-alpha1 – Apache Log4j 2.8.1,使用Java 7+的用户应立即升级至2.8.2版本.绿盟科技发布安全威胁通告,通告全文如下: Apache Log4j是什么 Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文

[Java]log4j写SQL Server数据库日志的统一写法

[Java]log4j写SQL Server数据库日志的统一写法 编写者 日期 关键词 郑昀@ultrapower 2005-7-19 Java log4j sqlserver   SQL Server 2000 Driver for JDBC Service Pack 3的下载 之前需要注意一点,sql server同样必须打上了sp3的补丁,然后才能与jdbc for sqlserver sp3连接.如果是"Error establishing socket"错误,很有可能是要在s