Commit 0deb810a authored by Lu Xu's avatar Lu Xu 👀

wip

parent d96b041f
......@@ -124,4 +124,4 @@ md5sum = 44ae5693f62b7a4dbc98f700f68d8600
[vswr-promise]
_update_hash_filename_ = promise/check_vswr.py
md5sum = b5079f4013c59e2e21081e4fef2898c1
md5sum = 9778f2da6777a11568b4e36f20ae8500
......@@ -2,6 +2,7 @@ import errno
import json
import logging
import os
import time
from dateutil import parser
......@@ -71,7 +72,7 @@ class RunPromise(GenericPromise):
return
lopcomm_stats_log = self.getConfig('lopcomm-stats-log')
data_list = get_data_interval(lopcomm_stats_log, 120)
# notifications = []
# fault_texts = []
# Example of data_list
#('[\n'
......@@ -94,19 +95,33 @@ class RunPromise(GenericPromise):
# ' }\n'
# ' },\n'
# ']')
fault_text_list = []
alarm = False
if data_list:
for data in data_list:
notification = data['notification']
alarm_notif = notification['alarm-notif']
fault_texts = alarm_notif['fault-text']
if 'VSWR' in fault_texts:
self.logger.error("lopcomm error:" + fault_texts)
notifications = data['notification']
alarm_notifs = notifications['alarm-notif']
fault_texts = alarm_notifs['fault-text']
fault_sources = alarm_notifs['fault-source']
event_time = alarm_notifs['event-time']
if not fault_text_list:
fault_text_list = ["None",]
for i, fault_text in enumerate(fault_texts):
if 'VSWR' in fault_text:
alarm = True
if not fault_text_list:
self.logger.error("No notification available")
elif alarm:
self.logger.error(fault_source + ": " +fault_text)
else:
self.logger.info("OK")
else:
self.logger.info("No notification, all good")
self.logger.info("No VSWR alarm detected")
now = time.time()
event_time_seconds = time.mktime(time.strptime(event_time, "%Y-%m-%dT%H:%M:%SZ"))
if now - event_time_seconds >= 300:
alarm = False
time.sleep(1)
def test(self):
"""
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment