Syslog는 시스템, 장비 등에서 발생하는 이벤트를 네트워크로 전송하는 프로토콜이다. Syslog의 Priority와 Facility는 로그의 중요도와 발생 위치를 구분하는 중요한 역할을 한다.
Priority
Priority는 로그의 수준을 의미하며, 0부터 7까지 8단계로 구분된다. 각 Priority의 의미는 다음과 같다.
0: Emergency: 시스템이 사용 불가능한 상태
1: Alert: 즉각적인 조치가 필요한 상태
2: Critical: 심각한 문제가 발생한 상태
3: Error: 오류가 발생한 상태
4: Warning: 경고가 발생한 상태
5: Notice: 일반 정보
6: Info: 세부 정보
7: Debug: 디버그 정보
일반적으로 Priority 3 이상부터는 문제가 발생한 이벤트로 간주된다. Priority 6과 7은 디버그 정보로, 시스템 관리자가 필요에 따라 수집할 수 있다.
Facility
Facility는 로그의 발생 위치를 의미하며, 0부터 23까지 24단계로 구분됩니다. 각 Facility의 의미는 다음과 같다.
0: Kernel: 커널
1: User: 사용자 프로그램
2: Mail: 메일 시스템
3: System daemons: 시스템 데몬
4: Security/Authorization messages: 보안/인증 메시지
5: Printer subsystem: 프린터 서브시스템
6: Network news subsystem: 네트워크 뉴스 서브시스템
7: UUCP subsystem: UUCP 서브시스템
8: Logging subsystem: 로깅 서브시스템
9: LMTP: LMTP 서브시스템
10: IMAP: IMAP 서버
11: SMTP: SMTP 서버
12: DNS: DNS 서버
13: DHCP client: DHCP 클라이언트
14: DHCP server: DHCP 서버
15: NTP: NTP 서버
16: Syslog messages generated by local applications: 로컬 응용 프로그램에서 생성된 Syslog 메시지
17: Local0: 로컬 0
18: Local1: 로컬 1
19: Local2: 로컬 2
20: Local3: 로컬 3
21: Local4: 로컬 4
22: Local5: 로컬 5
23: Local6: 로컬 6
24: Local7: 로컬 7
Linux에서는 0부터 15까지의 Facility를 사용하며, Cisco와 같은 네트워크 장비에서는 16부터 23까지의 Facility를 사용된다.
Syslog Format
Syslog 메시지는 다음과 같은 형식으로 구성된다.
<priority>VERSION ISOTIMESTAMP HOSTNAME APPLICATION PID MESSAGEID STRUCTURED-DATA MSG
Priority: 로그의 Priority
VERSION: Syslog 버전
ISOTIMESTAMP: 로그 발생 시간
HOSTNAME: 로그 발생 호스트 이름
APPLICATION: 로그 발생 응용 프로그램
PID: 로그 발생 프로세스 ID
MESSAGEID: 로그 메시지 ID
STRUCTURED-DATA: 구조화된 데이터
MSG: 로그 메시지 본문
예를 들어, 다음과 같은 Syslog 메시지는 mail Facility의 Debug Priority의 메시지임을 알 수 있다.
1 2019-10-11T22:10:12.003Z asecurity.dev su - ID33 - allmnet send eamil
'Linux' 카테고리의 다른 글
Docker - 기본 배포/실행 방법 (0) | 2024.03.07 |
---|---|
Docker - 이미지, 컨테이너, 레이어, 가상화 이해 (0) | 2024.03.03 |
Docker Compose - 오류시 자동 재시작 (0) | 2024.02.29 |
Github - 파일 히스토리까지 완전 삭제 하기(reset, revert) (0) | 2024.02.29 |
Docker - M1 no matching manifest for linux/arm64/v8 in the manifest list entries 에러 (0) | 2024.02.29 |