我正在尋找記錄在Linux上運行的進程的CPU,內存,帶寬。最終數據將存儲在數據庫中,但我的主要問題是如何訪問這些數據以便首先登錄。如何記錄Linux上的進程的CPU,內存,帶寬?
我最初的想法是使用top命令,並解析我需要的數據。
你能想出更好的方法嗎?
我正在尋找記錄在Linux上運行的進程的CPU,內存,帶寬。最終數據將存儲在數據庫中,但我的主要問題是如何訪問這些數據以便首先登錄。如何記錄Linux上的進程的CPU,內存,帶寬?
我最初的想法是使用top命令,並解析我需要的數據。
你能想出更好的方法嗎?
檢出/ proc僞文件系統 - 您可以從腳本,編譯的程序中隨處讀取其中的文件。
編輯:更多關於它的思考,我已經實現了一個類似的系統,並使用「特區」廣泛使用「的awk」,但是「的perl」,「巨蟒」或任何這樣的解析輸出將工作也一樣。我使每個腳本都輸出CSV,然後將CSV批量加載到MySQL中,以便通過PHP進行後續查詢/繪製。
您可以使用PS CPU和內存,是這樣的:
ps -eo pid,user,args,%mem,%cpu
,然後解析輸出。
內核可以通過「進程記帳」進行配置。網絡搜索和「linux」將會找到關於如何設置的大量信息。
谷歌「過程會計」 – derobert 2011-01-05 18:46:42