rsyslog: 여러 메시지 삭제

rsyslog: 여러 메시지 삭제

rsyslog를 사용하여 한 번에 여러 메시지를 삭제하는 방법은 무엇입니까? 이것은 작동하지 않으며 실제 예제를 찾을 수 없습니다.

# Do not log any keepass and chmomium messages
if $programname == 'chromium.desktop'       then /dev/null
if $programname == 'keepass2.desktop'       then /dev/null

& stop

아래 해결 방법은 작동하지만 확인할 때 오류가 표시됩니다.rsyslogd -N1 -f <config_file>

rsyslogd: version 8.4.2, config validation run (level 1), master config /etc/rsyslog.d/00-discard.conf
rsyslogd: CONFIG ERROR: there are no active actions configured. Inputs will run, but no output whatsoever is created. [try http://www.rsyslog.com/e/2103 ]
rsyslogd: run failed with error -2103 (see rsyslog.h or try http://www.rsyslog.com/e/2103 to learn what that number means)

답변1

이 줄은 & stop"이전 선택기 반복"을 의미하고 "중지" 작업을 수행하여 선택한 메시지의 추가 처리를 중지합니다. 따라서 if ...각 선택 줄 뒤에 넣어야 합니다 . 그러나 작업이 writing 중이므로 /dev/null첫 번째 줄에서 원하는 작업을 수행하도록 할 수도 있습니다.

if $programname == 'chromium.desktop'       then stop
if $programname == 'keepass2.desktop'       then stop

답변2

메시지를 삭제하는 또 다른 방법은 다음과 같습니다.불필요한 메시지를 삭제하세요

예제에서처럼 "msg" 속성 대신 "programname" 속성을 확인하세요.

:programname, contains, "chromium.desktop" ~

:programname, contains, "keepass2.desktop" ~

관련 정보