rsyslog에서 동적 파일 이름이 작동하지 않습니다.

rsyslog에서 동적 파일 이름이 작동하지 않습니다.

rsyslog의 파일 이름은 정적이거나 동적일 수 있습니다. 후자는 특정 메시지 조건에 따라 메시지를 다른 파일로 자동 분할하려는 경우에 유용합니다. IP를 기준으로 로그를 분할해야 합니다. 예: 10.10.10.10.log 왜 작동하지 않나요? 다른 것을 사용하여 만들 수 있나요? 아마도 python/bash 스크립트일까요?

내 구성 파일은 다음과 같습니다: [rsyslog v5]

#### RULES ####

local6,local5.*                              /var/log/systems/device-all.log

<=15.info;mail.none;authpriv.none;cron.none                /var/log/messages

authpriv.*                                              /var/log/secure

mail.*                                                  -/var/log/maillog

cron.*                                                  /var/log/cron

*.emerg                                                 *

uucp,news.crit                                          /var/log/spooler

local7.*                                                /var/log/boot.log

$template DynamicFile,"/var/log/systems/host-%HOSTNAME%.log"

*.*    -?DynamicFile

local6,local5.*                               /var/log/systems/device-all.log

답변1

먼저 템플릿을 다음과 같이 설정해야 할 것 같습니다.

$template DynamicFile,"/var/log/systems/host-%fromhost-ip%.log"

IP별로 분리해야 하기 때문이죠. 다음으로 로깅에 대한 올바른 값은 다음과 같습니다.

*.*    ?DynamicFile

관련 정보