On 01/08/2024 12.10, Alex Bennée wrote:
Daniel P. Berrangé <berra...@redhat.com> writes:

From: Thomas Huth <th...@redhat.com>

Create log files for each test separately, one file that contains
the basic logging and one that contains the console output.

Reviewed-by: Daniel P. Berrangé <berra...@redhat.com>
Signed-off-by: Thomas Huth <th...@redhat.com>
---
  tests/functional/qemu_test/testcase.py | 27 +++++++++++++++++++++++++-
  1 file changed, 26 insertions(+), 1 deletion(-)

diff --git a/tests/functional/qemu_test/testcase.py 
b/tests/functional/qemu_test/testcase.py
index 82cc1d454f..27bbf4a0af 100644
--- a/tests/functional/qemu_test/testcase.py
+++ b/tests/functional/qemu_test/testcase.py
@@ -31,7 +31,8 @@ class QemuBaseTest(unittest.TestCase):
      arch = None
workdir = None
-    log = logging.getLogger('qemu-test')
+    log = None
+    logdir = None
def setUp(self, bin_prefix):
          self.assertIsNotNone(self.qemu_bin, 'QEMU_TEST_QEMU_BINARY must be 
set')
@@ -42,6 +43,20 @@ def setUp(self, bin_prefix):
          if not os.path.exists(self.workdir):
              os.makedirs(self.workdir)
+ self.logdir = self.workdir
+        self.log = logging.getLogger('qemu-test')
+        self.log.setLevel(logging.DEBUG)
+        self._log_fh = logging.FileHandler(os.path.join(self.logdir,
+                                                        'base.log'), mode='w')
+        self._log_fh.setLevel(logging.DEBUG)
+        fileFormatter = logging.Formatter(
+            '%(asctime)s - %(levelname)s: %(message)s')
+        self._log_fh.setFormatter(fileFormatter)
+        self.log.addHandler(self._log_fh)

This is in the wrong place, we have a unique machine directory for each
run, the console.log should go in there.

self.workdir already points to the unique directory of the test (see second patch), so setting logdir = workdir should be fine, I think?

 Thomas


Reply via email to