0
クライアントがWebSocketのを接続して、方法tail_log呼び出して、新しいクライアントがあなたの無限ループが背中に制御を得なければなりませんどのようにこの問題を解決するために無限ループは、WebSocketのサーバー
def on_message(self, message):
def tail_log(user,ip,port,cmd,log_path,url):
cmd = "/usr/bin/ssh -p {port} {user}@{ipaddr} {command} {logpath}" \
.format(user=user, ipaddr=ip, port=port, command=cmd, logpath=log_path)
f = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
while True:
line = f.stdout.readline().strip()
if line == '':
self.write_message('failed')
break
self.write_message(line)
tail_log(user=SSH_USER,ip=IP_ADDR,cmd=CMD,port=SSH_PORT,log_path=LOG_PATH,url=SOCKET_URL)
ありがとう、私のコードでは、私のクエリサーバーのコンテンツがクライアントからの情報をアップロードするために、実装はメッセージモジュール上にあります – FreeEric