[thci] dump syslog when reset (#6185)

This commit is contained in:
Simon Lin
2021-04-26 13:03:00 -07:00
committed by GitHub
parent 3128a8e7d5
commit 8168d7a403
2 changed files with 16 additions and 9 deletions
+6 -1
View File
@@ -263,7 +263,7 @@ class OpenThreadTHCI(object):
def log(self, fmt, *args):
try:
msg = fmt % args
logging.info('%s - %s', self, msg)
print('%s - %s - %s' % (self.port, time.strftime('%b %d %H:%M:%S'), msg))
except Exception:
pass
@@ -1272,6 +1272,8 @@ class OpenThreadTHCI(object):
self.__sendCommand('factoryreset', expectEcho=False)
self.sleep(0.5)
self._onReset()
@API
def removeRouter(self, xRouterId):
"""kickoff router with a given router id from the Thread Network
@@ -3045,6 +3047,9 @@ class OpenThread(OpenThreadTHCI, IThci):
self.__handle.close()
self.__handle = None
def _onReset(self):
pass
def __socRead(self, size=512):
if self._is_net:
return self.__handle.recv(size)
+10 -8
View File
@@ -61,6 +61,7 @@ class SSHHandle(object):
def __init__(self, ip, port, username, password):
import paramiko
self.port = '%s:%d' % (ip, port)
self.__handle = paramiko.SSHClient()
self.__handle.set_missing_host_key_policy(paramiko.AutoAddPolicy())
self.__handle.connect(ip, port=int(port), username=username, password=password)
@@ -118,13 +119,6 @@ def SerialHandle(object):
self.bash('stty cols 256')
def log(self, fmt, *args):
try:
msg = fmt % args
logging.info('%s - %s', self.port, msg)
except Exception:
pass
def close(self):
self.__handle.close()
@@ -266,7 +260,10 @@ class OpenThread_BR(OpenThreadTHCI, IThci):
self.__handle.close()
self.__handle = None
@watched
def _onReset(self):
self.__dumpSyslog()
self.__truncateSyslog()
def bash(self, cmd, timeout=DEFAULT_COMMAND_TIMEOUT):
return self.__handle.bash(cmd, timeout=timeout)
@@ -322,3 +319,8 @@ class OpenThread_BR(OpenThreadTHCI, IThci):
def __truncateSyslog(self):
self.bash('sudo truncate -s 0 /var/log/syslog')
def __dumpSyslog(self):
output = self.bash('sudo grep "otbr-agent" /var/log/syslog')
for line in output:
self.log('%s', line)