def remote_diag(reader): glob_logger.debug("Remote diagnosis for reader {0} is starting.".format(reader)) if reader in moxa_readers: test_con = TelnetAgent(reader, 'admin', 'admin', '\> ') try: test_con.login() test_con.logout() except Exception as e: glob_logger.error("Reader {0} failed login test, hard reboot will be execute.".format(reader)) hard_reboot(reader) glob_logger.debug("Reader {0} hard reboot complete.".format(reader)) elif reader in uno1150_readers: test_con = SSH_Agent(reader, 'admin', 'admin') try: test_con.login() test_con.logout() except Exception as e: glob_logger.error("Reader {0} failed login test, hard reboot will be execute.".format(reader)) hard_reboot(reader) glob_logger.debug("Reader {0} hard reboot complete.".format(reader)) glob_logger.debug("Remote diagnosis for reader {0} end.".format(reader))
def moxa_readers_restart(enclosure, applications_list, hard_reboot_flag=False): telnetcon = TelnetAgent(enclosure, 'admin', 'admin', '\> ') try: if telnetcon.login(): while True: if not moxa_readers_apps_kill(telnetcon, applications_list, hard_reboot_flag): glob_logger.debug("Target apps terminated on reader {0}".format(enclosure)) break if not hard_reboot_flag: while True: if moxa_readers_apps_start(telnetcon, applications_list): glob_logger.debug("Target apps restarted on reader {0}, no system reboot performed.".format(enclosure)) telnetcon.logout() break else: telnetcon.run("reboot") glob_logger.debug("System reboot on reader {0} completed.".format(enclosure)) if (hard_reboot_flag): sleep(reboot_sleep_time) else: sleep(sleep_time) remote_diag(enclosure) except Exception as e: raise Exception("Exception on reader {0} ".format(enclosure) + e.args[0])