我有一个webapp监视远程服务器状态并将其输出回该webserver,以便用户可以在网页上看到它。我有一个运行在Web服务器上的Flask服务器来处理此操作,并且正在以下其中一种路由中监视远程服务器的日志:
stdin, stdout, stderr = client.exec_command('tail -f -n0 /server.log')
我能够在Web服务器端的Flask输出上成功看到输出。但是我也希望能够在网络服务器上写入输出,以便我的JavaScript可以读取输出并将其逐行显示回textarea实时。
我正在考虑做这样的事情:
stdin, stdout, stderr = client.exec_command('tail -f -n0 /server.log | ssh user@webserver "cat > output.txt"')
但是,考虑得更多,这似乎是多余的,因为我已经从Web服务器运行了此exec_command
命令,应该有一种方法可以只写到本地目录,而不用ssh
对其进行写入回到网站服务器。
之所以这样做是因为我想获取server.log
输出完成后,在{Click事件上将tail
并输出到我的Web应用程序。