我想捕获远程 Linux 服务器的性能(CPU 和内存使用情况),例如终端中 TOP 命令的输出,并将其导入到本地 Windows 计算机上的 Excel 文件中。 我正在考虑使用 python 连接到服务器并执行命令并记录其输出。 我对 python 完全陌生,请建议一些解决这个问题的方法,比如我应该从哪里开始等等。
最佳答案
使用 Python 模块“fabric”,然后使用 Fabric run
函数来捕获远程主机上命令的输出。
它看起来像这样:
import csv
from fabric.api import *
env.hosts = ['user@remotehost:22']
FILENAME = '/tmp/info.csv'
def get_info():
output = run('top -bn 1')
lines = output.splitlines()
with open(FILENAME, 'wb') as csvfile:
info = csv.writer(csvfile)
for l in lines:
info.writerow(l.split())
然后使用:脚本目录中的 fab get_info
运行此命令。
它将根据远程计算机的“top”输出写入本地 csv 文件。然后可以从 Excel 打开 csv 文件。众所周知,csv 文件看起来有点难看。但这都是为了将最后一行更改为更智能的内容。
关于python - 捕获远程 Linux 服务器的性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15052634/