Blob Blame History Raw
From 390a1d108eb8717f8471098b92947cb7dfd2cdf0 Mon Sep 17 00:00:00 2001
From: Alfredo Moralejo <amoralej@redhat.com>
Date: Wed, 9 Aug 2023 12:40:17 +0200
Subject: [PATCH] Catch RuntimeError when loading log config file

Since python 3.12, logging is raising RuntimeError when content is
invalid [1][2]. Note this is also backported to 3.11 branch.

This is making oslo_log to not raise LogConfigError but throw the
underlying RuntimeError.

[1] https://github.com/python/cpython/commit/152227b569c3a9b87fe0483706f704762ced6d75
[2] https://github.com/python/cpython/commit/12f1581b0c43f40a792c188e17d2dea2357debb3

Change-Id: I7631394bee7281f6a393ab4ba7604f871626997a
---
 oslo_log/log.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/oslo_log/log.py b/oslo_log/log.py
index 945fdc9..ec1d483 100644
--- a/oslo_log/log.py
+++ b/oslo_log/log.py
@@ -231,7 +231,7 @@ def _load_log_config(log_config_append):
             logging.config.fileConfig(log_config_append,
                                       disable_existing_loggers=False)
             _load_log_config.old_time = new_time
-    except (configparser.Error, KeyError, os.error) as exc:
+    except (configparser.Error, KeyError, os.error, RuntimeError) as exc:
         raise LogConfigError(log_config_append, str(exc))
 
 
-- 
2.38.1