def serverStats(): cpuPercents = cpu_stat.cpu_percents(1) statDict = {} statDict["ioWait"] = cpuPercents['iowait'] statDict["system"] = cpuPercents['system'] statDict["idle"] = cpuPercents['idle'] statDict["user"] = cpuPercents['user'] statDict["cpuUsed"] = round(100 - cpuPercents['idle']) statDict["loadAvg"] = cpu_stat.load_avg() statDict["memUsed"], statDict["memTot"], _, _, _, _ = mem_stat.mem_stats() statDict["memFree"] = memTot-memUsed return statDict
def _sendLinuxMetrics(self): cpu_percents = {} for k, v in cpu_stat.cpu_percents().items(): cpu_percents['cpu_' + k] = v load_avg = cpu_stat.load_avg() assert(len(load_avg) == 3) file_desc = cpu_stat.file_desc() assert(len(file_desc) == 3) stats = cpu_percents.items() stats += zip(['load_1min', 'load_5min', 'load_15min'], load_avg) stats += {'procs_running': cpu_stat.procs_running(), 'procs_blocked': cpu_stat.procs_blocked()}.items() stats += zip(['filedesc_allocated', 'filedesc_allocated_free', 'filedesc_max'], file_desc) self.sendEvent('cpu', dict(stats)) for nic in ['wlan0', 'eth0', 'usb0']: rx, tx = net_stat.rx_tx_bytes(nic) self.sendEvent('net', {'nic': nic, 'rx_bytes': rx, 'tx_bytes': tx})
def dump_stats(handler): while True: cpu_pcts = cpu_stat.cpu_percents(1) #instantaneous cpu usage utilization = 100 - cpu_pcts['idle'] #cores = all_cpu_usage() load_ = cpu_stat.load_avg() load_5,load_15 = load_[1],load_[2] mem_tuple = mem_stat.mem_stats() #instantaneous memory usage used,total = mem_tuple[0],mem_tuple[1] free = total - used handler.update({"vm_name":DOMAIN},{"$set":{"vm_name":DOMAIN,"vm_ip":VM_IP,"cpu":utilization,"5_min":load_5,"15_min":load_15,"mem_free":free,"mem_used":used,"mem_total":total,"mouse":"no"}},True) # update if document present else insert the document. update the cpu,mem of the virtual every 5 seconds print "upated the tuple" sleep(5)
def getMetrics(self): now = int(time.time()) * 1000 #JSON for GS Advanced Feed PUT API comp = {} comp['stream'] = [] comp['componentId'] = self._compId comp['time'] = [now] comp['defaults'] = {} comp['defaults']['name'] = self._compName #Assign a component template for auto registration comp['compTmplId'] = 'rPi' #cpu streams cpu_pcts = cpu_stat.cpu_percents(1) stream = {} stream['streamId'] = 'cpu_user' stream['data'] = [cpu_pcts['user']] comp['stream'].append(stream) stream = {} stream['streamId'] = 'cpu_nice' stream['data'] = [cpu_pcts['nice']] comp['stream'].append(stream) stream = {} stream['streamId'] = 'cpu_system' stream['data'] = [cpu_pcts['system']] comp['stream'].append(stream) stream = {} stream['streamId'] = 'cpu_idle' stream['data'] = [cpu_pcts['idle']] comp['stream'].append(stream) stream = {} stream['streamId'] = 'cpu_iowait' stream['data'] = [cpu_pcts['iowait']] comp['stream'].append(stream) load = cpu_stat.load_avg() stream = {} stream['streamId'] = 'cpu_avg1min' stream['data'] = [load[0]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'cpu_avg5min' stream['data'] = [load[1]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'cpu_avg15min' stream['data'] = [load[2]] comp['stream'].append(stream) #processes stream = {} stream['streamId'] = 'procs_running' stream['data'] = [cpu_stat.procs_running()] comp['stream'].append(stream) #memory mem = mem_stat.mem_stats() stream = {} stream['streamId'] = 'mem_active' stream['data'] = [mem[0]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'mem_total' stream['data'] = [mem[1]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'mem_cached' stream['data'] = [mem[2]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'mem_free' stream['data'] = [mem[3]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'swap_total' stream['data'] = [mem[4]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'swap_free' stream['data'] = [mem[5]] comp['stream'].append(stream) #disk disk = disk_stat.disk_usage('/') stream = {} stream['streamId'] = 'disk_size' stream['data'] = [disk[1]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'disk_used' stream['data'] = [disk[2]] comp['stream'].append(stream) #network net = net_stat.rx_tx_bytes('eth0') stream = {} stream['streamId'] = 'net_download' stream['data'] = [net[0]] comp['stream'].append(stream) net = net_stat.rx_tx_bytes('eth0') stream = {} stream['streamId'] = 'net_upload' stream['data'] = [net[1]] comp['stream'].append(stream) jobj = {} jobj['feed'] = {} jobj['feed']['component'] = [] jobj['feed']['component'].append(comp) return jobj
def test_load_avg(self): values = cpu_stat.load_avg() self.assertTrue(len(values) == 3, values)
def getMetrics(self): now = int(time.time()) * 1000 #JSON for GS Advanced Feed PUT API comp = {} comp['stream'] = [] comp['componentId'] = self._compId comp['time'] = [now] comp['defaults'] = {} comp['defaults']['name'] = self._compName #Assign a component template for auto registration comp['compTmplId'] = 'rPi' #cpu streams cpu_pcts = cpu_stat.cpu_percents(1) stream = {} stream['streamId'] = 'cpu_user' stream['data'] = [cpu_pcts['user']] comp['stream'].append(stream) stream = {} stream['streamId'] = 'cpu_nice' stream['data'] = [cpu_pcts['nice']] comp['stream'].append(stream) stream = {} stream['streamId'] = 'cpu_system' stream['data'] = [cpu_pcts['system']] comp['stream'].append(stream) stream = {} stream['streamId'] = 'cpu_idle' stream['data'] = [cpu_pcts['idle']] comp['stream'].append(stream) stream = {} stream['streamId'] = 'cpu_iowait' stream['data'] = [cpu_pcts['iowait']] comp['stream'].append(stream) load = cpu_stat.load_avg() stream = {} stream['streamId'] = 'cpu_avg1min' stream['data'] = [load[0]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'cpu_avg5min' stream['data'] = [load[1]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'cpu_avg15min' stream['data'] = [load[2]] comp['stream'].append(stream) #processes stream = {} stream['streamId'] = 'procs_running' stream['data'] = [cpu_stat.procs_running()] comp['stream'].append(stream) #memory mem = mem_stat.mem_stats() stream = {} stream['streamId'] = 'mem_active' stream['data'] = [mem[0]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'mem_total' stream['data'] = [mem[1]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'mem_cached' stream['data'] = [mem[2]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'mem_free' stream['data'] = [mem[3]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'swap_total' stream['data'] = [mem[4]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'swap_free' stream['data'] = [mem[5]] comp['stream'].append(stream) #disk disk = disk_stat.disk_usage('/') stream = {} stream['streamId'] = 'disk_size' stream['data'] = [disk[1]] comp['stream'].append(stream) stream = {} stream['streamId'] = 'disk_used' stream['data'] = [disk[2]] comp['stream'].append(stream) #network net = net_stat.rx_tx_bytes('eth0') stream = {} stream['streamId'] = 'net_download' stream['data'] = [net[0]] comp['stream'].append(stream) net = net_stat.rx_tx_bytes('eth0') stream = {} stream['streamId'] = 'net_upload' stream['data'] = [net[1]] comp['stream'].append(stream) jobj = {} jobj['feed'] = {} jobj['feed']['component'] = [] jobj['feed']['component'].append(comp) return jobj