-
log4j日志记录
普通类 -
- 支持
- 批判
- 提问
- 解释
- 补充
- 删除
-
-
log4j简介
Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。我们可以通过简单的配置文件来记录各种日志
-
1.配置
1.创建储存日志的文件夹,如d:/logs, 在linux环境下要设置linux的目录,如/var/infosystem/logs
2.创建配置文件
在项目根目录下创建log4j.xml(和src同一个目录),log4j.xml的优先级貌似比log4j.properies的权限要高
3.配置文件内容
- <?xml version="1.0" encoding="UTF-8" ?>
- <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
- <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
- <!--log4j.xml 配置文件 优先于 log4j.properties 配置文件-->
- <!-- 输出到控制台 -->
- <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
- <layout class="org.apache.log4j.PatternLayout">
- <param name="ConversionPattern"
- value="[%d{yyyy-MM-dd HH:mm:ss}] [%c] [%L] %p [%m]%n"/>
- </layout>
- </appender>
- <appender name="logdebug" class="org.apache.log4j.DailyRollingFileAppender">
- <param name="Threshold" value="DEBUG" />
- <param name="encoding" value="UTF-8" />
- <param name="File" value="D:/ontology/logs/debug.log" />
- <param name="DatePattern" value="'debug_'yyyy-MM-dd'.log'" />
- <layout class="org.apache.log4j.PatternLayout">
- <param name="ConversionPattern" value="[%d{yyyy-MM-dd HH:mm:ss}] [%c] [%L] %p [%m]%n" />
- </layout>
- </appender>
- <!-- 输出到日志文件 每天一个日志 -->
- <appender name="loginfo" class="org.apache.log4j.DailyRollingFileAppender">
- <param name="Threshold" value="INFO" />
- <param name="encoding" value="UTF-8" />
- <param name="File" value="D:/ontology/logs/info.log" />
- <param name="DatePattern" value="'info_'yyyy-MM-dd'.log'" />
- <layout class="org.apache.log4j.PatternLayout">
- <param name="ConversionPattern" value="[%d{yyyy-MM-dd HH:mm:ss}] [%c] [%L] %p [%m]%n" />
- </layout>
- </appender>
- <appender name="logerror" class="org.apache.log4j.DailyRollingFileAppender">
- <param name="Threshold" value="ERROR" />
- <param name="encoding" value="UTF-8" />
- <param name="File" value="D:/ontology/logs/error.log" />
- <param name="DatePattern" value="'error_'yyyy-MM-dd'.log'" />
- <layout class="org.apache.log4j.PatternLayout">
- <param name="ConversionPattern" value="[%d{yyyy-MM-dd HH:mm:ss}] [%c] [%L] %p [%m]%n" />
- </layout>
- </appender>
- <logger name="org.apache">
- <level value="WARN"/>
- </logger>
- <!-- 关闭某些包下的日志输出 -->
- <logger name="org.hibernate">
- <level value="OFF"/>
- </logger>
- <logger name="org.springframework">
- <level value="OFF"/>
- </logger>
- <!-- 日志的总开关设置 包括日志级别和 appender -->
- <root>
- <level value="DEBUG"/>
- <!-- <appender-ref ref="logdebug"/> -->
- <appender-ref ref="loginfo"/>
- <appender-ref ref="logerror"/>
- </root>
- </log4j:configuration>
4.代码测试
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- public class Log4jTest {
- //为类Log4jTest创建日志,
- private static Logger logger = LoggerFactory.getLogger(Log4jTest.class);
- public static void main(String[] args) {
- System.out.println("准备执行log4j");
- logger.info("这是个info信息");
- logger.error("这是个错误信息");
- }
- }
-
-
- 标签:
- conversionpatternvalue
- 记录
- utf-8
- 创建
- 配置文件
- paramname
- org.apache.log4j.patternlayoutparamname
- 1.
- logs
- 日志
- log4j
-
学习元评论 (0条)
聪明如你,不妨在这 发表你的看法与心得 ~