Switched to a logger system instead of System.out
Signed-off-by: Louis Vallat <louis@louis-vallat.xyz>
This commit is contained in:
parent
7b4edc70f1
commit
e2f9ca8b8d
13
build.gradle
13
build.gradle
@ -1,13 +1,23 @@
|
|||||||
plugins {
|
plugins {
|
||||||
id 'java'
|
id 'java'
|
||||||
|
id 'application'
|
||||||
}
|
}
|
||||||
|
|
||||||
group 'xyz.vallat.louis'
|
group 'xyz.vallat.louis'
|
||||||
version '0.1-SNAPSHOT'
|
version '0.1-SNAPSHOT'
|
||||||
|
|
||||||
|
apply plugin : 'java'
|
||||||
|
ext {
|
||||||
|
javaMainClass = 'xyz.vallat.louis.MovieQuoteBot'
|
||||||
|
}
|
||||||
|
|
||||||
|
application {
|
||||||
|
mainClassName = javaMainClass
|
||||||
|
}
|
||||||
|
|
||||||
jar {
|
jar {
|
||||||
manifest {
|
manifest {
|
||||||
attributes 'Main-Class': 'xyz.vallat.louis.MovieQuoteBot'
|
attributes 'Main-Class': javaMainClass
|
||||||
}
|
}
|
||||||
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
|
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
|
||||||
|
|
||||||
@ -21,4 +31,5 @@ repositories {
|
|||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
|
implementation 'ch.qos.logback:logback-classic:1.2.3'
|
||||||
}
|
}
|
@ -1,9 +1,13 @@
|
|||||||
package xyz.vallat.louis;
|
package xyz.vallat.louis;
|
||||||
|
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
public class MovieQuoteBot {
|
public class MovieQuoteBot {
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
System.out.println("Hello World!");
|
Logger logger = LoggerFactory.getLogger(MovieQuoteBot.class.getCanonicalName());
|
||||||
|
logger.debug("Hello World!");
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
42
src/main/resources/logback.xml
Normal file
42
src/main/resources/logback.xml
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<configuration scan="true">
|
||||||
|
<!-- You can configure per-logger level at this point -->
|
||||||
|
<!-- This set of preconfigured loggers is good if you want to have a DEBUG level as baseline -->
|
||||||
|
<logger name="io.netty" level="INFO"/>
|
||||||
|
<logger name="reactor" level="INFO"/>
|
||||||
|
|
||||||
|
<!-- Display the logs in your console with the following format -->
|
||||||
|
<!-- You can learn more about this here: https://logback.qos.ch/manual/layouts.html#ClassicPatternLayout -->
|
||||||
|
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
|
||||||
|
<encoder>
|
||||||
|
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
|
||||||
|
</encoder>
|
||||||
|
</appender>
|
||||||
|
|
||||||
|
<!-- Log to a file as well, including size and time based rolling -->
|
||||||
|
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||||
|
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||||||
|
<fileNamePattern>logs/d4j.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
|
||||||
|
<maxFileSize>100MB</maxFileSize>
|
||||||
|
<maxHistory>90</maxHistory>
|
||||||
|
</rollingPolicy>
|
||||||
|
<encoder>
|
||||||
|
<charset>UTF-8</charset>
|
||||||
|
<Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %-40.40logger{39} : %msg%n</Pattern>
|
||||||
|
</encoder>
|
||||||
|
<prudent>true</prudent>
|
||||||
|
</appender>
|
||||||
|
|
||||||
|
<!-- Avoid blocking while logging to file by wrapping our file appender with async capabilities -->
|
||||||
|
<appender name="ASYNC" class="ch.qos.logback.classic.AsyncAppender">
|
||||||
|
<queueSize>512</queueSize>
|
||||||
|
<appender-ref ref="FILE"/>
|
||||||
|
</appender>
|
||||||
|
|
||||||
|
<!-- Here you can set the base logger level. If DEBUG is too chatty for you, you can use INFO -->
|
||||||
|
<!-- Possible options are: ALL, TRACE, DEBUG, INFO, WARN, ERROR, OFF -->
|
||||||
|
<root level="ALL">
|
||||||
|
<appender-ref ref="CONSOLE"/>
|
||||||
|
<appender-ref ref="FILE"/>
|
||||||
|
</root>
|
||||||
|
</configuration>
|
Loading…
Reference in New Issue
Block a user