Ubuntu에서 rsyslogd 4.2.0을 실행 중입니다. 여기에 설명된 출력 채널 기능을 사용하려고 합니다.http://www.rsyslog.com/doc/rsyslog_conf_output.html
내 구성의 관련 부분은 다음과 같습니다.
$outchannel test_rotated,/var/log/test/test.log,1000000,/root/scripts/rotate-test-logs.pl
local0.* :omfile:$test_rotated
그러나 rsyslog는 아무 작업도 거부하고 /var/log/test/test.log도 나타나지 않습니다. 이 두 줄을 다음으로 바꾸면:
local0.* /var/log/test/test.log
모든 것이 잘 작동합니다(물론 파일이 자동으로 회전하지는 않습니다).
내가 무엇을 놓치고 있나요?
답변1
우분투 매뉴얼 페이지ㅏ제안 구문이 없는 것 같습니다.
local0.* :omfile:$test_rotated
귀하가 링크한 사이트는 조언을 제공합니다. 내용은 다음과 같습니다.
Keep in mind that $outchannel just defines a channel with "name". It
does not activate it. To do so, you must use a selector line (see
below). That selector line includes the channel name plus an $ sign in
front of it. A sample might be:
*.* $mychannel
어쩌면 이것이 작동할 수도 있습니다:
local0.* $test_rotated
ㅏ: 이는 분명히 사용 중인 버전 rsyslog
과 Ubuntu 버전에 따라 다릅니다. 그러니까 그냥 봐당신의매뉴얼 페이지( man rsyslog.conf
)를 클릭하거나 내가 링크한 사이트에서 올바른 버전을 선택하세요.