现在想把公司业务服务器上各式各样的监控整合起来,使用python来完成。对于监控业务程序、脚本等,你都采取过哪些方式?有没有遇到哪些特殊、意外的状况,希望能分享一下。
比如监听端口,那么有些分析程序,就不监听端口,或者端口被占用但程序本身已经变成僵尸,是否还应选取其他方式进行辅助?我之前还用过一个很奇葩的方式,扫描系统的所有pid,然后看pid对应程序的路径有没有与被监控的程序路径相匹配的,但是这样要求额外的模块并且需要运行监控程序的用户具有很高的权限。
另外是我希望自己的监控程序能整合多种功能,所以需要在设计之初能把方方面面都考虑到。
建立你去看看open-falcon的agent的采集代码 这样你就会清楚很多.
另外一个建议是尽量不要用程序调用命令行的方式, 有两个坏处:
所以是尽量能够获取到原始的信息是最佳的,如/proc下面的内容.