-
[My-Books] Logback 적용기 - 로그를 제대로 남겨보자!개발 ing 2025. 3. 11. 02:38
해당 글은 NHN Academy 프로젝트 과정 My-books 서비스를 만들면서 했던 내용이다
지금까지 개발을 하면서 가장 많이 듣고 가장 많이 했던 말이 있다
"에러가 나거나 하면 디버깅을 하지말고 우선 로그를 찍어서 로그 기록을 확인해봐라"
솔직히 이 말을 처음 들었을 때는 "왜 찍어야하지? 왜 로그 기록을 확인해야지?" 라는 생각이 든다 -> 작자도 그랬다
프로젝트 경험이 쌓일수록 로그 확인이 얼마나 중요한지 깨달았다
결론부터 말하면 무조건 로그를 찍고 로그 확인을 습관화하는 것이 개발에서 매우 중요하다
그럼 왜 로그가 왜 중요한지 대해 이번글에서 함께 살펴보겠다
1. 로그(Log) 란 무엇인가?
- log 는 애플리케이션이 동작하는 동안에 발생하는 이벤트나 상태 변화를 기록해 놓은 것이다
로그에도 여러가지가 있는데
일단 기본적으로
- 웹 서버의 접근 로그(Acess Log)
- 데이터베이스 로그
- 인프라 로그
- 그리고 개발자가 의도적으로 찍는 애플리케이션 로그 (ex. System.out.println(), console.log(), 또는 Logger.info() )
1.1 로그가 중요한 이유
1. 문제 파악의 근거
- 애플리케이션이 예상치 못한 상황 예를들어, 에러와 예외 에 처했을때 로그를 통해
- 무엇이, 언제, 어떻게 발생했는지 확인할 수 있다
- 로그가 없으면 모니터링이 불가능하고 원인을 추적하기도 어려워진다
2. 운영 환경에서의 유일한 단서
- 운영 중인 서버에서는 실시간으로 코드를 수정하거나 디버깅을 하기 어려운 경우가 많다
- 이때 로그는 유일한 단서가 된다
- 로그가 없으면 사고가 발생했을 때 원인을 분석할 방법이 사라진다
따라서 로그를 남기는 것은 시스템의 안정성과 문제 해결에 매우 중요한 역할을 한다.
일단 이 글에서는 가볍게 로그의 개념과 중요한 이유를 알려주었다
다음 글에서는 Java Backend 에서 Log를 어떤식으로 설정하고 사용해야하는지 공부하고 알려주겠다.
'개발 ing' 카테고리의 다른 글
[My-Books] Logback 적용기 - 설정해야겠지? (0) 2025.03.16 [Agarang] 지금까지 내가 잘 못 알고 있었던 점 (2) - 아키텍처 재구성 (0) 2025.03.02 [DOSI:RAK] 부하테스트 시작 - CPU, 메모리, 디스크 (0) 2025.02.17 [Agarang] 지금까지 내가 잘 못 알고 있었던 점 (1) - 문제제기 (0) 2025.02.08 [DOSI:RAK] “DOSI:RAK 서비스 개발 : Spring EventListener로 객체지향 설계 문제 해결하기” (1) 2024.12.16