zoukankan      html  css  js  c++  java
  • python psutil 进行系统管理 no.2

    • 查看linux系统的进程信息
     1 import psutil
     2 psutil.pids() # 列出所有进程 PID
     3 
     4 p = psutil.Process(2424) # 实例化一个 Process 对象,参数为一进程 PID
     5 
     6 p.name() # 进程名
     7 
     8 p.exe() # 进程 bin 路径
     9  
    10 p.cwd() # 进程工作目录绝对路径
    11 
    12 p.status() # 进程状态
    13 
    14 p.create_time() # 进程创建时间,时间戳格式
    15 
    16 p.uids() # 进程 uid 信息
    17 
    18 p.gids() # 进程 gid 信息
    19 
    20 p.cpu_times() # 进程 CPU 时间信息,包括 user、system 两个 CPU 时间
    21 
    22 p.cpu_affinity() #get 进程 CPU 亲和度,如要设置进程 CPU 亲和度,将 CPU 号作为参数即可
    23 
    24 p.memory_percent() # 进程内存利用率
    25 
    26 p.memory_info() # 进程内存 rss、vms 信息
    27 
    28 p.io_counters() # 进程 IO 信息,包括读写 IO 数及字节数
    29 
    30 p.connections() # 返回打开进程 socket 的 namedutples 列表,包括 fs、family、laddr
    31 
    32 p.num_threads() # 进程开启的线程数
    • 附 Popen 案例
     1 import psutil
     2 from subprocess import PIPE
     3 
     4 # 通过 psutil 的 Popen 方法启动的应用程序,可以跟踪该程序运行的所有相关信息
     5 p = psutil.Popen(["/usr/bin/python", "-c", "print('hello')"], stdout=PIPE)
     6 
     7 p.name()
     8 'python'
     9 
    10 p.username()
    11 'root'
    12 
    13 p.communicate()
    14 ('hello
    ', None)
    15 
    16 p.cpu_times() # 得到进程运行的 CPU 时间,更多方法见上一小节
    17 pcputimes(user=0.01, system=0.040000000000000001)

    以上代码都是在python34 客户端运行的,需要注意下。

    文章摘自:《python 运维实例》一书

  • 相关阅读:
    mysql 更改字符集
    修改pip源
    git命令
    virtualwrapper使用
    Python环境搭建
    IntellIJ IDEA 配置 Maven 以及 修改 默认 Repository
    Spring4:JDBC
    Spring3:AOP
    Spring2:bean的使用
    Spring1:Spring简介、环境搭建、源码下载及导入MyEclipse
  • 原文地址:https://www.cnblogs.com/zeopean/p/5415883.html
Copyright © 2011-2022 走看看