pom.xml
<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>2.0.13</version> </dependency> <!-- https://mvnrepository.com/artifact/ch.qos.logback/logback-classic --> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.5.6</version> </dependency>
logback.xml は src/main/resourceに配置
<configuration> <property name="outputDir" value="/Users/tanakahda/Desktop/App/logs/" /> <property name="fileName" value="app" /> <property name="format1" value="%d{yyyy/MM/dd HH:mm:ss.SSS} [%-4p] [%c] %m%n" /> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${outputDir}${fileName}.%d{yyyy-MM-dd}.log</fileNamePattern> <maxHistory>7</maxHistory> </rollingPolicy> <encoder> <pattern>${format1}</pattern> </encoder> </appender> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>${format1}</pattern> </encoder> </appender> <root level="debug"> <appender-ref ref="FILE" /> <appender-ref ref="STDOUT" /> </root> </configuration>
import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class Main { /** ログ出力クラス */ private static Logger _log = LoggerFactory.getLogger(Main.class); public static void main(String[] args) { _log.info("処理を開始します。"); _log.info("処理を終了しました。"); }
結果:
2024/07/06 00:55:56.363 [INFO] [com.tanakahda.Main] 処理を開始します。 2024/07/06 00:55:57.753 [INFO] [com.tanakahda.Main] 処理を終了しました。