Process ID missing in MDC Log format 51/5151/1
authorwahidw <abdulwahid.w@nokia.com>
Wed, 25 Nov 2020 07:57:48 +0000 (07:57 +0000)
committerwahidw <abdulwahid.w@nokia.com>
Wed, 25 Nov 2020 07:57:48 +0000 (07:57 +0000)
Signed-off-by: wahidw <abdulwahid.w@nokia.com>
Change-Id: Id895eebcc05b29bc9c6eff9773678f0317f3573c

mdclogpy/mdclogpy/Logger.py
mdclogpy/tox.ini
mdclogpy/tst/test_Logger.py

index d83750e..d3a98c8 100644 (file)
@@ -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'] = ""
 
 
     
index 4dc4185..ce84993 100644 (file)
@@ -19,7 +19,7 @@
 #
 # ==================================================================================
 [tox]
-envlist = py37
+envlist = py3
 
 [testenv]
 deps=
index 2ea4b16..760d9bf 100644 (file)
@@ -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):