rsyslog.conf에서 원격 로깅을 활성화했습니다.
# provides UDP syslog reception
module(load="imudp")
input(type="imudp" port="514")
그런 다음 /etc/rsyslog.d/devices.conf에 나는
$template RemoteLogs,"/var/log/devices/%HOSTNAME%.log"
*.* ?RemoteLogs
로컬 시스템(rsyslog 서버)이 해당 이벤트를 관련 /var/log/filename뿐만 아니라 /etc/log/devices/pi.log에도 기록한다는 것을 발견했습니다.
로컬 호스트(pi라고 함)에 대한 /etc/log/devices/ 로그인을 어떻게 방지합니까?
감사해요
답변1
입력을 지정할 때 적용할 규칙 집합도 지정하세요. 규칙 세트 외부의 입력은 규칙 세트에 의해 처리되지 않으며 그 반대의 경우도 마찬가지입니다.
module(load="imudp")
input(type="imudp" port="514" ruleset="remote")
ruleset(name="remote"){
$template RemoteLogs,"/var/log/devices/%HOSTNAME%.log"
*.* ?RemoteLogs
}
답변2
규칙 세트 솔루션이 나에게 적합하지 않습니다. 모든 메시지는 여전히 /var/log/messages에 나타납니다. 그러나 이 솔루션은 나에게 효과적이었습니다. 기본적으로 이 줄은 특정 호스트의 모든 메시지를 필터링합니다.
:hostname, contains, "myhostname" ~