Python 監控腳本(硬盤、cpu、內存、網卡、進程)


#磁盤使用率
disk = psutil.disk_partitions()
for i in disk:
    print "
磁盤:%s   分區格式:%s"%(i.device,i.fstype)
    disk_use = psutil.disk_usage(i.device)
    print "
使用了:%sM,空閑:%sM,總共:%sM,使用率\033[1;31;42m%s%%\033[0m,"%(disk_use.used/1024/1024,disk_use.free/1024/1024,disk_use.total/1024/1024,disk_use.percent)

 

#網絡使用率

1.  監控服務器cpu使用率

def cpu():
    while True:
        time.sleep(1)
        cpu_liyonglv = psutil.cpu_percent()
        print "當前cpu利用率:\033[1;31;42m%s%%\033[0m"%cpu_liyonglv
        if cpu_liyonglv >15.0:
            baojing()
def baojing():
    i = 0
    while i < 10 :
        i += 1
        time.sleep(0.5)
        winsound.PlaySound("ALARM8",winsound.SND_ALIAS)
cpu()

 

2.  監控服務器內存使用率

memory = psutil.virtual_memory()
print memory.used
print memory.total
ab = float(memory.used)/float(memory.total)*100
print "%.2f%%"%ab
print psutil.swap_memory()

 

3.  監控服務器網卡使用率

#網絡使用率
count = psutil.net_io_counters()
print "
發送字節數:\033[1;31;42m%s\033[0mbytes,接收字節數:\033[1;31;42m%s\033[0mbytes,發送包數:%s,接收包數%s"%(count.bytes_sent,count.bytes_recv,count.packets_sent,count.packets_recv)

users = psutil.users()
print "
當前登錄用戶:",users[0].name
#
時間
curent_time = psutil.boot_time()

curent_time_1 = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(curent_time))
print curent_time_1

 

4.  進程監控

腳本如下:

#讀取進程pid,名稱,可執行路徑 
pid = psutil.pids() 
for k,i in enumerate(pid): 
    try: 
        proc  = psutil.Process(i) 
        print k,i,"%.2f%%"%(proc.memory_percent()),"%",proc.name(),proc.exe() 
 
    except psutil.AccessDenied : 
        print "psutil.AccessDenied"

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM