From f6bd0ee9158de10e75011783c087171898705ad0 Mon Sep 17 00:00:00 2001 From: yayogev Date: Wed, 6 Sep 2017 20:17:57 +0300 Subject: US2925 add monitoring of host pNIC in OVS - check_interface.py: renamed to check_pnic_ovs.py - check_interface.py: check changed to use 'ip link show' command - monitor.py: handle check name where object type contains underscore, specifically 'host_pnic' - monitor.py: refactored to work as class - monitoring_pnic.py: changed to handle either OVS or VPP - monitoring_check_handler.py: change to allow defining hard-coded check_type string for file_type naming - monitoring config templates: removed default handler Change-Id: Iad38fa108e9ceae18a7c94b3570a8d9b836a8632 Signed-off-by: yayogev --- app/monitoring/handlers/handle_host_pnic.py | 31 +++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 app/monitoring/handlers/handle_host_pnic.py (limited to 'app/monitoring/handlers/handle_host_pnic.py') diff --git a/app/monitoring/handlers/handle_host_pnic.py b/app/monitoring/handlers/handle_host_pnic.py new file mode 100644 index 0000000..3c5ba87 --- /dev/null +++ b/app/monitoring/handlers/handle_host_pnic.py @@ -0,0 +1,31 @@ +############################################################################### +# Copyright (c) 2017 Koren Lev (Cisco Systems), Yaron Yogev (Cisco Systems) # +# and others # +# # +# All rights reserved. This program and the accompanying materials # +# are made available under the terms of the Apache License, Version 2.0 # +# which accompanies this distribution, and is available at # +# http://www.apache.org/licenses/LICENSE-2.0 # +############################################################################### +# handle monitoring event for pNIC objects + +from monitoring.handlers.monitoring_check_handler import MonitoringCheckHandler +from utils.special_char_converter import SpecialCharConverter + + +class HandleHostPnic(MonitoringCheckHandler): + + def __init__(self, args): + super().__init__(args) + + def handle(self, obj_id, check_result): + object_id = obj_id[:obj_id.index('-')] + mac = obj_id[obj_id.index('-')+1:] + converter = SpecialCharConverter() + mac_address = converter.decode_special_characters(mac) + object_id += '-' + mac_address + doc = self.doc_by_id(object_id) + if not doc: + return 1 + self.keep_result(doc, check_result) + return check_result['status'] -- cgit 1.2.3-korg