以下は私のlogback.xmlファイルです:
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="false">
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<!-- <Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</Pattern> -->
<Pattern>%-30(%date{ISO8601,UTC} [%thread]) %highlight(%-5level) %logger{32} %line - %msg%n </Pattern>
</layout>
</appender>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>logs/search_service.log</file>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!-- <Pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</Pattern> -->
<Pattern>%-30(%date{ISO8601,UTC} [%thread]) %highlight(%-5level) %logger{32} %line - %msg%n </Pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>logs/archived/search_service.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- <maxFileSize>10MB</maxFileSize> -->
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
</appender>
<root level="info">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</root>
<!-- <root level="debug">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</root> -->
</configuration>
以下は、私が使用しているmaven依存関係です:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.7.25</version>
</dependency>
以下は、メインクラスで使用する方法です。
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Mainclass extends AbstractVerticle {
final static Logger LOGGER = LoggerFactory.getLogger(Mainclass.class);
public static void main(String[] args){
LOGGER.info("Hi.");
}
}
以下は、ファット jar をデプロイする方法です。
java -DconfigPath="myconfig.conf" -DLogback.configurationFile="logback.xml" -jar myapp.jar
私の問題は、上記のコマンドを実行すると、次のような 3 つの警告が表示され、ログが記録されず、ログ ファイルが作成されないことです。
log4j:WARN No appenders could be found for logger (io.netty.util.internal.logging.InternalLoggerFactory).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.