获取linux性能数据

import re
import os
import sys
import json
import socket
from urllib import request,parse
import urllib
from subprocess import PIPE,Popen
class SendData:
def __init__(self,IpAddr,serverHost,serverPort=8000):
"""

"""
self.result={"system":"linux","Ip":IpAddr}
self.host=serverHost
self.port=serverPort
self.url="http://%s:%s/api/savedata" %(self.host,self.port)
print(self.url)
self.headers={"User-Agent":"Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Mobile Safari/537.36"}

def getInfo(self,command):
"""

"""
with os.popen(command) as f:
com=f.read()
return com
def All_Command(self):
commands=[
"hostname",
"ifconfig |awk -F‘ ‘ ‘/HWaddr/{print $5}‘",
"cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c",
"free -m | awk ‘{print $4}‘| sed -n ‘2p‘",
"df -h | awk ‘{print $4}‘|sed -n ‘2p‘",
"uname -r"
]
result=list(map(self.getInfo,commands))
return result

def my_dict(self):
dicts=self.All_Command()
self.result["Host"]=dicts[0].strip()
self.result["Mac"]=dicts[1].strip()
self.result["Cpu"]=dicts[2].strip()
self.result["Mem"]=dicts[3].strip()
self.result["Disk"]=dicts[4].strip()
self.result["Name"]=dicts[5].strip()

return self.result

def sendData(self):
data=parse.urlencode(self.result).encode(‘utf-8‘)
req=request.Request(self.url,headers=self.headers,data=data)
page=request.urlopen(req).read()
return page

s=SendData("192.168.1.23","192.168.1.102")
print(s.sendData())

时间: 2024-11-28 23:24:07

获取linux性能数据的相关文章

java调用windows的wmi获取设备性能数据

java调用windows的wmi获取监控数据(100%纯java调用windows的wmi获取监控数据) 转:http://my.oschina.net/noahxiao/blog/73163 纯java主要体现在可以跨平台调用com.所用的是j-Interop,它是100%纯java实现的com的调用 1.环境准备 a.windows要开启Remote Registry与Windows Management Instrumentation服务 b.修改安全策略 我系统是英文的,如果是中文系统

Android系统下,用adb实现自动获取应用性能数据

[自动化测试模式] 支持以adb shell命令的形式启动和运行.需要注意的是,office系列软件可能会更改命令中的字符,导致命令不可用!请手工输入命令,或从附带的command.txt文本中复制. 1.启动首页 adb shell am start -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -n iflytek.testTech.androidpropertytool/.MainAc 2.开启监控 依次

expect远程获取服务器性能数据

#!/usr/bin/expect set timeout 5 spawn ssh [email protected] "df -Th >>/root/disk.txt" expect { "*yes/no" { send "yes\r"; exp_continue} "*password:" { send "vision\r" } } spawn scp 192.168.3.8:/root/d

Linux平台下如何看OS历史的性能数据

同事电话询问Linux下一个集群内2个主机前后2天相继无响应,表现状况为ping都没响应. 因为没任何监控或其他性能数据,故需要获取历史OS性能数据. 我们知道rhel5,6下默认可以通过sar命令查看OS历史信息,故执行sar即可看到当天的数据. [[email protected] sa]# sar Linux 2.6.32-431.el6.x86_64 (ora11g)    09/16/2015      _x86_64_        (2 CPU) 08:43:42 PM      

性能测试 基于Python结合InfluxDB及Grafana图表实时采集Linux多主机性能数据

基于Python结合InfluxDB及Grafana图表实时采集Linux多主机性能数据   by:授客 QQ:1033553122 实现功能 测试环境 环境搭建 使用前提 使用方法 运行程序 效果展示 实现功能 无需在被监控主机上安装代理,一键对Linux远程服务器不同主机执行性能监控.性能数据采集命令,并实时展示 支持跨堡垒机收集实时性能数据(注:定制化开发,非通用) 支持docker容器(因为程序实现是从docker容器内部获取性能数据,所以目前仅支持 CPU,内存,I/O) 使用前提 可

PHP 获取linux服务器性能CPU、内存、硬盘、进程等使用率

数据库配置文件: conn.php <?php define("MONITORED_IP", "172.16.0.191"); //被监控的服务器IP地址 也就是本机地址 define("DB_SERVER", "172.16.7.2"); //存放数据的服务器IP地址 define("DB_USER", "root"); define("DB_PWD",&qu

原 .NET/C# 反射的的性能数据,以及高性能开发建议(反射获取 Attribute 和反射调用方法)

大家都说反射耗性能,但是到底有多耗性能,哪些反射方法更耗性能:这些问题却没有统一的描述. 本文将用数据说明反射各个方法和替代方法的性能差异,并提供一些反射代码的编写建议.为了解决反射的性能问题,你可以遵循本文采用的各种方案. 本文内容 反射各方法的性能数据 反射的高性能开发建议 创建类型的实例 反射获取 Attribute 反射调用公共 / 私有方法 使用预编译框架 附本文性能测试所用的代码 所有反射相关方法 IsDefined 和 GetCustomAttribute 的专项比较 参考资料 反

【干货】Linux内存数据的获取与转存 直捣密码

知识源:Unit 2: Linux/Unix Acquisition 2.1 Linux/Unix Acquistion Memory Acquisition 中的实验demo部分  小白注意,这是网络安全RITx: CYBER502x 部分的内容. 19年1月初,该系列课程会推出501x,这是面向入门的基础性课程. 不要错误讲座的直观体验而阅读我的笔记.这是错误的学习行为,一切已原创为重点. 这里使用Linux Unix内存转储工具,称为Lime. 进入lime目录    这么做的目的是把捕获

Linux 性能查看命令:

Linux性能监测:CPU篇 CPU 的占用主要取决于什么样的资源正在 CPU 上面运行,比如拷贝一个文件通常占用较少 CPU,因为大部分工作是由 DMA(Direct Memory Access)完成,只是在完成拷贝以后给一个中断让 CPU 知道拷贝已经完成:科学计算通常占用较多的 CPU,大部分计算工作都需要在 CPU 上完成,内存.硬盘等子系统只做暂时的数据存储工作.要想监测和理解 CPU 的性能需要知道一些的操作系统的基本知识,比如:中断.进程调度.进程上下文切换.可运行队列等.这里 V