Python之 系統程序管理方法

2021-08-14 07:19:21 字數 1592 閱讀 2955

獲得當前系統的程序資訊,可以讓運維人員得知應用程式的執行狀態,包括程序的啟動時間、檢視或設定cpu親和度、記憶體使用率、io資訊、socket連線、執行緒數等,這些資訊可以呈現出指定程序是否存活、資源利用情況,為開發人員的**優化、問題定位提供很好的資料參考。

# -*- coding:utf-8 -*-

'''獲取當前系統的程序資訊

created on 2023年1月3日

@author: liuyazhuang

'''import psutil

#列出所有程序的pid

print psutil.pids()

#例項化乙個process物件,引數為一程序pid

p = psutil.process(364)

print p.name()

#獲取進行bin的路徑

print p.exe()

#獲取程序工作目錄絕對路徑

print p.cwd()

#程序的狀態

print p.status()

#程序建立的時間

print p.create_time()

#程序uid資訊

print p.uids()

#程序gid資訊

print p.gids()

#程序cpu時間資訊,包括user、system兩個cpu時間

print p.cpu_times()

#獲取程序cpu的親和度

print p.cpu_affinity()

#獲取程序記憶體利用率

print p.memory_percent()

#程序記憶體rss、vms資訊

print p.memory_info()

#程序io資訊,包括讀寫io數及位元組數

print p.io_counters()

#獲取開啟程序socket的namedutples列表,包括fs、family、laddr等資訊

print p.connections()

#程序開啟的執行緒數

print p.num_threads()

# -*- coding:utf-8 -*-

'''獲取使用者啟動的應用程式程序資訊

created on 2023年1月3日

@author: liuyazhuang

'''import psutil

from subprocess import pipe

from sys import stdout

#啟動應用程式,跟蹤該應用程式的程序資訊

p = psutil.popen(["d:\\program files\\python27\\python.exe", "-c", "print 'hello'"], stdout = pipe)

print p.name()

print p.username()

print p.communicate()

try:

print p.cpu_times()

except:

print "獲取不到p.cpu_times()"

專案管理之目標管理方法

目標管理方法是現代企業中常用的一種管理方法,這段時間我間歇讀了關於這個方法的一些書,回想這幾年來在軟體開發中的成功與不足,寫出這段文字與優耐達公司的各位同仁共勉。目標管理方法可以簡單概括為一句話,即依據 我現在做的,使我更接近專案目標 的原則,判斷工作輕重緩急,合理安排時間,保證 最重要的事最優先去...

專案管理方法

ibm的專案管理方法與pmbok的比較 ibm的專案管理方法wwpmm由四個有機部分組成 專案管理領域 pm domain 專案管理工作產品 working product 專案管理工作模式 working pattern 專案管理系統 pm system 其中專案管理領域 pm domain 可以...

uC OS II系統中的記憶體管理方法

uc os ii的記憶體管理由自定義的分割槽 陣列 來完成,根據需要進行初始化 建立 獲得 釋放 注意它只是做管理,並沒有提供真實使用的位址,使用的位址是通過osmemcreate由外部提供的。而了解這種機制,在我們平時的程式開發有多記憶體的應用場合,可是採用這種思想進行裝置。1 記憶體的初始化 之...