fix: s3 push bug fix

parent 85f1e699
...@@ -147,25 +147,25 @@ class ServerReplayRecorder(ReplayRecorder): ...@@ -147,25 +147,25 @@ class ServerReplayRecorder(ReplayRecorder):
def upload_replay(self, times, session_id): def upload_replay(self, times, session_id):
if times > 0: if times > 0:
if self.push_local(session_id): if self.push_local(session_id):
logger.info("success push session: {}'s replay log ", session_id) logger.info("success push session: {}'s replay log ".format(session_id))
return True return True
else: else:
logger.error("failed report session {}'s replay log, try {} times", session_id, times) logger.error("failed report session {}'s replay log, try {} times".format(session_id, times))
return self.upload_replay(times - 1, session_id) return self.upload_replay(times - 1, session_id)
else: else:
logger.error("failed report session {}'s replay log", session_id) logger.error("failed report session {}'s replay log".format(session_id))
return False return False
def finish_replay(self, times, session_id): def finish_replay(self, times, session_id):
if times > 0: if times > 0:
if self.app.service.finish_replay(session_id): if self.app.service.finish_replay(session_id):
logger.info("success report session {}'s replay log ", session_id) logger.info("success report session {}'s replay log ".format(session_id))
return True return True
else: else:
logger.error("failed report session {}'s replay log, try {} times", session_id, times) logger.error("failed report session {}'s replay log, try {} times".format(session_id, times))
return self.finish_replay(times - 1, session_id) return self.finish_replay(times - 1, session_id)
else: else:
logger.error("failed report session {}'s replay log", session_id) logger.error("failed report session {}'s replay log".format(session_id))
return False return False
def __del__(self): def __del__(self):
...@@ -294,7 +294,7 @@ class S3ReplayRecorder(ServerReplayRecorder): ...@@ -294,7 +294,7 @@ class S3ReplayRecorder(ServerReplayRecorder):
self.s3.upload_file( self.s3.upload_file(
os.path.join(self.app.config['LOG_DIR'], session_id + '.replay.gz'), os.path.join(self.app.config['LOG_DIR'], session_id + '.replay.gz'),
self.bucket, self.bucket,
self.app.config.get("NAME", "coco") + time.strftime('%Y-%m-%d', time.localtime( time.strftime('%Y-%m-%d', time.localtime(
self.starttime)) + '/' + session_id + '.replay.gz') self.starttime)) + '/' + session_id + '.replay.gz')
return True return True
except: except:
...@@ -303,25 +303,25 @@ class S3ReplayRecorder(ServerReplayRecorder): ...@@ -303,25 +303,25 @@ class S3ReplayRecorder(ServerReplayRecorder):
def upload_replay(self, times, session_id): def upload_replay(self, times, session_id):
if times > 0: if times > 0:
if self.push_to_s3(session_id): if self.push_to_s3(session_id):
logger.info("success push session: {}'s replay log to S3 ", session_id) logger.info("success push session: {}'s replay log to S3 ".format(session_id))
return True return True
else: else:
logger.error("failed report session {}'s replay log to S3, try {} times", session_id, times) logger.error("failed report session {}'s replay log to S3, try {} times".format(session_id, times))
return self.upload_replay(times - 1, session_id) return self.upload_replay(times - 1, session_id)
else: else:
logger.error("failed report session {}'s replay log S3, try to push to local", session_id) logger.error("failed report session {}'s replay log S3, try to push to local".format(session_id))
return self.upload_replay_to_local(3, session_id) return self.upload_replay_to_local(3, session_id)
def upload_replay_to_local(self, times, session_id): def upload_replay_to_local(self, times, session_id):
if times > 0: if times > 0:
if self.push_local(session_id): if self.push_local(session_id):
logger.info("success push session: {}'s replay log ", session_id) logger.info("success push session: {}'s replay log ".format(session_id))
return True return True
else: else:
logger.error("failed report session {}'s replay log, try {} times", session_id, times) logger.error("failed report session {}'s replay log, try {} times".format(session_id, times))
return self.upload_replay_to_local(times - 1, session_id) return self.upload_replay_to_local(times - 1, session_id)
else: else:
logger.error("failed report session {}'s replay log", session_id) logger.error("failed report session {}'s replay log".format(session_id))
return False return False
...@@ -337,6 +337,7 @@ def get_command_recorder_class(config): ...@@ -337,6 +337,7 @@ def get_command_recorder_class(config):
def get_replay_recorder_class(config): def get_replay_recorder_class(config):
replay_storage = config["REPLAY_STORAGE"] replay_storage = config["REPLAY_STORAGE"]
logger.debug(replay_storage)
storage_type = replay_storage.get('TYPE') storage_type = replay_storage.get('TYPE')
if storage_type == "s3": if storage_type == "s3":
return S3ReplayRecorder return S3ReplayRecorder
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment