#负载信息
def load_stat(self):
"""
过去的1、5、15分钟内运行队列中的平均进程数量
"""
loadavg = {}
f = open("/proc/loadavg")
con = f.read().split()
f.close()
loadavg['lavg_1']=con[0]
loadavg['lavg_5']=con[1]
loadavg['lavg_15']=con[2]
#loadavg['nr']=con[3]
#loadavg['last_pid']=con[4]
return loadavg
#运转时间
def uptime_stat(self):
uptime = {}
f = open("/proc/uptime")
con = f.read().split()
f.close()
all_sec = float(con[0])
MINUTE,HOUR,DAY = 60,3600,86400
d = int(all_sec / DAY )
h = int((all_sec % DAY) / HOUR)
m = int((all_sec % HOUR) / MINUTE)
s = int(all_sec % MINUTE)
uptime['uptime'] = '已运行%s天%s时%s分%s秒'%(d,h,m,s)
uptime['FreeRate'] = float(con[1]) / float(con[0])
return uptime
#磁盘空间使用 单位byte
def disk_stat(self):
disk = os.statvfs("/")
available = disk.f_bsize * disk.f_bavail
capacity = disk.f_bsize * disk.f_blocks
used = capacity - available
hdper = float(used)/capacity
return 100*hdper
#网络流量
def _read_netcard_usage(self):
fd = open("/proc/net/dev", "r")
for line in fd.readlines():
if line.find("eth0") > 0:
recv = float(line.split(":")[1].split()[0])
send = float(line.split()[9])
fd.close()
return (float(recv), float(send))
def getNetworkTraffic(self):
dic = {}
resultLst = []
(recv, send) = self._read_netcard_usage()
time.sleep(1)
(new_recv, new_send) = self._read_netcard_usage()
dic.setdefault('recv','%s KB/s'%str((new_recv -recv)/1024))
dic.setdefault('send','%s KB/s'%str((new_send -send)/1024))
resultLst.append(dic)
return resultLst,len(resultLst)
def load_stat(self):
"""
过去的1、5、15分钟内运行队列中的平均进程数量
"""
loadavg = {}
f = open("/proc/loadavg")
con = f.read().split()
f.close()
loadavg['lavg_1']=con[0]
loadavg['lavg_5']=con[1]
loadavg['lavg_15']=con[2]
#loadavg['nr']=con[3]
#loadavg['last_pid']=con[4]
return loadavg
#运转时间
def uptime_stat(self):
uptime = {}
f = open("/proc/uptime")
con = f.read().split()
f.close()
all_sec = float(con[0])
MINUTE,HOUR,DAY = 60,3600,86400
d = int(all_sec / DAY )
h = int((all_sec % DAY) / HOUR)
m = int((all_sec % HOUR) / MINUTE)
s = int(all_sec % MINUTE)
uptime['uptime'] = '已运行%s天%s时%s分%s秒'%(d,h,m,s)
uptime['FreeRate'] = float(con[1]) / float(con[0])
return uptime
#磁盘空间使用 单位byte
def disk_stat(self):
disk = os.statvfs("/")
available = disk.f_bsize * disk.f_bavail
capacity = disk.f_bsize * disk.f_blocks
used = capacity - available
hdper = float(used)/capacity
return 100*hdper
#网络流量
def _read_netcard_usage(self):
fd = open("/proc/net/dev", "r")
for line in fd.readlines():
if line.find("eth0") > 0:
recv = float(line.split(":")[1].split()[0])
send = float(line.split()[9])
fd.close()
return (float(recv), float(send))
def getNetworkTraffic(self):
dic = {}
resultLst = []
(recv, send) = self._read_netcard_usage()
time.sleep(1)
(new_recv, new_send) = self._read_netcard_usage()
dic.setdefault('recv','%s KB/s'%str((new_recv -recv)/1024))
dic.setdefault('send','%s KB/s'%str((new_send -send)/1024))
resultLst.append(dic)
return resultLst,len(resultLst)