我想编写一个 python 脚本来对运行在 linux 服务器上的远程进程执行一些非常简单的“无代理”监控。
它将在伪代码中执行以下任务:
for each remoteIPAddress in listOfIPAddresses:
log into server@remoteIPAddress via ssh
execute the equivalent of a 'ps -ef' command
grep the result to make sure a particular process (by name) is still running
一种方法是在子进程中使用 python 调用 shell 脚本并解析它们的输出。这似乎效率很低。有没有更好的方法通过 python 库来做到这一点?
通过在这里和其他地方的研究,我所能找到的只是:
- psutil - 看起来它不进行远程监控,所以我必须在远程机器上运行代理以通过 RPC 报告统计信息。
- pymeter - 我必须编写自己的插件来监控特定的远程服务。
- stackoverflow #4546492 - 一些有用的链接,但发布者正在寻找不同的解决方案。
谢谢,请放轻松,这是我的第一个问题:-)