我只是设置了系统日志转发器,但是如何转发较旧的历史日志(如access_log)呢? 是否有可能重播日志文件,以便他们发送历史logging?
logging器命令有一个'-f'选项,允许你指定一个文件名。 '-n'让你指定一个远程服务器来发送它。
您可以通过logger任何文本文件传输到系统日志。 这将遵循您在syslog.conf指定的任何stream式方法,因此在执行此操作之前,请确保您的syslog.conf文件列出了syslog服务器。
cat access_log | logger -t access_log_old
这将采取access_log,逐行读取,并简单地发送整个行到您的系统日志服务器的标记“access_log_old”。 一些注意事项:
每行都会在access_log的开始处包含date字段,这可能不是您想要的。 您可以使用sed或awk从每一行中awkdate字段。 像这样的东西可以工作:
cat access_log | sed 's/MATCH//g' | logger -t access_log
请注意,syslog中的事件时间将是事件被接收的时间,而不是日志中的事件。