728x90
보통 프로젝트를 진행하면서 나는 System.out.println(" 변수 내용 " + 변수); 를 사용했었다.
하지만 로그 레벨을 제어할 수 없다고 하면서, log4j를 사용하는 것이 좋다고 한다.
# 첫번째 방법.
build.gradle.kts 쪽에서
implementation("org.slf4j:slf4j-api:2.0.5")
써주고 gradle 빌드 해준다.
원하는 자바에
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Logger logger = LoggerFactory.getLogger(getClass());
를 넣어준다.
logger.debug("result ", result);
또는 info 등 원하는 로그 레벨로 사용해준다.
# 두번째 방법
참고 : SLF4J 뜻은
Simple Logging Facade for Java
자바를 위한 간단한 로깅처리 처리라는 뜻
build.gradle.kts 쪽에서
compileOnly("org.projectlombok:lombok")
또는
annotationProcessor("org.projectlombok:lombok")
를 넣어준다.
같이 써도 문제는 없다.
원하는 자바에
import lombok.extern.slf4j.Slf4j;
@Slf4j
public class main {
를 넣어주고
log.debug("result ",result);
마찬가지로 원하는 로그 레벨을 사용해준다.
# 위에만 할 시에 log가 콘솔창에 안나옴.
해줘야할 것.
resources 부분에
logback-spring.xml을 만들고
그 안에
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="true">
<!-- Appenders -->
<!-- 전달받은 로그를 어디에 출력할지 결정. 콘솔 출력, 파일 저장, 데이터베이스 저장 등 -->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder> <!-- encoder : appender에 포함되어 출력할 로그의 형식을 지정 -->
<Pattern>%d %5p [%c] %m%n</Pattern>
</encoder>
</appender>
<appender name="console-infolog" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<Pattern>%d %5p %m%n</Pattern>
</encoder>
</appender>
<!-- Logger -->
<!-- 로그를 출력하는 요소로, level 속성을 통해 출력할 로그 레벨을 조절하여 appender에 전달. 첫 번째 logger에서 com.dandy.spring.api src/main/java/ 디렉터리 안의 자바 패키지 경로를 의미함. -->
<logger name="com.dandy.spring.api" level="DEBUG" appender-ref="console" />
<logger name="jdbc.sqlonly" level="DEBUG" appender-ref="console-infolog" />
<logger name="jdbc.resultsettable" level="DEBUG" appender-ref="console-infolog" />
<!-- Root Logger -->
<root level="off">
<appender-ref ref="console" />
</root>
</configuration>
를 넣어주기
'개발 > Spring Boot' 카테고리의 다른 글
[maven] intellij springboot jsp 인식 안될 때 사용 (0) | 2023.03.30 |
---|---|
[SpringBoot] @RequiredArgsConstructor 필요없는 소스 리팩토링 필드 주입 & 생성자 주입 차이 TIL (0) | 2023.03.03 |
[springBoot] 내장 톰캣 Server port 변경 (0) | 2022.12.01 |
[Mybatis] Mybatis-config.xml setting 및 사용 이유 그리고 same sample (0) | 2022.12.01 |
[Spring Boot] application.yml DB 연동 - Oracle에 log4jdbc 적용 (Oracle, MariaDB) (0) | 2022.11.28 |