From a88b7fd967975a03fd884c1c1f12cc5e5786ab2d Mon Sep 17 00:00:00 2001 From: Zack Cerza Date: Mon, 20 Feb 2023 13:06:07 -0700 Subject: [PATCH] dispatcher: Log the path to the supervisor logfile Since we're no longer logging that output from the dispatcher, make it easy to find the supervisor log. Signed-off-by: Zack Cerza --- scripts/dispatcher.py | 1 + teuthology/dispatcher/__init__.py | 8 +++++++- teuthology/dispatcher/supervisor.py | 3 +-- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/scripts/dispatcher.py b/scripts/dispatcher.py index 4cb1abdea6..2d9c4a64ab 100644 --- a/scripts/dispatcher.py +++ b/scripts/dispatcher.py @@ -19,6 +19,7 @@ standard arguments: -l, --log-dir LOG_DIR path in which to store logs -a DIR, --archive-dir DIR path to archive results in --supervisor run dispatcher in job supervisor mode + --supervisor-log PATH in supervisor mode, log to this file --bin-path BIN_PATH teuthology bin path --job-config CONFIG file descriptor of job's config file --exit-on-empty-queue if the queue is empty, exit diff --git a/teuthology/dispatcher/__init__.py b/teuthology/dispatcher/__init__.py index 6684d67d29..50769305bb 100644 --- a/teuthology/dispatcher/__init__.py +++ b/teuthology/dispatcher/__init__.py @@ -142,6 +142,10 @@ def main(args): log.info('Config is: %s', job.body) job_config = yaml.safe_load(job.body) job_config['job_id'] = str(job_id) + supervisor_log = os.path.join( + job_config['archive_path'], + f"supervisor.{job_id}.log", + ) if job_config.get('stop_worker'): keep_running = False @@ -154,6 +158,7 @@ def main(args): ) except SkipJob: continue + log.info(f"Archive: {archive_dir}") # lock machines but do not reimage them if 'roles' in job_config: @@ -165,6 +170,7 @@ def main(args): '-v', '--bin-path', teuth_bin_path, '--archive-dir', archive_dir, + '--supervisor-log', supervisor_log, ] # Create run archive directory if not already created and @@ -187,7 +193,7 @@ def main(args): stdin=subprocess.STDOUT, ) job_procs.add(job_proc) - log.info('Job supervisor PID: %s', job_proc.pid) + log.info(f"Job supervisor PID: {job_proc.pid}, log: {supervisor_log}") except Exception: error_message = "Saw error while trying to spawn supervisor." log.exception(error_message) diff --git a/teuthology/dispatcher/supervisor.py b/teuthology/dispatcher/supervisor.py index d7a695475d..9b653e1e26 100644 --- a/teuthology/dispatcher/supervisor.py +++ b/teuthology/dispatcher/supervisor.py @@ -33,6 +33,7 @@ def main(args): archive_dir = args["--archive-dir"] teuth_bin_path = args["--bin-path"] config_file_path = args["--job-config"] + log_file_path = args["--supervisor-log"] with open(config_file_path, 'r') as config_file: job_config = yaml.safe_load(config_file) @@ -42,8 +43,6 @@ def main(args): loglevel = logging.DEBUG log.setLevel(loglevel) - log_file_path = os.path.join(job_config['archive_path'], - f"supervisor.{job_config['job_id']}.log") setup_log_file(log_file_path) install_except_hook() -- 2.39.5