版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/XUEER88888888888888/article/details/87807802
https://www.cnblogs.com/yidaxia/p/5820036.html
https://gitee.com/selfs/log4j/blob/master/log4j/src/com/zj/log4j/Log4jTest.java
打到不同的包里的日志 log4j.properties
log4j.rootLogger=INFO, console, file
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d [%t] %-5p crazyant-web %-17c{2} (%13F:%L) %X{USER_ID}|%X{USER_IP}|%X{SERVER_ADDRESS}|%X{SERVER_NAME}|%X{REQUEST_URI}|%X{SESSION_ID} - %m%n
log4j.appender.console.encoding=UTF-8
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.file=D:/logger2
log4j.appender.file.MaxBackupIndex=5
log4j.appender.file.MaxFileSize=1GB
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=[%-5p] crazyant-web %d{yyyy-MM-dd HH:mm:ss,SSS} %X{USER_ID}|%X{USER_IP}|%X{SERVER_ADDRESS}|%X{SERVER_NAME}|%X{REQUEST_URI}|%X{SESSION_ID} method:%l%n%m%n
log4j.appender.file.encoding=UTF-8
#com.zlhj.jsontohtml.htmlToJsonInterfaceMain 是包名,这个包里面的log日志会打到下面配置的路径下,且这个包里的日志文件不会再打到上面配置的总的log日志路径里
log4j.logger.com.zlhj.jsontohtml.htmlToJsonInterfaceMain=DEBUG, service
log4j.additivity.com.zlhj.jsontohtml.htmlToJsonInterfaceMain=false
log4j.appender.service=org.apache.log4j.RollingFileAppender
log4j.appender.service.File=D:/logger
log4j.appender.service.Append=true
log4j.appender.service.MaxFileSize=1GB
log4j.appender.service.MaxBackupIndex=5
log4j.appender.service.layout=org.apache.log4j.PatternLayout
log4j.appender.service.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%-5p][%c{1}] [%t] - %m%n
log4j.appender.service.encoding=UTF-8
log4j普通版本:
log4j.rootLogger=DEBUG,file,console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%m%n
log4j.appender.console.Encoding=GBK
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.File=logs/LottChartStBox.log
log4j.appender.file.Encoding=UTF8
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=[%p] %d{yyyy-MM-dd HH\:mm\:ss} %l\: %m%n
log4j.appender.FILE.Append=true
测试类
package com.zj.log4j;
import org.apache.log4j.Logger;
public class Log4jTest {
private static Logger logger = Logger.getLogger(Log4jTest.class);
public static void main(String[] args) {
logger.debug("hehe");
}
}
slf4j版本的日志:logback.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/base.xml"/>
<property name="LOG_HOME" value="/usr/local/tomcat/logss" />
<property name="LOG_NAME_PRE" value="zlhj_rulesEngine" />
<!-- 控制台输出 -->
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %X{address}-%X{userCode} %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<!-- 按照每天生成日志文件 -->
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--日志文件输出的文件名-->
<FileNamePattern>${LOG_HOME}/${LOG_NAME_PRE}.log.%d{yyyy-MM-dd}.log</FileNamePattern>
<!--日志文件保留天数-->
<MaxHistory>30</MaxHistory>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %X{address}-%X{userCode} %-5level %logger{50} - %msg%n</pattern>
<!--<pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n</pattern> -->
</encoder>
<!--日志文件最大的大小-->
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>80MB</MaxFileSize>
</triggeringPolicy>
</appender>
<logger name="org.springframework.web" level="INFO"/>
<!--myibatis log configure-->
<logger name="com.apache.ibatis" level="INFO"/>
<logger name="java.sql.Connection" level="INFO"/>
<logger name="java.sql.Statement" level="INFO"/>
<logger name="java.sql.PreparedStatement" level="INFO"/>
<!-- 日志输出级别 -->
<root level="INFO">
<!-- <appender-ref ref="STDOUT"/> -->
<appender-ref ref="FILE"/>
</root>
</configuration>
测试代码
private static final Logger LOG = LoggerFactory.getLogger(CustomRulesCtrl.class);