Py学习  »  Python

推荐一个系统管理员常用的Python工具

运维 • 4 年前 • 450 次点击  

来自公众号:涛哥聊Python 

今天主要给大家带来的一个系统管理员日常用到的一个运维工具,希望大家有收获。

这个工具叫psutil,psutil(process and system utilities)这是一个跨平台库,日常我们都是通过ps,top(htop),ifconfig,kill 这些命令来进行管理查看系统资源等。

有了它之后我们可以更好的进行系统监控,分析和限制系统资源使用,是系统管理员必备工具。

安装:

pip install psutil(权限不够需要加sudo)

 1import psutil
2> psutil.cpu_count() # 获取CPU逻辑个数
31
4> psutil.cpu_count(logical=False# CPU物理个数
5> mem = psutil.virtual_memory() # 获取内存信息
6> mem.total
72097369088  # 可以看到性能有点差
8> mem.free    # 获取空闲内存数
9166760448
10> psutil.disk_partitions() # 获取磁盘信息
11[sdiskpart(device='/dev/vda1', mountpoint='/', fstype='ext4', opts='rw,relatime,errors=remount-ro,stripe=32639,data=ordered'),
12 sdiskpart(device='/dev/vda1', mountpoint='/var/lib/docker/aufs', fstype='ext4', opts='rw,relatime,errors=remount-ro,stripe=32639,data=ordered')]
13> psutil.pids() # 获取所有进程ID
14> pp = psuitl.Process(32470).name() # 获取进程名字
15'apache2'
16

psutil除了上面提到的CPU,内存,磁盘,进程等,其实还有网络,用户登录,开机时间等信息。

我们获取到这些信息之后就可以做一个简易的服务器内存监控,不用像之前需要用到stastsd+promeuthus或graphite+grafana等全套工具进行大规模监控系统服务及API的数据了。

可以参考往期文章牛逼了| 从0到1 搭建Web性能监控系统

最后大家也可以通过ipython进行查看其他相关用法,这点我很久就提到过了。


希望大家有所收获!


●编号356,输入编号直达本文

●输入m获取文章目录

推荐↓↓↓

Linux学习

更多推荐25个技术类公众微信

涵盖:程序人生、算法与数据结构、黑客技术与网络安全、大数据技术、前端开发、Java、Python、Web开发、安卓开发、iOS开发、C/C++、.NET、Linux、数据库、运维等。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/37663
 
450 次点击