`

log4j每个小时生成一个日志文件

 
阅读更多

log4j.properties

属性文件

log4j.logger.visitlog=INFO, VisitFile
log4j.logger.pushlog=INFO, PushFile

#visitLog
log4j.appender.VisitFile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.VisitFile.encoding=UTF-8
log4j.appender.VisitFile.File=${catalina.home}/logTraffic/visitlog
log4j.appender.VisitFile.DatePattern='.'yyyy-MM-dd_HH'.csv'
log4j.appender.VisitFile.layout=org.apache.log4j.PatternLayout
log4j.appender.VisitFile.layout.ConversionPattern=%m%n

#pushLog
log4j.appender.PushFile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.PushFile.encoding=UTF-8
log4j.appender.PushFile.File=${catalina.home}/logTraffic/pushlog
log4j.appender.PushFile.DatePattern='.'yyyy-MM-dd_HH'.csv'
log4j.appender.PushFile.layout=org.apache.log4j.PatternLayout
log4j.appender.PushFile.layout.ConversionPattern=%m%n

对需要打印的对象类做处理

public class RequestMessage {
    private Logger logger = LoggerFactory.getLogger(this.getClass());
    private String ip = ""; // ip地址
    @Override
    public String toString() {
        return new ReflectionToStringBuilder(this, ToStringStyle.SIMPLE_STYLE).setExcludeFieldNames(new String[] {"logger"}).toString();
    }
}

记录日志如下

public final class LogEventDispatcher implements EventHandler<LogEvent> {

	private Logger visitLog = LoggerFactory.getLogger("com.qc.socket.scheduler.LogEventDispatcher.visitLog");

	@Override
	public void handle(LogEvent event) {
		RequestMessage requestMessage = event.getRequestMessage();
		switch (event.getType()) {
		case C_FILE:
			visitLog.info(requestMessage.toString());
			break;
		}
	}
}

OK

分享到:
评论

相关推荐

    log4j 写多个日志文件,按照日期每天都记

    2. **使用DailyRollingFileAppender**:`DailyRollingFileAppender`是`log4j`提供的一种特殊Appender,它可以按照指定的时间间隔(通常是每天)滚动生成新的日志文件。我们可以通过以下配置设置每日滚动: ```...

    log4j按照不同appender生成日志例子

    要实现按接口生成各自日志文件的目标,我们需要创建不同的Appender配置,并为每个接口指定一个Appender。以下是一个基本的Log4j配置文件(log4j.properties)的示例: ```properties # 配置控制台输出 log4j.root...

    log4j生成带时间戳的日志文件(包括extras包以及简单demo)

    总结来说,Log4j是一个强大的日志框架,通过使用extras包和适当的配置,我们可以方便地生成带有时间戳的日志文件,进行日志级别的控制,以及有效地管理日志文件的大小。在实际项目中,熟练掌握Log4j的使用对于提高...

    log4j按功能保存日志

    - 在Log4j的配置文件(通常是`log4j.properties`或`log4j.xml`)中,你可以定义多个Appender,每个Appender对应一个特定的功能或模块。 - 使用`category`或`logger`标签指定Logger的名称,这通常与你的功能模块相...

    tomcat下的log4j日志配置

    5. **重启 Tomcat**:重启 Tomcat 后,相应的日志文件将按照 `log4j.properties` 文件中的设置生成。 **优点**:灵活性高,可以针对每个应用定制化日志配置;便于管理和追踪。 **总结**:根据项目的需求选择合适的...

    log4j多文件输出打印

    在"Log4j多文件输出打印"的场景下,我们通常会配置多个Appender,每个Appender对应一个不同的输出文件。这样,不同的日志信息可以被分别写入不同的文件,便于管理和分析。例如,在`log4j.properties`配置文件中,...

    log4j自定义日志文件名及日志输出格式

    Log4j是Apache提供的一款广泛使用的日志框架,它提供了丰富的配置选项,允许开发者灵活地控制日志输出。当我们面对特定项目需求,比如需要自定义日志文件名和日志输出格式时,Log4j同样提供了相应的解决方案。 首先...

    Log4j生成日志保存

    Log4j是一款广泛应用于Java平台的日志记录框架,它的主要任务是帮助开发者记录应用程序运行过程中的各种信息,包括错误、警告、调试信息等。在Android平台上,虽然原生的`Log`类已经提供了基本的日志功能,但Log4j...

    log4cpp(添加按日期生成日志类)

    "Log4cpp(添加按日期生成日志类)" 提示我们这是一个关于Log4cpp的项目,而且已经进行了扩展,增加了按照日期生成日志文件的功能。Log4cpp是C++的一个日志记录库,它借鉴了Java中的log4j框架,提供了灵活的日志管理...

    log4j2+slf4j+测试类日志按日期生成

    当运行这个测试类,它将按照`log4j2.xml`配置生成日志文件,每24小时创建一个新的日志文件,便于管理和查询历史日志。 总结来说,`Log4j2`和`SLF4J`的组合使用,不仅简化了日志记录的代码,还提供了强大的日志管理...

    log4j日志详细讲解

    Log4j是一个广泛使用的Java日志框架,它允许开发者在应用程序中记录各种级别的日志信息,包括ERROR、WARN、INFO、DEBUG等。日志对于调试、性能分析、故障排查以及系统监控至关重要。以下是对Log4j日志的详细讲解: ...

    Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等

    配置Log4j通常有两种方式,一种是使用XML格式的配置文件(log4j.xml),另一种是使用Java属性文件(log4j.properties)。本例中,描述提到的是使用后者。`log4j.properties`文件采用键值对的形式来设定配置,例如: ...

    log4net 配置 根据日期生成 文件 根据 分类 (INFO、ERROR) 生成文件

    1. **根据日期生成文件**:每个日期生成一个独立的日志文件。 2. **按日志级别(INFO、ERROR)分别记录**:INFO级别的日志记录在一个文件中,ERROR级别的日志记录在另一个文件中。 #### 三、具体配置分析 ##### 1. ...

    Log4j 把不同包的日志打印到不同位置

    首先,我们需要了解Log4j的配置文件(通常是`log4j.properties`或`log4j.xml`)。在这个文件中,我们可以定义多个Appender(输出目的地)和Logger(日志记录器),每个Logger可以关联一个或多个Appender,并且可以...

    log4j记录Debug日志

    Log4j是Apache组织开发的一款广泛使用的Java日志框架,主要功能是用于记录应用程序运行过程中的各种日志信息。在Java编程中,日志记录是非常重要的一环,它可以帮助开发者追踪程序运行状态,定位错误,优化性能,...

    Log4j2异步写日志效率测试源码

    默认情况下,Log4j2使用同步模式记录日志,即每个日志事件都会阻塞直到写入完成。然而,通过启用异步日志模式,Log4j2会将日志事件放入一个队列,然后由一个单独的后台线程处理这些事件,从而避免了主线程的阻塞,...

    log4j.zip 项目日志

    解压“log4j.zip”后,我们通常会找到一个名为“log4j.properties”或“log4j.xml”的配置文件,这是Log4j的核心配置文件。例如,以下是一个简单的配置示例: ```properties # log4j.properties log4j.rootLogger=...

    日志 log4j

    Log4j是Apache软件基金会的一个项目,由Ceki Gülcü创建,主要用于生成应用程序的日志信息。它提供了一个简单但功能强大的API,可以方便地将日志信息输出到控制台、文件、数据库等不同的目的地,同时支持日志级别...

    log4j使用jar包和log4j.properties配置文件

    - `log4j.appender.R`配置了文件输出,使用`DailyRollingFileAppender`,每天生成一个新的日志文件,同样设置了输出格式。 ### 4. 日志级别与使用 Log4j提供了多种日志级别,从低到高依次是:TRACE、DEBUG、INFO、...

    配置Log4j的详细最好的日志工具

    每个日志消息都会被分配一个级别,只有当该级别的优先级等于或高于记录器所设定的级别时,这条消息才会被记录下来。 - **FATAL (0)**:最严重的错误,导致应用程序无法继续执行。 - **ERROR (3)**:运行时错误,...

Global site tag (gtag.js) - Google Analytics