我想要监控 Linux 机器随时间运行的进程。
我的 DIY 解决方案是:
将每一分钟的内容转储 ps aux --forest
到文件中。
背景:如果我收到一条消息“昨天 8 点左右出现了问题”,我想看看发生了什么。
有很多工具可以总结负载和 io 值,但我需要更多细节。
我可以像上面的转储那样进行临时管道工程ps
,但我想还有更好的解决方案。
哪种工具可以帮助我?
关闭
这个问题被关闭了,因为我要求一个工具。我在这里问了同样的问题:
https://softwarerecs.stackexchange.com/questions/20459/monitoring-processes-in-detail-not-summarized
答案1
您必须意识到,过于精细的监控会对系统性能产生负面影响。这就是您通常监控服务器和服务的总体运行状况并额外关注以下方面的原因:具体绩效指标与您的服务相关的。
那你就不必处理“某物昨晚错了”但你会知道确切地几乎什么都错了一旦发生“。
但是如果您确实想要监控系统生存进程而不是服务,那么更“合适”的方法之一就是使用审计守护进程。
就像是:
auditctl -a exit,always -S execve
它将记录任何启动的程序(通过execve
系统调用)。