From 34a7cce9c242aad2fd7e1ced31dcee05aa9bd5d3 Mon Sep 17 00:00:00 2001 From: Noe Brucy Date: Wed, 26 Apr 2023 15:36:08 +0200 Subject: [PATCH] Improve logging --- utils/runselector.py | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/utils/runselector.py b/utils/runselector.py index a3211be..aa3d9b9 100644 --- a/utils/runselector.py +++ b/utils/runselector.py @@ -7,8 +7,8 @@ import os from functools import partial from pymses.sources.ramses.info import read_ramses_info_file import numpy as np - - +import logging +import sys import f90nml @@ -93,6 +93,17 @@ class RunSelector: sort_run_by : str, a key from the namelist used to sort the runs (by ascending order) """ + + # Initialize logger + self.logger = logging.getLogger("run_self") + self.logger.propagate = False + logging_format = "%(levelname)s | %(asctime)s | %(name)s.%(funcName)s:%(lineno)d | %(message)s" + formatter = logging.Formatter(logging_format, datefmt="%H:%M:%S") + + if not self.logger.hasHandlers(): + stream = logging.StreamHandler(sys.stdout) + stream.setFormatter(formatter) + self.logger.addHandler(stream) self.path_in = path_in self.nml_filename = nml_filename @@ -133,7 +144,7 @@ class RunSelector: i = 0 for run in self.runs.copy(): if len(self.nums[run]) == 0: - print(f"[WARNING] No snapshot found for run {run}") + self.logger.warning(f"No snapshot found for run {run}") del self.runs[i] del self.nums[run] else: @@ -439,7 +450,7 @@ class RunSelector: # Be sure we have a namelist if self.fallback_nml and run not in self.namelist: - print(f"WARNING: Used fallback namelist from output {nums[0]}") + self.logger.warning(f"Used fallback namelist for run {run} from output {nums[0]}") path = f"{self.path_in}/{run}/output_{nums[0]:05}/namelist.txt" self.namelist[run] = self.load_namelist(run, path=path)