diff options
-rw-r--r-- | Changelog.md | 2 | ||||
-rw-r--r-- | miss_htbt_service/check_health.py | 6 | ||||
-rw-r--r-- | miss_htbt_service/misshtbtd.py | 14 | ||||
-rw-r--r-- | tests/test_trapd_vnf_table.py | 2 |
4 files changed, 20 insertions, 4 deletions
diff --git a/Changelog.md b/Changelog.md index 54a6970..ea8694a 100644 --- a/Changelog.md +++ b/Changelog.md @@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ## [2.4.0] - 2021/10/12 ### Changed - [DCAEGEN2-2939] Removed unused code (config\_notif.py) +### Fixed +- [DCAEGEN2-2832] Pod become unready state ## [2.3.1.] - 2021/06/19 diff --git a/miss_htbt_service/check_health.py b/miss_htbt_service/check_health.py index a010b31..4d04210 100644 --- a/miss_htbt_service/check_health.py +++ b/miss_htbt_service/check_health.py @@ -57,9 +57,13 @@ class GetHandler(BaseHTTPRequestHandler): return -if __name__ == '__main__': +def start_health_check_server() -> None: from http.server import HTTPServer server = HTTPServer(("", 10002), GetHandler) print('Starting server at http://localhost:10002') server.serve_forever() + + +if __name__ == '__main__': + start_health_check_server() diff --git a/miss_htbt_service/misshtbtd.py b/miss_htbt_service/misshtbtd.py index 0ebffe7..ff2f3fe 100644 --- a/miss_htbt_service/misshtbtd.py +++ b/miss_htbt_service/misshtbtd.py @@ -39,6 +39,8 @@ import yaml import socket import os.path as path from pathlib import Path + +import check_health import htbtworker as heartbeat import get_logger from mod import trapd_settings as tds @@ -48,7 +50,6 @@ hb_properties_file = path.abspath(path.join(__file__, "../config/hbproperties.ya ABSOLUTE_PATH1 = path.abspath(path.join(__file__, "../htbtworker.py")) ABSOLUTE_PATH2 = path.abspath(path.join(__file__, "../db_monitoring.py")) -ABSOLUTE_PATH3 = path.abspath(path.join(__file__, "../check_health.py")) ABSOLUTE_PATH4 = path.abspath(path.join(__file__, "../cbs_polling.py")) @@ -332,9 +333,13 @@ _logger = get_logger.get_logger(__name__) def main(): + hc_proc = multiprocessing.Process(target=check_health.start_health_check_server) try: - subprocess.Popen([ABSOLUTE_PATH3], stdout=subprocess.PIPE, stderr=subprocess.STDOUT) _logger.info("MSHBD:Execution Started") + # Start health check server + hc_proc.start() + _logger.info("MSHBD: Started health check server. PID=%d", hc_proc.pid) + job_list = [] pid_current = os.getpid() jsfile = fetch_json_file() @@ -444,6 +449,11 @@ def main(): msg = "Fatal error. Could not start missing heartbeat service due to: {0}".format(e) _logger.error(msg) + finally: + # Stop health check server + if hc_proc.pid is not None: + hc_proc.terminate() + hc_proc.join() if __name__ == '__main__': diff --git a/tests/test_trapd_vnf_table.py b/tests/test_trapd_vnf_table.py index 577a320..4f6e5e4 100644 --- a/tests/test_trapd_vnf_table.py +++ b/tests/test_trapd_vnf_table.py @@ -43,6 +43,7 @@ class test_vnf_tables(unittest.TestCase): """ global ip_address, port_num, user_name, password, db_name, cbs_polling_required, cbs_polling_interval ip_address, port_num, user_name, password, db_name, cbs_polling_required, cbs_polling_interval = hb_properties() + def test_validate_vnf_table_1(self): result =verify_DB_creation_1(user_name,password,ip_address,port_num,db_name) self.assertEqual(result, True) @@ -55,7 +56,6 @@ class test_vnf_tables(unittest.TestCase): result =verify_DB_creation_hb_common(user_name,password,ip_address,port_num,db_name) self.assertEqual(result, True) - def test_cbspolling(self): result= verify_cbspolling() _logger.info(result) |