서버에서 발생하는 주요 이벤트, 동작, 예외 등의 정보를 기록한 텍스트 데이터로,
쉽게 말하자면 서버에서 무슨 일이 일어나고 있는 지를 기록한 보고서 입니다!
서버에서 일어나는 세세한 일들은 너무 많아서 보고도 무슨 말인지 전부 다 파악하기는
힘들지만! 보다보면 중요하고 지금 필요한 정보를 얻을 수 있습니다.
🐞디버깅 - 코드 오류나 예외 상황 추적
📈모니터링 - 서버 상태 확인, 요청 처리 시간 파악 등
🛡️보안 - 의심스러운 요청 기록, 인증 실패, 접근 로그 등
🧾감사 - 사용자의 행위 기록, 변경 이력 추적 등
로그가 왜 필요한지는 알았지만? 그래서 어떤 종류의 로그가 있을까요?
로그의 종류를 알았으면 그런 로그들이 얼마나 자세하게,
어떤부분을 보여 줄 지를 설정을 해봐야겠죠?
이제 실제 로그를 사용 해 볼까요?
로그를 출력해주는 기본 도구들과 주요 특징들을 소개합니다!
| 도구/스택 | 설명 | 주요 특징 |
|---|---|---|
| Logback / Log4j | Java 기반 로그 기록 라이브러리 | - 다양한 로그 레벨 지원 - 파일, 콘솔, DB 등 다양한 출력 대상 설정 가능 - Spring Boot와 기본 통합됨 |
| ELK Stack | Elasticsearch + Logstash + Kibana 로 구성된 로그 분석 스택 | - 대용량 로그 수집 및 검색 - Kibana로 시각화 가능 - 복잡한 로그 파이프라인 구성 가능 |
| Sentry / Datadog | 실시간 에러 모니터링 및 알림 도구 | - 예외 발생 시 실시간 추적 - 알림 기능 (Slack, Email 등과 연동) - 트레이스 및 사용자 정보 포함 |
서버에서는 Log4j를 많이 사용하지만, 상황이나 필요에 따라서
다른 도구들을 이용하여 여러 상황을 대비하고 해결 할 수 있습니다!로그 = 개발과 운영에 필수!!