Commit 16b2bfab authored by hardy's avatar hardy

updating checker for real time issue and ping rttavg

parent ee3a256b
...@@ -126,6 +126,7 @@ class OaiCiTest(): ...@@ -126,6 +126,7 @@ class OaiCiTest():
self.desc = '' self.desc = ''
self.ping_args = '' self.ping_args = ''
self.ping_packetloss_threshold = '' self.ping_packetloss_threshold = ''
self.ping_rttavg_threshold =''
self.iperf_args = '' self.iperf_args = ''
self.iperf_packetloss_threshold = '' self.iperf_packetloss_threshold = ''
self.iperf_profile = '' self.iperf_profile = ''
...@@ -1632,6 +1633,7 @@ class OaiCiTest(): ...@@ -1632,6 +1633,7 @@ class OaiCiTest():
min_msg = 'RTT(Min) : ' + rtt_min + ' ms' min_msg = 'RTT(Min) : ' + rtt_min + ' ms'
avg_msg = 'RTT(Avg) : ' + rtt_avg + ' ms' avg_msg = 'RTT(Avg) : ' + rtt_avg + ' ms'
max_msg = 'RTT(Max) : ' + rtt_max + ' ms' max_msg = 'RTT(Max) : ' + rtt_max + ' ms'
lock.acquire() lock.acquire()
logging.debug('\u001B[1;37;44m ping result (' + UE_IPAddress + ') \u001B[0m') logging.debug('\u001B[1;37;44m ping result (' + UE_IPAddress + ') \u001B[0m')
logging.debug('\u001B[1;34m ' + pal_msg + '\u001B[0m') logging.debug('\u001B[1;34m ' + pal_msg + '\u001B[0m')
...@@ -1658,17 +1660,29 @@ class OaiCiTest(): ...@@ -1658,17 +1660,29 @@ class OaiCiTest():
ping_stat_msg+='RTT(Max) : ' + str("{:.2f}".format(ping_stat['max_1'])) + 'ms \n' ping_stat_msg+='RTT(Max) : ' + str("{:.2f}".format(ping_stat['max_1'])) + 'ms \n'
#building html message #building html message
qMsg = pal_msg + '\n' + min_msg + '\n' + avg_msg + '\n' + max_msg + '\n' + ping_stat_msg qMsg = pal_msg + '\n' + min_msg + '\n' + avg_msg + '\n' + max_msg + '\n' + ping_stat_msg
#checking packet loss compliance
packetLossOK = True packetLossOK = True
if packetloss is not None: if packetloss is not None:
if float(packetloss) > float(self.ping_packetloss_threshold): if float(packetloss) > float(self.ping_packetloss_threshold):
qMsg += '\nPacket Loss too high' qMsg += '\nPacket Loss too high'
logging.debug('\u001B[1;37;41m Packet Loss too high \u001B[0m') logging.debug('\u001B[1;37;41m Packet Loss too high; Target: '+ self.ping_packetloss_threshold + '%\u001B[0m')
packetLossOK = False packetLossOK = False
elif float(packetloss) > 0: elif float(packetloss) > 0:
qMsg += '\nPacket Loss is not 0%' qMsg += '\nPacket Loss is not 0%'
logging.debug('\u001B[1;30;43m Packet Loss is not 0% \u001B[0m') logging.debug('\u001B[1;30;43m Packet Loss is not 0% \u001B[0m')
if (packetLossOK):
#checking RTT avg compliance
rttavgOK = True
if self.ping_rttavg_threshold != '':
if float(rtt_avg)>float(self.ping_rttavg_threshold):
ping_rttavg_error_msg = 'RTT(Avg) too high: ' + rtt_avg + ' ms; Target: '+ self.ping_rttavg_threshold+ ' ms'
qMsg += '\n'+ping_rttavg_error_msg
logging.debug('\u001B[1;37;41m'+ ping_rttavg_error_msg +' \u001B[0m')
rttavgOK = False
if packetLossOK and rttavgOK:
statusQueue.put(0) statusQueue.put(0)
else: else:
statusQueue.put(-1) statusQueue.put(-1)
......
...@@ -295,6 +295,11 @@ def GetParametersFromXML(action): ...@@ -295,6 +295,11 @@ def GetParametersFromXML(action):
CiTestObj.ue_id = "" CiTestObj.ue_id = ""
else: else:
CiTestObj.ue_id = ue_id CiTestObj.ue_id = ue_id
ping_rttavg_threshold = test.findtext('ping_rttavg_threshold')
if (ping_rttavg_threshold is None):
CiTestObj.ping_rttavg_threshold = ""
else:
CiTestObj.ping_rttavg_threshold = ping_rttavg_threshold
elif action == 'Iperf': elif action == 'Iperf':
CiTestObj.iperf_args = test.findtext('iperf_args') CiTestObj.iperf_args = test.findtext('iperf_args')
......
...@@ -752,6 +752,7 @@ class RANManagement(): ...@@ -752,6 +752,7 @@ class RANManagement():
msgLine = 0 msgLine = 0
foundSegFault = False foundSegFault = False
foundRealTimeIssue = False foundRealTimeIssue = False
foundRealTimeIssue_cnt = 0
rrcSetupComplete = 0 rrcSetupComplete = 0
rrcReleaseRequest = 0 rrcReleaseRequest = 0
rrcReconfigRequest = 0 rrcReconfigRequest = 0
...@@ -890,6 +891,7 @@ class RANManagement(): ...@@ -890,6 +891,7 @@ class RANManagement():
result = re.search('LLL', str(line)) result = re.search('LLL', str(line))
if result is not None and not exitSignalReceived: if result is not None and not exitSignalReceived:
foundRealTimeIssue = True foundRealTimeIssue = True
foundRealTimeIssue_cnt += 1
if foundAssertion and (msgLine < 3): if foundAssertion and (msgLine < 3):
msgLine += 1 msgLine += 1
msgAssertion += str(line) msgAssertion += str(line)
...@@ -1258,7 +1260,7 @@ class RANManagement(): ...@@ -1258,7 +1260,7 @@ class RANManagement():
global_status = CONST.ENB_PROCESS_ASSERTION global_status = CONST.ENB_PROCESS_ASSERTION
if foundRealTimeIssue: if foundRealTimeIssue:
logging.debug('\u001B[1;37;41m ' + nodeB_prefix + 'NB faced real time issues! \u001B[0m') logging.debug('\u001B[1;37;41m ' + nodeB_prefix + 'NB faced real time issues! \u001B[0m')
htmleNBFailureMsg += nodeB_prefix + 'NB faced real time issues!\n' htmleNBFailureMsg += nodeB_prefix + 'NB faced real time issues! COUNT = '+ str(foundRealTimeIssue_cnt) +' lines\n'
if rlcDiscardBuffer > 0: if rlcDiscardBuffer > 0:
rlcMsg = nodeB_prefix + 'NB RLC discarded ' + str(rlcDiscardBuffer) + ' buffer(s)' rlcMsg = nodeB_prefix + 'NB RLC discarded ' + str(rlcDiscardBuffer) + ' buffer(s)'
logging.debug('\u001B[1;37;41m ' + rlcMsg + ' \u001B[0m') logging.debug('\u001B[1;37;41m ' + rlcMsg + ' \u001B[0m')
......
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