Вращение журнала, вызывающее сбой nxlog
Я использую nxlog для просмотра двух файлов журнала vCenter в системе Windows Server 2008, и у меня очень простая конфигурация для отправки сообщений в Logstash. Nxlog начал сбой вчера после того, как файл был повернут. Вот мой конфиг:
<Extension syslog>
Module xm_syslog
</Extension>
<Input in1>
Module im_file
File "C:\ProgramData\VMware\VMware VirtualCenter\Logs\vpxd-[0-5][0-9].log"
SavePos TRUE
</Input>
<Input in2>
Module im_file
File "C:\ProgramData\VMware\VMware VirtualCenter\Logs\vpxd-alert-[0-5][0-9].log"
SavePos TRUE
</Input>
<Processor buffer1>
Module pm_buffer
MaxSize 1024
Type Mem
WarnLimit 512
</Processor>
<Processor buffer2>
Module pm_buffer
MaxSize 1024
Type Mem
WarnLimit 512
</Processor>
<Output out1>
Module om_udp
Host <ip>
Port 514
</Output>
<Output out2>
Module om_udp
Host <ip>
Port 514
</Output>
<Route 1>
Path in1 => buffer1 => out1
</Route>
<Route 2>
Path in2 => buffer2 => out2
</Route>
Вращение журнала vCenter немного странно, поэтому я думаю, что это, по крайней мере, частично вызывает эту проблему. Вы можете увидеть сверху имя файла, который я смотрю. Этот файл создается как vpxd-01.log и увеличивается оттуда. Файлы вращаются, когда они достигают 50 МБ, и старые журналы сжимаются после создания двух новых файлов, например, создается vpxd-03 и vpxd-01 сжимается.
Но вчера первый файл, который nxlog начал просматривать (с момента установки на прошлой неделе), был повернут, что привело к этой ошибке:
2013-12-28 19:41:08 WARNING input file does not exist: C:\ProgramData\VMware\VMware VirtualCenter\Logs\vpxd-47.log
Это повторяется 12 раз в течение следующих 24 часов, а затем nxlog завершился неудачей, пока я не перезапустил службу вчера утром.
Надеюсь, мое объяснение имеет смысл. В итоге я потерял около шести часов журналов, поэтому хочу убедиться, что это больше не повторится. У кого-нибудь есть решение или предложения?
1 ответ
Попробуйте использовать этот ввод вместо жесткого определения [0-5][0-9]:
<Input in2>
Module im_file
File "C:\ProgramData\VMware\VMware VirtualCenter\Logs\vpxd-*.log"
SavePos TRUE
</Input>