在Ubuntu系统中,Syslog是一个重要的日志处理工具,用于收集、存储和管理系统日志信息。为了有效地过滤Syslog消息,可以采用以下几种技巧:
/etc/rsyslog.conf
或 /etc/rsyslog.d/
目录下。你可以通过编辑这些文件来设置过滤规则。authpriv.*;local1.* /var/log/auth.log
这条规则表示将所有来自认证服务(authpriv)的以及本地设施(local1)的日志消息写入到 /var/log/auth.log
文件中。/etc/syslog-ng/syslog-ng.conf
。你可以使用 source
和 filter
语句来定义日志的源和过滤器。source s_local {
tcp(ip("0.0.0.0") port(514));
udp(ip("0.0.0.0") port(514));
};
filter f_local {
host("192.168.1.1");
};
log {
source(s_local);
filter(f_local);
destination(d_syslog);
}
在这个示例中,过滤器 f_local
定义了只有来自特定IP地址的日志消息会被处理。grep "USER HOOVER" /var/log/auth.log
这条命令会在 /var/log/auth.log
文件中搜索包含 “USER HOOVER” 的行。/etc/logrotate.d/
目录下找到 rsyslog
的配置文件,并设置日志文件的大小和轮替策略。例如:/var/log/syslog {
size 100M
rotate 4
compress
delaycompress
missingok
notifempty
create 640 syslog adm
}
这个配置表示当 /var/log/syslog
文件达到 100MB 时进行轮替,并保留最近的 4 个轮替文件。通过以上技巧,你可以更有效地过滤和管理Ubuntu系统中的Syslog消息,从而提高系统管理的效率和可靠性。