Rsyslog 중앙 로그 호스트

Rsyslog 중앙 로그 호스트

syslog-ng 중앙 로깅 호스트에서 rsyslog로 마이그레이션 중입니다. 요즘 CentOS 리포지토리에서 syslog-ng를 찾을 수도 없습니다. 호스트 이름과 시설별로 로그를 필터링하고 싶습니다.

syslog-ng에서 이 작업을 수행하는 방법은 다음과 같습니다.

destination std { 
    file("/var/log/HOSTS/$HOST/$YEAR/$MONTH/$DAY/$FACILITY_$HOST_$YEAR_$MONTH_$DAY" 
        owner(root) group(root) perm(0600) dir_perm(0700) create_dirs(yes)
    ); 
};

rsyslog를 사용하여 이를 수행하는 쉬운 방법이 있습니까?

답변1

이는 아래와 같이 템플릿을 통해 수행됩니다.

$template HostDynFile,"/var/log/HOSTS/%HOSTNAME%/%$YEAR%/%$MONTH%/%$DAY%/%syslogfacility-text%_%HOSTNAME%_%$YEAR%_%$MONTH%_%$DAY%"

그런 다음 출력 선택기 행을 정의할 때 이 템플릿을 사용할 수 있습니다. 예를 들면 다음과 같습니다.

*.* -?HostDynFile

자세한 내용은 여기를 참조하세요:rsyslog를 사용하여 CentOS 및 RHEL 5에 중앙 로그 호스트 구축

관련 정보