Skip to content
Snippets Groups Projects

Resolve "logging with counter"

Merged Ghost User requested to merge lukas_issue085_refac_log-file-counter into develop
1 file
+ 15
5
Compare changes
  • Side-by-side
  • Inline
@@ -39,11 +39,7 @@ class RunEnvironment(object):
logging.info(f"{self.__class__.__name__} finished after {self.time}")
self.del_by_exit = True
if self.__class__.__name__ == "RunEnvironment":
try:
new_file = os.path.join(self.data_store.get("experiment_path"), "logging.log")
shutil.copyfile(self.logger.log_file, new_file)
except (NameNotFoundInDataStore, FileNotFoundError):
pass
self.__copy_log_file()
self.data_store.clear_data_store()
def __enter__(self):
@@ -52,6 +48,20 @@ class RunEnvironment(object):
def __exit__(self, exc_type, exc_val, exc_tb):
self.__del__()
def __copy_log_file(self):
try:
counter = 0
filename_pattern = os.path.join(self.data_store.get("experiment_path"), "logging_%03i.log")
new_file = filename_pattern % counter
while os.path.exists(new_file):
counter += 1
new_file = filename_pattern % counter
logging.info(f"Copy log file to {new_file}")
shutil.copyfile(self.logger.log_file, new_file)
except (NameNotFoundInDataStore, FileNotFoundError):
pass
@staticmethod
def do_stuff(length=2):
time.sleep(length)
Loading