Skip to content

Commit 0c5c4d8

Browse files
authored
Merge pull request #199 from Dokyeongyun/ft-220328-logback
Add logback library and Apply slf4j implementation
2 parents 7b4d5fa + bec4e9e commit 0c5c4d8

File tree

3 files changed

+57
-12
lines changed

3 files changed

+57
-12
lines changed

pom.xml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -156,13 +156,6 @@
156156
<artifactId>fontawesomefx-fontawesome</artifactId>
157157
<version>4.7.0-9.1.2</version>
158158
</dependency>
159-
160-
<!-- https://mvnrepository.com/artifact/log4j/log4j -->
161-
<dependency>
162-
<groupId>log4j</groupId>
163-
<artifactId>log4j</artifactId>
164-
<version>1.2.17</version>
165-
</dependency>
166159

167160
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
168161
<dependency>
@@ -187,5 +180,12 @@
187180
<scope>test</scope>
188181
</dependency>
189182

183+
<!-- logback -->
184+
<dependency>
185+
<groupId>ch.qos.logback</groupId>
186+
<artifactId>logback-classic</artifactId>
187+
<version>1.2.3</version>
188+
</dependency>
189+
190190
</dependencies>
191191
</project>

src/main/java/root/applications/Program.java

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,18 @@
44
import javafx.scene.Parent;
55
import javafx.scene.Scene;
66
import javafx.stage.Stage;
7+
import lombok.extern.slf4j.Slf4j;
78
import root.core.repository.constracts.PropertyRepository;
89
import root.core.repository.implement.PropertyRepositoryImpl;
910
import root.javafx.Controller.HomeController;
1011
import root.javafx.Controller.LeftMenuController;
1112
import root.javafx.DI.DependencyInjection;
1213

14+
@Slf4j
1315
public class Program extends Application {
1416

1517
public static Stage stage;
16-
18+
1719
PropertyRepository propRepo = PropertyRepositoryImpl.getInstance();
1820

1921
@Override
@@ -36,16 +38,21 @@ public void start(Stage primaryStage) throws Exception {
3638
}
3739

3840
public static void main(String[] args) {
39-
if(System.getProperty("resourceBaseDir") == null) {
40-
System.setProperty("resourceBaseDir", "");
41+
if (System.getProperty("resourceBaseDir") == null) {
42+
System.setProperty("resourceBaseDir", "");
4143
}
4244

45+
log.info("Start GUI Program");
4346
launch(args);
4447
}
4548

4649
private void setUpDependecyInjector() {
4750
// save the factory in the injector
48-
DependencyInjection.addInjectionMethod(HomeController.class, param -> {return new HomeController();});
49-
DependencyInjection.addInjectionMethod(LeftMenuController.class, param -> {return new LeftMenuController();});
51+
DependencyInjection.addInjectionMethod(HomeController.class, param -> {
52+
return new HomeController();
53+
});
54+
DependencyInjection.addInjectionMethod(LeftMenuController.class, param -> {
55+
return new LeftMenuController();
56+
});
5057
}
5158
}

src/main/resources/logback.xml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!-- 30초마다 설정 파일의 변경을 확인한다. 파일이 변경되면 다시 로딩한다 -->
3+
<configuration scan="true" scanperiod="30 seconds">
4+
5+
<property name="LOG_PATTERN" value="%date %level [%thread] %logger{10} [%file:%line] - %msg%n%ex{full}"/>
6+
<property name="LOG_PATTERN1" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n"/>
7+
<property name="LOG_PATTERN2" value="%d{yyyy-MM-dd HH:mm:ss}[%-15thread] %-5level [%file:%line] - %msg%n%ex{full}"/>
8+
<property name="LOG_DIR" value="./logs" />
9+
<property name="LOG_FILE" value="agent" />
10+
11+
<appender name="console"
12+
class="ch.qos.logback.core.ConsoleAppender">
13+
<encoder>
14+
<pattern>${LOG_PATTERN}</pattern>
15+
</encoder>
16+
</appender>
17+
18+
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
19+
<file>${LOG_DIR}/${LOG_FILE}.log</file>
20+
<rollingPolicy
21+
class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
22+
<!-- daily rollover -->
23+
<fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.gz</fileNamePattern>
24+
25+
<maxHistory>100</maxHistory>
26+
<totalSizeCap>500MB</totalSizeCap>
27+
</rollingPolicy>
28+
<encoder>
29+
<pattern>${LOG_PATTERN}</pattern>
30+
</encoder>
31+
</appender>
32+
33+
<logger name="root" level="debug">
34+
<appender-ref ref="console" />
35+
<appender-ref ref="FILE" />
36+
</logger>
37+
38+
</configuration>

0 commit comments

Comments
 (0)