模塊:psutil
簡介:獲取服務器cpu使用率以及內存使用率,網絡出入流量,以及計算磁盤使用大小
improt psutil
##獲取cpu信息
def cpu():
import psutil
psutil.cpu_percent() #查看cpu使用率
psutil.cpu_count() #獲取CPU的邏輯個數
psutil.cpu_count(logical=False) #獲取CPU的物理個數
psutil.cpu_times(percpu=True) #獲取CPU的全部信息
psutil.cpu_times().user1 #獲取user1使用CPU的時間比
##獲取內存信息
def memory():
import psutil
psutil.virtual_memory() #獲取memory所有信息
psutil.virtual_memory().total #獲取內存的總數
psutil.virtual_memory().free #獲取內存空閒數
psutil.swap_memory() #獲取swap分區的所有信息
psutil.swap_memory().total #獲取swap分區總數
psutil.swap_memory().free #獲取swap分區空閒數
##獲取磁盤信息
def disk():
import psutil
psutil.disk_partitions() #獲取磁盤的所有信息
psutil.disk_usage("sda1") #獲取sda1的磁盤使用情況
psutil.disk_io_counters(perdisk=True) #獲取單個分區IO個數
##獲取網絡信息
def net():
import psutil
psutil.net_io_counters() #獲取網絡總的IO信息
psutil.net_io_counters(pernic=True) #輸出每個網絡接口的IO信息
##獲取當前登錄用戶信息
def user():
import psutil
psutil.users()
##獲取機器啓動時間
def boottime():
import psutil,datetime
psutil.boot_time()
datetime.datetime.fromtimestamp(psutil.boot_time()).strftime("%Y-%m-%d %H: %M: %S") #轉換爲標準的時間格式
#系統進程
def pid():
import psutil
psutil.pids() #列出所有的pid
pid1 = psutil.Process(254) #實例化一個PID
pid1.name() #獲取進程名字
pid1.exe() #獲取進程bin路徑
pid1.cwd() #獲取進程工作目錄的絕對路徑
pid1.status() #獲取進程狀態
pid1.uid() #獲取進程uid信息
pid1.gid() #獲取進程gid信息
pid1.cpu_times() #進程CPU時間信息
pid1.memory_percent() #進程內存利用率
pid1.memory_info() #進程內存rss和vms信息
pid1.io_counters() #進程IO信息
pid1.connections() #打開進程的socket的namedutples列表,包括fs,family,laddr等信息
pid1.num_threads() #進程開啓的線程數
##pop類實現獲取用戶啓動的應用程序進程信息
def pop():
import psutil
from subprocess import PIPE
pid2 = psutil.Popen(["/usr/bin/python","-c","print('Hello word')"],stdout=PIPE)
p.name()
p.username()