监控 systemd 服务状态的正确方法是什么

监控 systemd 服务状态的正确方法是什么

我正在尝试找出当某些 systemd 服务出现问题时通知我的正确方法。手动检查systemctl status不是一个可持续的选择;至少我想要一个简单的托盘图标,比如绿色或红色。一些声音和/或视觉通知也很有用。令人惊讶的是,我似乎没有找到任何现有的工具,所以我能想到的最好的办法就是编写自己的,也许是一些简单的 bash 脚本,它会偶尔轮询 systemctl,并更新图标状态。

相当贫穷,但可惜。

在我真正开始花时间做这件事之前,想确定一下,我是否有机会错过一些更好的选择?

答案1

sudo systemctl --type=service

sudo systemctl --state=active  

sudo systemctl --state=failed 

journalctl -b -p err

这些应该足以监视和发现任何行为不当的服务。

答案2

使用check_systemd Nagios 监控插件集合中的命令行工具。您可以在不带参数或设置 Nagios 的情况下调用它(这是一件很麻烦的事情)。

在 Ubuntu 上你只需要调用:

sudo apt -y install monitoring-plugins-systemd 

然后你可以检查

/usr/lib/nagios/plugins/check_systemd 

如果$?为 0,则一切正常;如果为 1,则表示不好;如果为 2,则表示严重

所有其他返回值都应该告诉您赶紧离开,因为世界着火了。

相关内容