`

Log4j配置文件和部分常见问题

阅读更多

在做iOS apns push时使用到log4j,首次运行出现log4j错误,部分信息如下

log4j:WARN No appenders could be found for logger

log4j:WARN Please initialize the log4j system properly

 

解决方法是:在src 目录下创建LOG4J 的配置文件log4j.properties,文件内容如下:

 

log4j.rootLogger=WARN, stdout

 

log4j.appender.stdout=org.apache.log4j.ConsoleAppender

 

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

 

log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n

 

配置文件信息:

常用log4j配置,一般可以采用两种方式,.properties.xml,下面举两个简单的例子:

 

一、log4j.properties

### 设置org.zblog域对应的级别INFO,DEBUG,WARN,ERROR和输出地A1A2 ##

log4j.category.org.zblog=ERROR,A1

log4j.category.org.zblog=INFO,A2

log4j.appender.A1=org.apache.log4j.ConsoleAppender

### 设置输出地A1,为ConsoleAppender(控制台) ##

log4j.appender.A1.layout=org.apache.log4j.PatternLayout

### 设置A1的输出布局格式PatterLayout,(可以灵活地指定布局模式)##

log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n

### 配置日志输出的格式##

log4j.appender.A2=org.apache.log4j.RollingFileAppender

### 设置输出地A2到文件(文件大小到达指定尺寸的时候产生一个新的文件)##

log4j.appender.A2.File=E:/study/log4j/zhuwei.html

### 文件位置##

log4j.appender.A2.MaxFileSize=500KB

### 文件大小##

log4j.appender.A2.MaxBackupIndex=1

log4j.appender.A2.layout=org.apache.log4j.HTMLLayout

##指定采用html方式输出

 

二、log4j.xml

<?xml version="1.0" encoding="GB2312" ?>

<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

<appender name="org.zblog.all" class="org.apache.log4j.RollingFileAppender">

<!-- 设置通道ID:org.zblog.all和输出方式:org.apache.log4j.RollingFileAppender -->

<param name="File" value="E:/study/log4j/all.output.log" /> <!-- 设置File参数:日志输出文件名 -->

<param name="Append" value="false" /> <!-- 设置是否在重新启动服务时,在原有日志的基础添加新日志 -->

<param name="MaxBackupIndex" value="10" />

<layout class="org.apache.log4j.PatternLayout">

<param name="ConversionPattern" value="%p (%c:%L)- %m%n" /> <!-- 设置输出文件项目和格式 -->

</layout>

</appender>

<appender name="org.zblog.zcw" class="org.apache.log4j.RollingFileAppender">

<param name="File" value="E:/study/log4j/zhuwei.output.log" />

<param name="Append" value="true" />

<param name="MaxFileSize" value="10240" /> <!-- 设置文件大小 -->

<param name="MaxBackupIndex" value="10" />

<layout class="org.apache.log4j.PatternLayout">

<param name="ConversionPattern" value="%p (%c:%L)- %m%n" />

</layout>

</appender>

<logger name="zcw.log"> <!-- 设置域名限制,即zcw.log域及以下的日志均输出到下面对应的通道中 -->

<level value="debug" /> <!-- 设置级别 -->

<appender-ref ref="org.zblog.zcw" /> <!-- 与前面的通道id相对应 -->

</logger>

<root> <!-- 设置接收所有输出的通道 -->

<appender-ref ref="org.zblog.all" /> <!-- 与前面的通道id相对应 -->

</root>

</log4j:configuration>

 

三、配置文件加载方法:

import org.apache.log4j.Logger;

import org.apache.log4j.PropertyConfigurator;

import org.apache.log4j.xml.DOMConfigurator;

public class Log4jApp {

public static void main(String[] args) {

DOMConfigurator.configure("E:/study/log4j/log4j.xml");//加载.xml文件

//PropertyConfigurator.configure("E:/study/log4j/log4j.properties");//加载.properties文件

Logger log=Logger.getLogger("org.zblog.test");

log.info("测试");

}

}

感谢hehongwei44

分享到:
评论

相关推荐

    Log4j配置文件

    本文将详细探讨Log4j配置文件中的关键组成部分及其配置方式。 #### 二、配置文件基本结构 Log4j的配置文件可以通过两种主要格式定义:`properties`格式和`XML`格式。下面以`properties`格式为例进行介绍: ```...

    log4j-1.2.17的jar包以及依赖包,还有一份log4j的配置文件,输出到控制台和文件夹两种配置

    **二、Log4j配置文件** 在压缩包中,还包含了一份名为`log4j.properties`的配置文件。这是Log4j使用的一种配置格式,基于Java Properties格式。配置文件决定了日志信息如何输出、输出到哪里,以及日志的级别等关键...

    log4j日志配置以及配置文件详解

    接下来,`log4j配置说明.txt`文件通常会提供更详细的解释和示例,包括如何配置不同的appender(如FileAppender、RollingFileAppender等),如何定义不同logger的级别,以及如何使用自定义的error handler和filter。...

    log4j的配置文件.zip

    6. **配置文件结构**:`log4j.properties`文件通常采用键值对的形式,如`log4j.rootLogger=DEBUG, Console, File`表示根Logger的日志级别为DEBUG,并将其输出到Console和File两个Appender。Appender的配置会紧接着...

    log4j的配置文件介绍

    ### Log4j配置文件详解 #### 一、Log4j简介与优势 Log4j是Apache组织提供的一个开源日志框架,广泛应用于Java环境中。它提供了强大的日志管理能力,帮助开发者灵活控制日志信息的生成流程。Log4j的核心优势在于: ...

    log4j常用配置和Demo

    Log4j配置文件(log4j.properties) Log4j的配置通常在`log4j.properties`文件中进行,以下是一些常见的配置选项: - **rootLogger**:定义日志器的默认行为,包括级别和appender。 ```properties log4j.root...

    log4j配置及使用

    加载配置文件是初始化Log4j的第一步,这可以通过`PropertyConfigurator.configure()`或`DOMConfigurator.configure()`方法完成。 5. **实例化Logger** 创建并使用Logger对象是实际记录日志的关键步骤。通过`...

    tomcat下的log4j日志配置

    本文将详细介绍两种常见的 Log4j 配置方式:Tomcat 级别的统一日志管理和每个 web 应用分别配置 Log4j,并着重介绍第二种方法的具体步骤。 #### 一、Tomcat 级别的统一日志管理 这种方法适用于希望对整个 Tomcat ...

    log4j及配置文件

    总结来说,Log4j是Java应用中不可或缺的工具,它通过`log4j.properties`配置文件实现了强大的日志管理,使得开发者能够轻松控制日志输出,提升开发效率,同时对系统运行状态进行有效监控。理解并熟练掌握Log4j的配置...

    log4j实用配置扩展

    log4j的主要优势在于其灵活性和可扩展性,允许用户通过配置文件自定义日志记录的方式,无需修改应用程序代码。 #### 二、日志记录的目的 在应用程序中记录日志主要有以下三个目的: 1. **监视代码中变量的变化...

    log4j(内含log4j的jar包和log4j的配置文件:有DEBUG和INFO两种)

    标题提到的是"log4j(内含log4j的jar包和log4j的配置文件:有DEBUG和INFO两种)",这表明我们讨论的是一个关于日志管理的工具——Log4j,它是一个广泛使用的Java日志框架。其中包含的jar包是Log4j的运行库,而配置文件...

    log4j的jar包以及配置文件

    **Log4j配置文件** 在"压缩包子文件的文件名称列表"中没有具体的配置文件,但通常来说,Log4j的配置文件名为`log4j.properties`或`log4j.xml`。以下是一个简单的`log4j.properties`配置示例: ``` # 设置root ...

    Log4j配置实例

    Log4j配置文件** Log4j的配置主要通过一个名为`log4j.properties`或`log4j.xml`的配置文件进行。这个文件定义了日志的行为,包括日志级别、输出目的地、格式等。下面是一个简单的`log4j.properties`配置示例: ```...

    log4j配置文件基本含义说明

    ### Log4j配置文件基本含义说明 #### 一、引言 Log4j是一款非常流行的Java日志框架,被广泛应用于各种规模的应用程序中。它提供了灵活的日志记录功能,帮助开发者有效地跟踪应用程序的行为和状态。为了更好地理解和...

    log4j配置与使用方法

    ### log4j配置与使用方法 #### 一、log4j简介 log4j是Apache的一个开源项目,通过使用log4j,开发者能够控制日志信息的生成、等级以及输出的目的地。它允许用户根据不同的环境调整日志的级别,从而帮助开发者在...

    log4j配置

    Log4j的配置通常通过一个XML或properties格式的配置文件完成,例如`log4j.properties`或`log4j.xml`。以下是一个基本的`log4j.properties`配置示例: ```properties # 设置根日志器的级别为INFO log4j.rootLogger=...

    java日志包 log4j jar包 配置文件

    配置文件是Log4j的关键,通常命名为`log4j.properties`或`log4j.xml`。这个文件定义了Log4j的行为,包括设置Logger的级别、定义Appender及其Layout,以及Appender之间的过滤策略。例如,你可以设置一个Appender只...

    log4j配置文件

    `log4j.txt`很可能是Log4j的配置文件,它定义了日志如何被记录、格式化以及存储的位置。而`log4j日志文件路径的配置.txt`则可能专注于说明如何配置日志输出的路径,这是确保日志文件正确保存和管理的重要部分。 在`...

    log4j的配置

    log4j.xml配置文件遵循XML格式,主要由以下几部分组成: 1. **文档声明**:用于声明当前XML文档的版本和编码方式。 - `&lt;xml version="1.0" encoding="UTF-8"?&gt;` 2. **DTD声明**:用于引用外部DTD文件来定义XML...

Global site tag (gtag.js) - Google Analytics