[Update] 修改websocket读取日志

pull/3373/head
ibuler 2019-10-22 19:45:03 +08:00
parent 6b8b0f4a0b
commit 0dbf2ab2e5
1 changed files with 9 additions and 2 deletions

View File

@ -46,13 +46,20 @@ class CeleryLogWebsocket(JsonWebsocketConsumer):
if not task_log_f:
return
task_end_mark = []
while not self.disconnected:
data = task_log_f.readline()
data = task_log_f.read(4096)
if data:
data = data.replace(b'\n', b'\r\n')
self.send_json({'message': data.decode(errors='ignore'), 'task': task_id})
if data.startswith(b'Task') and data.find(b'succeeded'):
if data.find(b'succeeded in') != -1:
task_end_mark.append(1)
if data.find(bytes(task_id, 'utf8')) != -1:
task_end_mark.append(1)
if len(task_end_mark) == 2:
logger.debug('Task log end: {}'.format(task_id))
break
time.sleep(0.1)
task_log_f.close()