如何防止我的 Amazon Linux EC2 实例 /var/log/messages 被 dhclient 和 ec2net 消息填满?

6 networking logging amazon-ec2 amazon-web-services

在亚马逊的Linux在AWS的EC2服务,它使用了一个很短的DHCP租约时间,这意味着/var/log/messages得到线是每对夫妇从分钟dhclientec2net服务。我怎样才能从日志记录中排除那些,所以任何重要的日志消息都不会在噪音中丢失(虽然它没有那么多磁盘空间,但这似乎是一种浪费,额外的日志记录到 Cloudwatch 日志,我真的没有需要)。据推测,如果我最终在获取 IP 地址时遇到麻烦,我可以重新打开日志记录(如果我能回到盒子上的话)。

这些类型的消息每隔几分钟就会重复一次:

Jun  8 09:14:49 server-name dhclient[2206]: PRC: Renewing lease on eth0.
Jun  8 09:14:49 server-name dhclient[2206]: XMT: Renew on eth0, interval 9900ms.
Jun  8 09:14:49 server-name dhclient[2206]: RCV: Reply message on eth0 from fe80::my:link:locl:addr.
Jun  8 09:14:49 server-name ec2net: [get_meta] Trying to get http://169.254.169.254/latest/meta-data/network/interfaces/macs/0a:91:b3:my:mac:addr/local-ipv4s
Jun  8 09:14:49 server-name ec2net: [rewrite_aliases] Rewriting aliases of eth0
Jun  8 09:14:49 server-name ec2net: [get_meta] Trying to get http://169.254.169.254/latest/meta-data/network/interfaces/macs/0a:91:b3:my:mac:addr/subnet-ipv4-cidr-block
Run Code Online (Sandbox Code Playgroud)

小智 8

这仅涉及告诉日志系统忽略来自dhclient和 的消息ec2net。编辑该/etc/rsyslog.conf文件,并在#### RULES ####为其他文件定义日志记录的行之后和之前,添加以下两行:

:programname,isequal,"dhclient"  ~
:programname,isequal,"ec2net"    ~
Run Code Online (Sandbox Code Playgroud)

根据手册页~指示“不要记录此内容” rsyslog.conf

然后,运行service rsyslog restart以让系统重新启动日志记录守护程序。


对于Amazon Linux 2, rsyslogd 已更新以支持更直观的“stop”关键字,因此您可以改用以下行:

:programname,isequal,"dhclient"  stop
:programname,isequal,"ec2net"    stop
Run Code Online (Sandbox Code Playgroud)

并使用systemctl restart rsyslog.