Linux

[Linux] 로그 관련 파일 - /etc/rsyslog.conf

thdwldud 2025. 9. 29. 09:26

/etc/rsyslog.conf 파일

facility.priority	action
  • facility : 일종의 서비스. 메시지를 발생시키는 프로그램의 유형
  • priority : 위험의 정도. 설정한 수준을 포함해서 높으면 메시지 보냄
  • action : 메시지를 보낼 목적지나 행동들에 관한 설정. 보통 파일명이나 아이디를 적음

facility 나열은 콤마(,) 사용

facility.priority의 조합 나열은 세미콜론(;) 사용

priority 앞에 '='을 사용할 경우 해당 수준(priority)의 위험도와 같은 경우에만 메시지 기록. '!' 기호와 함께 사용하면 해당 수준(priority)만 제외할 때 사용

facility의 종류

facility 설명
cron cron, at과 같은 스케줄링 프로그램이 발생한 메시지
auth, security login과 같이 인증 프로그램 유형이 발생한 메시지
authpriv ssh와 같이 인증을 필요한 프로그램 유형이 발생한 메시지로 사용자 추가 시에도 메시지가 발생
daemon telnet, ftp 등과 같이 여러 데몬이 발생한 메시지
kern 커널이 발생한 메시지
lpr 프린트 유형의 프로그램이 발생한 메시지
mail mail 시스템이 발생한 메시지
mark syslogd에 의해 만들어지는 날짜 유형
news 유즈넷 뉴스 프로그램 유형이 발생한 메시지
syslog syslog 프로그램 유형이 발생한 메시지
user 사용자 프로세스
uucp UUCP(UNIX to UNIX Copy Protocol) 시스템이 발생한 메시지
local0~local7 여분으로 남겨둔 유형
* 모든 facility를 의미

priority의 종류

priority 설명
none 지정한 facility를 제외
보통 앞부분에 모든 facility에 관한 설정을 하고, ; 기호 뒤에 특정한 facility를 제외할 때 사용
debug 프로그램을 디버깅할 때 발생하는 메시지
info 통계, 기본 정보 메시지
notice 특별한 주의를 필요하나 에러는 아닌 메시지
warning, warn 주의가 필요한 경고 메시지
error, err 에러가 발생하는 경우의 메시지
crit 크게 급하지는 않지만 시스템에 문제가 생기는 단계의 메시지
alert 즉각적인 조정을 해야하는 상황
emerg, panic 모든 사용자들에게 전달해야 할 위험한 상황
* 모든 priority를 의미

action의 종류

action 설명
file 지정한 파일에 로그를 기록, /(root 디렉터리)로 시작해서 절대 경로를 기재
ex. /var/log/messages
@host 지정한 호스트로 메시지를 UDP 기반으로 전달
ex. @192.168.12.22
@@host 지정한 호스트로 메시지를 TCP 기반으로 전달
ex. @@192.168.12.22
user 지정한 사용자가 로그인한 경우 해당 사용자의 터미널로 전달
ex. “:omusrmsg:root,posein,yuloje”
* 현재 로그인되어 있는 모든 사용자의 화면으로 전달
ex. “:omurmsg:*”
콘솔 또는 터미널 지정한 터미널로 메시지를 전달
ex. /dev/tty2

 

사용 예

  • 모든 facility가 발생하는 메시지 중에 crit 수준의 메시지만 /var/log/critical 파일에 기록하는데 커널이 발생하는 메시지는 제외
*.=crit;kern.none        /var/log/critical
  • 모든 emerg 수준 이상의 문제가 발생하면 모든 사용자에게 메시지를 전달. omusrmsg는 User Message Output Module의 약자로 사용자 관련 기능 구현 내장 플러그인
*.emerg        :omusrmsg:*
  • 인증 관련 로그를 root 및 posein 사용자의 터미널로 전송
authpriv.*        :omusrmsg:root,posein
  • mail 관련한 모든 정보는 /var/log/maillog에 기록하는데, info 수준의 로그는 제외
mail.*;mail.!=info        /var/log/maillog
  • uucp 및 news에서 발생하는 crit 수준 이상의 메시지는 /var/log/news에 기록
uucp.crit;news.crit        /var/log/news
uucp,news.crit        /var/log/news

 

💡 rsyslog와 관련 모듈
rsyslog는 모듈식 디자인으로 다양한 모듈을 제공하고 있음
제공되는 모듈은 크게 om(output module)으로 시작하는 출력 모듈과 im(input module)으로 시작하는 입력 모듈로 나눌 수 있음
출력 모듈에는 omsnmp, ommysql, omrelp 등
입력 모듈에는 imfile, imudp, imtcp 등
관련 정보는 ‘man rsyslog.conf’에서 확인 가능