syslog.conf

agnusdei·2024년 7월 10일

/etc/syslog.conf 설정 파일의 패시프릭(Priority) 설명

/etc/syslog.conf 파일에서 패시프릭은 로그 메시지의 중요도를 나타내며, 다양한 레벨이 있어 각각의 중요도에 따라 다른 처리 방식을 지정할 수 있습니다.

패시프릭(Priority) 레벨

패시프릭은 로그 메시지의 심각성에 따라 다음과 같이 분류됩니다:

  • emerg (*.emerg):

    • 설명: 시스템이 불능 상태로 빠지거나 복구가 불가능할 정도의 심각한 문제를 나타냅니다.
    • 예시: 시스템의 중요한 서비스가 다운되었을 때 발생하는 메시지입니다.
  • alert (*.alert):

    • 설명: 즉시 조치가 필요한 문제를 나타냅니다. 사용자에게 경고를 줄 필요가 있습니다.
    • 예시: 서버의 디스크 공간이 심각하게 부족하여 서비스가 중단될 가능성이 있을 때 발생하는 메시지입니다.
  • crit (*.crit):

    • 설명: 심각한 상태를 나타내며, 즉시 조치가 필요합니다.
    • 예시: 중요한 서비스의 프로세스가 비정상적으로 종료되었을 때 발생하는 메시지입니다.
  • err (*.err):

    • 설명: 에러 조건을 나타내며, 시스템의 기능에 영향을 줄 수 있습니다.
    • 예시: 데이터베이스 연결 오류로 인해 특정 서비스 요청이 실패했을 때 발생하는 메시지입니다.
  • warning (*.warning):

    • 설명: 경고 조건을 나타냅니다. 문제가 발생하지 않았지만 잠재적인 문제가 있을 수 있습니다.
    • 예시: 디스크 공간이 부족하여 서비스에 영향을 줄 수 있는 경우 발생하는 메시지입니다.
  • notice (*.notice):

    • 설명: 일반적이지만 중요할 수 있는 상태를 나타냅니다.
    • 예시: 주기적인 서비스 상태 업데이트 메시지입니다.
  • info (*.info):

    • 설명: 정보성 메시지를 나타냅니다. 일반적인 운영 상태를 보고합니다.
    • 예시: 서버의 시작 또는 정지와 같은 관리 작업의 메시지입니다.
  • debug (*.debug):

    • 설명: 디버깅을 위한 메시지를 나타냅니다. 보통 개발 단계에서 사용됩니다.
    • 예시: 애플리케이션 내부의 상세한 동작 정보를 로깅할 때 사용하는 메시지입니다.

예시 설정 파일

다음은 /etc/syslog.conf 파일에서 패시프릭을 사용한 예시 설정입니다:

# critical 이상의 메시지는 콘솔에 출력
*.crit                          /dev/console

# alert 이상의 메시지는 root 사용자의 콘솔에 출력
*.alert                         root

# error 이상의 메시지는 /var/log/error.log 파일에 기록
*.err                           /var/log/error.log

# info 이상의 메시지는 원격 호스트로 전송
*.info                          @192.168.1.100

# notice 이상의 메시지는 /var/log/notice.log 파일에 기록
*.notice                        /var/log/notice.log

# debug 이상의 메시지는 디버깅을 위해 별도의 파일에 기록
*.debug                         /var/log/debug.log

설정 설명

  • 콘솔 출력: *.crit /dev/console는 critical 이상의 메시지를 시스템 콘솔에 출력합니다. 이는 시스템 관리자에게 즉각적인 조치가 필요한 상태를 알립니다.
  • 특정 사용자 콘솔 출력: *.alert root는 alert 이상의 메시지를 root 사용자의 콘솔에 출력합니다. 이는 더욱 심각한 문제를 나타내며, 즉시 조치가 필요할 수 있습니다.
  • 파일 기록: *.err /var/log/error.log는 error 이상의 메시지를 /var/log/error.log 파일에 기록합니다. 시스템에서 발생한 에러를 추적하고 분석하는 데 유용합니다.
  • 원격 전송: *.info @192.168.1.100은 info 이상의 메시지를 IP 주소가 192.168.1.100인 원격 호스트로 전송합니다. 중요한 정보 메시지를 중앙 집중화된 로그 서버로 전송하여 모니터링하거나 보관할 수 있습니다.
  • 파일 기록: *.notice /var/log/notice.log는 notice 이상의 메시지를 /var/log/notice.log 파일에 기록합니다. 일반적이지만 중요할 수 있는 상태를 추적합니다.
  • 디버그 로깅: *.debug /var/log/debug.log는 debug 이상의 메시지를 /var/log/debug.log 파일에 기록합니다. 애플리케이션의 상세한 동작 정보를 추적하여 문제 해결을 돕습니다.

설정 적용 방법

위 예시와 같이 /etc/syslog.conf 파일을 수정한 후에는 변경 사항을 적용하기 위해 rsyslog 서비스를 재시작해야 합니다:

sudo systemctl restart rsyslog

이렇게 하면 시스템의 로그 메시지를 효과적으로 관리하고 중요도에 따라 적절한 조치를 취할 수 있습니다.


위의 설명을 통해 /etc/syslog.conf 파일에서 사용되는 패시프릭(Priority)에 대해 더 깊이 이해하고, 다양한 상황에 맞게 설정할 수 있는 능력을 갖추실 수 있을 것입니다.

profile
DevSecOps, Pentest, Cloud(OpenStack), Develop, Data Engineering, AI-Agent

0개의 댓글