
Как переслать файл журнала, содержащий пробел в имени или пути, с помощью 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
Я не знаю, как это сделать в устаревшем режиме, но это легко сделать в RainerScript, который ваш rsyslog, вероятно, поддерживает. Замените все на
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
На самом деле я просто создал символическую ссылку на папку, и это сработало.