所有Logwatch配置都在一个文件中处理。要编辑该文件,请发出命令sudo nano /usr/share/logwatch/default.conf/logwatch.conf。您将要编辑MailTo = option。如果您在本地查看,请将其设置为您希望日志发送到的Linux用户名(例如MailTo = linuxidc)。如果要将这些日志发送到外部电子邮件地址,则还需要将MailFrom = option更改为合法的电子邮件地址。在同一配置文件中,您还可以设置详细级别和要发送的日志范围。保存并关闭该文件。
配置完成后,您可以使用以下命令发送第一封邮件:
logwatch --detail Med --mailto ADDRESS --service all --range today
Where ADDRESS is either the local user or an email address.
有关使用Logwatch的更多信息,请发出命令man logwatch。阅读手册页以查看可与该工具一起使用的不同选项。
Rsyslog
Rsyslog是将远程客户端日志发送到集中式服务器的便捷方式。 假设您有一台Linux服务器要用于从数据中心的其他Linux服务器收集日志。 使用Rsyslog,这很容易完成。 必须在所有客户端和集中式服务器上安装Rsyslog(通过发出sudo apt-get install rsyslog之类的命令)。
安装后,在集中式服务器上创建/etc/rsyslog.d/server.conf文件,其中包含以下内容:
# Provide UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
# Provide TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514
# Use custom filenaming scheme
$template FILENAME,"/var/log/remote/%HOSTNAME%.log"
*.* ?FILENAME
$PreserveFQDN on
保存并关闭该文件。 现在,在每台客户机上,使用以下内容创建文件/etc/rsyslog.d/client.conf:
$PreserveFQDN on
$ActionQueueType LinkedList
$ActionQueueFileName srvrfwd
$ActionResumeRetryCount -1
$ActionQueueSaveOnShutdown on
*.* @@SERVER_IP:514
SERVER_IP是中央服务器的IP地址。 保存并关闭该文件。 使用以下命令在所有计算机上重新启动rsyslog:
sudo systemctl restart rsyslog
您现在可以使用命令查看集中式日志文件(在集中式服务器上运行):
tail -f /var/log/remote/*.log
tail命令允许您实时查看这些文件。 您应该看到包含客户端主机名的日志条目(图6)。
Rsyslog
图6:显示已连接客户端条目的Rsyslog。
Rsyslog是一个很棒的工具,用于创建单个入口点以查看所有Linux服务器的日志。
总结
本文仅涉及在Linux平台上找到的日志工具的表面。 并且上述每个工具都能够胜过此处概述的内容。 但是,此概述应该为您提供一个开始漫长一天的Linux日志文件之旅的地方。
Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx