<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn" name="MyApp" packages="">
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="[%d{HH:mm:ss.SSS}] [%-5level] [%l] - %msg%xEx%n" />
</Console>
<Syslog name="RFC5424" format="RFC5424" host="10.0.7.167" port="514"
protocol="UDP" appName="record" mdcId="mdc" includeMDC="true"
facility="LOCAL0" enterpriseNumber="18060" newLine="true" messageId="Audit"
id="App">
</Syslog>
<!--这个会打印出所有的信息,每次大小超过size,则这size大小的日志会自动存入按年份-月份建立的文件夹下面并进行压缩,作为存档 -->
<RollingFile name="gameserver" fileName="./log/gameserver.log"
append="false" filePattern="./logs/$${date:yyyy-MM}/record-%d{yyyy-MM-yyyy}-%i.log.gz">
<PatternLayout
pattern="[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] [%l] - %msg%xEx%n" />
<SizeBasedTriggeringPolicy size="50MB" />
<ThresholdFilter level="debug">
</ThresholdFilter>
</RollingFile>
<RollingFile name="error" fileName="./log/error.log"
filePattern="./log/%d{yyyyMMddHHmm}error.log">
<PatternLayout
pattern="[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] [%l] - %msg%xEx%n" />
<SizeBasedTriggeringPolicy size="30MB" />
<ThresholdFilter level="error">
</ThresholdFilter>
</RollingFile>
<RollingFile name="rcd" fileName="./log/rcd.log"
filePattern="./log/%d{yyyyMMdd}rcd.log">
<PatternLayout
pattern="[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] [%l] - %msg%xEx%n" />
<ThresholdFilter level="info">
</ThresholdFilter>
<Policies>
<TimeBasedTriggeringPolicy interval="1"
modulate="true" />
</Policies>
</RollingFile>
</Appenders>
<Loggers>
<Root level="trace">
<AppenderRef ref="Console" />
</Root>
<Logger name="LOG">
<AppenderRef ref="RFC5424" />
<AppenderRef ref="gameserver" />
<AppenderRef ref="error" />
</Logger>
<Logger name="rcd">
<AppenderRef ref="RFC5424" />
<AppenderRef ref="rcd" />
</Logger>
</Loggers>
</Configuration>
public static Logger getLogger(Class clazz) {
return LogManager.getContext(clazz.getClassLoader(), false).getLogger("LOG");
}
public static Logger getLogger1(Class clazz) {
return LogManager.getContext(clazz.getClassLoader(), false).getLogger("rcd");
}
public static void main(String[] args) {
while (true) {
getLogger(MyLogger.class).error("error");
getLogger(MyLogger.class).warn("warn");
getLogger(MyLogger.class).info("info");
getLogger(MyLogger.class).debug("debug");
getLogger1(MyLogger.class).warn("rcdwarn");
getLogger1(MyLogger.class).info("rcdinfo");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
相关推荐
为了使Tomcat生成的日志文件按照日期每天新建,我们需要在配置文件中指定一个包含日期的文件名格式。例如,如果使用`java.util.logging`,可以在`logging.properties`中设置` handlers`为`java.util.logging....
// 实现你的文件名生成逻辑 } public static class CustomPatternLayout extends PatternLayout { public CustomPatternLayout() { super("%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c{1} - %m%n"); } @Override...
在上面的代码中,我们创建了一个静态的`Logger`类,初始化时指定日志文件路径,`log`方法则负责记录日志信息,包括当前时间、源文件名和行号。`flush`方法确保信息立即写入文件,而不是留在缓冲区。 使用这个日志类...
"Log4cpp(添加按日期生成日志类)" 提示我们这是一个关于Log4cpp的项目,而且已经进行了扩展,增加了按照日期生成日志文件的功能。Log4cpp是C++的一个日志记录库,它借鉴了Java中的log4j框架,提供了灵活的日志管理...
- 为避免日志文件过大,可以设置日志滚动策略,例如按天、按大小分割日志文件,保持日志的可管理性。 - 可以使用日志库(如Python的logging模块)来简化日志的生成和管理,设置不同的输出目标,如控制台、文件或...
为了便于管理和分析,有时我们需要按日期生成日志文件,并且限制日志文件的大小。Apache提供了一个名为`rotatelogs`的小工具,可以帮助我们实现这个目标。 `rotatelogs`是一个内建在Apache HTTP Server中的命令行...
如果超过设定值,关闭当前文件,创建新的日志文件(例如,通过在文件名后添加日期时间戳来区分)。 4. 错误处理:确保在遇到任何错误(如无法打开或写入文件)时,能够适当地记录或报告错误。 除了上述基本功能外,...
这里`File`属性指定了日志文件的基本路径和文件名,`DatePattern`属性设置了时间格式,使得日志文件按照`logfile.log.yyyy-MM-dd`的格式命名。 3. **配置Layout**:每个Appender还需要一个Layout来决定日志输出的...
这段配置中,我们定义了一个名为"RollingFileAppender"的滚动文件追加器,设置日志文件存储路径为"logs"目录下的"log.txt",并按照日期(年-月-日)滚动生成新的日志文件。`datePattern`属性指定了文件名格式,`...
本文将详细解析标题“根据文件名创建文件件,将文件移动到对应的文件夹中”所涉及的知识点,并提供实现这一功能的方法。 首先,我们要理解这个任务的核心目标:基于文件的扩展名(后缀名)来创建相应的文件夹,并将...
1. **根据日期生成文件**:每个日期生成一个独立的日志文件。 2. **按日志级别(INFO、ERROR)分别记录**:INFO级别的日志记录在一个文件中,ERROR级别的日志记录在另一个文件中。 #### 三、具体配置分析 ##### 1. ...
- **log4j.properties或log4j.xml**:Log4j的配置文件,定义日志级别(TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF)、输出目的地(控制台、文件、网络等)以及布局模式。 **5. 日志级别** - **TRACE**:最详细...
文件中内容包括模块中某个类单独输出到一个日志文件中、模块中某个package单独输出到一个日志文件中、同一模块不同package输出到一个日志文件中三种情况下log4j.properties配置项配置事例、Java类中代码如何一致编写...
IIS日志文件是指IIS服务器在记录用户访问信息时生成的文件。这些日志文件通常存放在系统目录的logfiles目录下,並以“W3SVC”进行命名。日志文件中包含了用户访问的IP地址、访问的网站文件等信息。 二、手动清除IIS...
- 用户设定完成后,工具会开始分割操作,根据用户指定的大小自动切割文件,并生成一系列小文件,通常会按照原文件名加编号的方式命名。 - 分割完成后,用户可以轻松地管理和传输这些小文件,需要时再将它们合并或者...
文件列表是一份包含文件名的清单,通常以文本或表格形式呈现,每一行代表一个文件的完整路径或仅仅文件名。这样的列表有助于用户快速了解特定目录结构下的文件分布情况。 "文件列表生成器"的核心功能在于遍历文件...
本教程将深入探讨如何在C++中创建一个能够打印log到文件的系统,同时具备删除旧日志和设定日志文件大小的功能。 首先,我们需要理解日志的基本概念。日志通常包含程序运行过程中的信息,如错误信息、警告消息、调试...
例如,如果你想每天生成一个新的日志文件,可以这样配置: ```xml <!-- 使用上面提到的模式 --> ``` 在这个配置中,`DatePattern`参数指定了滚动文件的时间间隔,'.'yyyy-MM-dd表示每天生成一个新...
生成文件指的是创建LIST.TXT文件,而获取文件名则指的是从当前目录中收集文件信息。这个过程涉及到文件系统的操作,是操作系统编程和脚本编写的基础技能。 在压缩包中的“生成当前文件的所有文件名”可能是这个...