경로 또는 이름에 공백이 있는 Rsyslog 전달 로그

경로 또는 이름에 공백이 있는 Rsyslog 전달 로그

Rsyslog를 사용하여 파일 이름이나 경로에 공백이 있는 로그 파일을 전달하는 방법은 무엇입니까?

$ModLoad imfile
$InputFileName /var/lib/plexmediaserver/Library/Application\ Support/Plex\ Media\ Server/Logs/*
$InputFileTag plex
$InputFileStateFile stat-plex
$InputFileSeverity info
$InputFileFacility local3
$InputRunFileMonitor
local3.* @@10.0.0.5:514

작동하지 않습니다.. 작은따옴표와 큰따옴표를 시도했습니다. 공백을 삼중 이스케이프 처리합니다.. 알 수 없습니다.

답변1

레거시 모드에서 이 작업을 수행하는 방법을 모르지만 rsyslog가 지원하는 RainerScript에서는 쉽습니다. 다음으로 모두 교체

module(load="imfile" PollingInterval="10")
input(type="imfile"
    File="/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Logs/*"
    Tag="plex"
    Severity="info"
    Facility="local3")
local3.* @@10.0.0.5:514

매개변수가 있더라도 stateFile="stat-plex"더 이상 사용되지 않으며 glob 파일에서는 제대로 작동하지 않을 수 있습니다. rsyslog가 상태 파일 이름 자체를 처리하도록 해야 합니다.

답변2

실제로 폴더에 대한 심볼릭 링크를 생성했는데 효과가 있었습니다.

관련 정보