From db9cbc886fba00406f8940fb74cb60a62aad0a3e Mon Sep 17 00:00:00 2001 From: wahidw Date: Wed, 25 Nov 2020 07:57:48 +0000 Subject: [PATCH] Process ID missing in MDC Log format Signed-off-by: wahidw Change-Id: Id895eebcc05b29bc9c6eff9773678f0317f3573c --- mdclogpy/mdclogpy/Logger.py | 6 +++++- mdclogpy/tox.ini | 2 +- mdclogpy/tst/test_Logger.py | 19 ++++++------------- 3 files changed, 12 insertions(+), 15 deletions(-) diff --git a/mdclogpy/mdclogpy/Logger.py b/mdclogpy/mdclogpy/Logger.py index d83750e..d3a98c8 100644 --- a/mdclogpy/mdclogpy/Logger.py +++ b/mdclogpy/mdclogpy/Logger.py @@ -76,7 +76,7 @@ class Logger(): # Pass configmap_monitor = True to monitor configmap to change logs dynamically using configmap def mdclog_format_init(self,configmap_monitor=False): - self.mdc = {"SYSTEM_NAME":"","HOST_NAME":"","SERVICE_NAME":"","CONTAINER_NAME":"","POD_NAME":""} + self.mdc = {"PID":"","SYSTEM_NAME":"","HOST_NAME":"","SERVICE_NAME":"","CONTAINER_NAME":"","POD_NAME":""} self.get_env_params_values() try: self.filename = os.environ['CONFIG_MAP_NAME'] @@ -182,6 +182,10 @@ class Logger(): self.mdc['POD_NAME'] = os.environ['POD_NAME'] except: self.mdc['POD_NAME'] = "" + try: + self.mdc['PID'] = os.getpid() + except: + self.mdc['PID'] = "" diff --git a/mdclogpy/tox.ini b/mdclogpy/tox.ini index 4dc4185..ce84993 100644 --- a/mdclogpy/tox.ini +++ b/mdclogpy/tox.ini @@ -19,7 +19,7 @@ # # ================================================================================== [tox] -envlist = py37 +envlist = py3 [testenv] deps= diff --git a/mdclogpy/tst/test_Logger.py b/mdclogpy/tst/test_Logger.py index 2ea4b16..760d9bf 100644 --- a/mdclogpy/tst/test_Logger.py +++ b/mdclogpy/tst/test_Logger.py @@ -148,7 +148,7 @@ class TestMdcLog(unittest.TestCase): self.logger.mdclog_format_init(configmap_monitor=True) self.logger.error("empty mdc test") logs = TestMdcLogUtils.get_logs_as_json(output_mock.call_args_list) - self.assertEqual(logs[0]["mdc"], {'SYSTEM_NAME': '', 'HOST_NAME': '', 'SERVICE_NAME': '', 'CONTAINER_NAME': '', 'POD_NAME': ''}) + self.assertEqual(logs[0]["msg"],'empty mdc test') @@ -164,19 +164,12 @@ class TestMdcLog(unittest.TestCase): self.assertEqual(logs[0]["mdc"]["key2"], "value2") @patch('mdclogpy.Logger._output_log') - def test_log_level_change_from_configmap_file(self,output_mock): + def test_that_mdc_pid_logged_correctly(self, output_mock): self.logger.mdclog_format_init(configmap_monitor=True) - self.logger.filename= '/tmp/log-level' - self.logger.dirname='/tmp' - self.logger.register_log_change_notify() - self.assertEqual(mdclogpy.get_level(), mdclogpy.Level.ERROR) - src = open('/tmp/log-level','w') - src.write('log-level: debug') - src.close() - time.sleep(2) - - self.assertEqual(self.logger.get_level(), 10) - + self.logger.error("mdc test") + logs = TestMdcLogUtils.get_logs_as_json(output_mock.call_args_list) + self.assertTrue(logs[0]["mdc"]["PID"]) + def test_that_mdc_values_can_be_added_and_removed(self): -- 2.16.6