系统信息采集模块对于我们实现监控特别重要,只有对于自己的系统特别了解,才能了解系统的健康情况。
本篇文章要介绍的:系统性能信息模块psutil,能够获取系统运行的进程和系统利用率(cpu、内存、磁盘、网络)
首先查看你的系统是不是有psutil这个模块 我用的是centos6.5的系统
[root@bogon ~]# python
Python 2.6.6 (r266:84292, Jul 23 2015, 15:22:56)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-11)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
import psutil
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named psutil
可以看到没有这个模块,那么下面我就介绍安装它。
python有个包管理器python-setuptools,里面有个命令easy_install,我们可以用这个命令安装我们需要的python模块。
首先安装python-setuptools包管理器。
[root@bogon ~]# yum install python-setuptools
安装完以后我们就可以使用命令easy_install安装 系统性能信息模块psutil。
[root@bogon ~]# easy_install psutil
Installed /usr/lib/python2.6/site-packages/psutil-3.3.0-py2.6-linux-x86_64.egg
Processing dependencies for psutil
Finished processing dependencies for psutil
输出有一些省略,可以看到安装成功,下面我们再次在python命令交互环境里导入模块psutil。
[root@bogon ~]# python
Python 2.6.6 (r266:84292, Jul 23 2015, 15:22:56)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-11)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
import psutil
可以看到没有报错,在python环境里,linux环境里 ,记住一个真理,没有报错就成功了。
简单的应用,获取系统的内存总量,和已经使用了的。
import psutil #导入模块
mem = psutil.virtual_memory() #实例化一个类
mem.total,mem.used #类名.属性 中间用逗号隔开
(1028517888L, 942338048L)