Computer Science/Linux

[Linux] Linux Log System | 리눅스 로그 시스템

lww7438 2023. 9. 21. 16:39

Linux Log System

 

리눅스 로그 시스템

 

 

 

- 로그에는 에러 사항, 서버 접근 이력, 장애 사항 등을 포함하여 매우 중요한 정보들이 저장되어 있기에  
  리눅스 시스템 관리자에게 로그 관리는 매우 중요한 업무 중 하나이다.

 


Linux Logging Types (리눅스 로그 유형)

 

- 리눅스에는 아래와 같이 두 가지 로그 기록 메커니즘이 있다:

 

  • Kernel Logging
    - Error, Warning 및 Kernel이 기록한 로그
     
  • User Logging
    - Host Machine에서 수행된 Process들과 Service들이 기록한 로그

 


Linux Kernel Logging (리눅스 커널 영역 로그)

 

Image Source:Linux Logging Complete Guide written by Schkn

- Kernel Space에서의 로그 기록은 Kernel Ring Buffer를 통해 이루어진다.

- Kernel Ring Buffer는 Circular Buffer로, 시스템이 부팅할 때 발생하는 로그들이 저장된다.

- 즉, 리눅스 컴퓨터를 시작할 때 콘솔에 출력되는 로그들은 Kernel Ring Buffer에 저장되어 있던 로그들이다.

- Kernel Logging은 syslog 데몬 혹은 rsyslog에 의해 관리되는 User Logging 보다 먼저 수행된다.

- Kernel-related Log들을 직접 열어보는 대신, dmesg 명령어를 통해 커널 로그를 확인할 수 있다.

- Kernel Ring Buffer는 /dev 디렉토리의 Character Device File(kmsg)로 구성되는데,
  kmsg는 Kernel Ring Buffer를 읽고 쓰기 위한 추상적 구현체이다.

- kmsg Virtual Device는 Kernel Ring Buffer로의 Entrypoint 역할을 수행하며,
  이 과정에서 생기는 프로세스에 대한 로그는 /proc/kmsg 파일에 출력된다.

- /proc/kmsg 파일은 대부분 User Space의 Logging Utility를 수행하는 싱글 프로세스에 의해서만 Parsing되는데,
  일반적으로 대부분의 리눅스 배포판에서는 rsyslog가 이를 수행하며,
  때때로 어떤 리눅스 배포판에서는 syslogd가 수행하기도 한다.
- rsyslog에는 파일 시스템을 통해 커널 로그에 리디렉션하는 Module이 내장되어 있다.

- 과거, 커널 로그는 klogd Daemon을 통해 조회하였으나, 대부분의 리눅스 배포판에서는 rsyslog로 대체되었다.

- systemd와 같은 유틸리티를 통해 Kernel Ring Buffer에 데이터를 Write 하는 것 또한 가능하다.

 


Linux User Side Logging (리눅스 유저 영역 로그)

 

- 리눅스 유저 영역 로그 기록 메커니즘은 Syslog 프로토콜을 기반으로 한다.

- Syslog는 리눅스 인스턴스에서 발생되는 로그에 대한 표준이며,
  Severity Level과 Facility Level이 정의되어 있고, 이에 따라 분류되어 로그의 내용과 구조를 이해하기 용이하다.
- Syslog Server에서 로그를 분석하고 시각화할 수 있다.

 

Linux Severity Level

 

 

Linux Facility Level

- 리눅스 시스템에서는 다양한 유틸리티와 프로그램들이 로그를 생성하는데,
  어떤 프로세스가 로그를 전송했는지를 코드화하여 관리한다.

 

 


Linux Logging Configuration (리눅스 로그 환경설정)

 


Linux Logs Monitoring Utilities (리눅스 로그 모니터링 유틸리티)

 


Linux Logging Utilities (리눅스 로그 기록 유틸리티)

 

 


Reference: devconnected, Linux Logging Complete Guide, URL, 2023년 9월 21일 검색

 

Reference: Wikipedia, Syslog, URL, 2023년 9월 25일 검색