2개의 클라이언트 서버에서 단일 원격 서버로 로그를 보내고 싶습니다. 클라이언트 구성:
...
module(load="imfile" PollingInterval="10") # Polling every 10 secondes
...
if $syslogtag == 'apache' then {
action(type="omfwd" Target="192.168.0.10" Port="514" Protocol="udp" )
& stop
}
...
input(type="imfile"
File="/var/log/httpd/my_apache_log"
Tag="apache"
Severity="info"
Facility="local7")
...
서버 구성:
...
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
...
if $syslogtag == 'apache' and $syslogseverity-text == 'info' then {
/my_path/my_apache_log
& stop
}
...
이러한 구성은 매력처럼 작동합니다.
이제 사용자 정의 로그를 사용하고 싶습니다 template format
. 따라서 클라이언트 구성에서 다음과 같이 구성을 변경합니다.
...
module(load="imfile" PollingInterval="10") # Polling every 10 secondes
...
template (name="MyTemplate" type="list") {
property(name="hostname")
constant(value="', ")
property(name="msg")
constant(value="\n")
}
...
if $syslogtag == 'apache' then {
action(type="omfwd" Target="192.168.0.10" Port="514" Protocol="udp" template="MyTemplate")
& stop
}
...
input(type="imfile"
File="/var/log/httpd/my_apache_log"
Tag="apache"
Severity="info"
Facility="local7")
...
다음 명령을 실행하면 rsyslogd -N1
오류가 발생하지 않지만 원격 서버에 더 이상 로그가 없습니다.
왜?