다음과 같은 규칙이 있습니다.
if $hostname startswith 'd.42ba7373' and $programname == 'app' then /var/log/applog
그리고 이 로그에 입력되는 메시지가 /var/log/syslog에도 출력되는 것을 원하지 않습니다. 그게 가능합니까?
답변1
폐기( ~
) 작업이 도움이 될 수 있습니다.http://www.rsyslog.com/doc/rsyslog_conf_actions.html
if $hostname startswith 'd.42ba7373' and $programname == 'app' then /var/log/applog
if $hostname startswith 'd.42ba7373' and $programname == 'app' then ~
답변2
비슷한 질문은여기. 위의 대답은 ubuntu 14.04 및 rsyslog 7.4.4의 경우와 같이 기본 rsyslog conf 파일에서 제거가 수행되면 완벽하게 작동합니다 /etc/rsyslog.conf
. 누군가 별도의 conf 파일을 사용하는 경우 50-default.conf
파일 이름 앞에 사전순으로 이름을 지정해야 합니다 . 50-default.conf 파일에는 로그를 .conf 파일에 넣기 위한 구성이 포함되어 있기 때문입니다 /var/log/syslog
.