[EFK로 서버 로그 수집하기] 로그를 수집하는 이유

Hyunjun Kim·2025년 5월 27일
0

Data_Engineering

목록 보기
81/153

1 로그를 수집하는 이유

1.1 로그란?

1.1.1 로그의 의미

Log 란, 컴퓨터가 수행하는 도중 유의미한 내용을 남기는 기록을 말한다.
통상 파일로 남기는 기록을 말한다.

1.1.2 로그의 내용

로그에는 통상 다음 내용이 들어가야 한다.

  1. 로그를 남긴 시간

  2. 로그 레벨 (심각성의 정도)

    • TRACE : 어플리케이션에서 어떤 상황이 일어나는지 상세한 내용을 보고 싶을 때 남긴다. 라이브러리의 내부 동작을 주로 TRACE로 남기는 경우가 많다.
      • i. 예) network handshake 내용. service discovery 과정.
    • DEBUG : 디버깅 용도로 남기는 로그. 어플리케이션의 개발단계에서 유의미한 정보를 주로 남긴다.
    • INFO : 단순 정보를 남기는 용도이다.
    • WARN : 시스템의 주요기능일 제공 못하는 것은 아니지만, 반복해서 발생한다면 원인을 파악하거나 해소해야하는 로그.
    • ERROR : 시스템의 주요 기능을 제공 못하게 된 경우. 발생한 경우 빠르게 원인을 파악하거나 해소해야 하는 로그.
    • FATAL : 시스템이 이용 불가능하게 된 경우.
      • i. 예) Memory Crash, Disk Full
  3. 로그 내용

  4. 로그가 발생한 위치

    • 로그를 남긴 패키지, 클래스의 정보는 필수로 남겨야 한다.
    • 로그가 WARN, ERROR라면, 해당 로그가 발생한 코드의 위치(정확한 Line)를 알 수 있다면 문제점을 파악하는 데 도움이 많이 된다.


1.2 로그를 수집하는 이유

로그가 파일에 남아있다면 문제가 될 때 찾아보면 될텐데, 왜 수집이 필요할까?

  1. 시스템(HW)에 장애가 나면 로그파일에 다시 접근할 수 없을 수 있다. (켜지지 않아서 등)

  2. 사용하는 프로그램이 많아지거나, 인스턴스의 수가 많다면 일일히 들어가서 확인하기 어렵다. 모아놓고 빨리 확인하기 위해 필요.

  3. 필터링, 그룹, 검색 등을 이용해서 로그를 활용해서 더 신뢰성 있는 시스템을 만들 수 있다.

profile
Data Analytics Engineer 가 되

0개의 댓글