def __init__(self, service_name, database, host_name, registrar_ip): self._service_name = service_name self._database = database self._host_name = host_name self._ip = dlpxqa.get_database_ip(database) self._registrar = TCPRegistryClient(registrar_ip) self._addrs = [] self._remote_host_ip = '' self._port = '' self._connection = None self._discovered_service = False self._connected = False try: self._addrs = rpyc.discover(self._service_name, host=self._ip, registrar=self._registrar) self._discovered_service = True self._remote_host_ip, self._port = self._addrs[0] try: self._connection = rpyc.connect(self._remote_host_ip, self._port) self._connected = True except socket.error: pass except DiscoveryError: pass
DEBUG = False connection_factory = dbm_connection.ConnectionFactory() print strftime("%Y-%m-%d %H:%M:%S", localtime()) conn_dict = get_connections(connection_factory, 'DBMONITOR', dlpxqa.get_database_list(), regsrv_ip) discovery_failure_host_dict = {} connection_failure_host_dict = {} for conn in conn_dict.values(): if conn.is_connected(): print (70 * '=') host_name = conn.root.get_host_name() sid = conn.database ip = dlpxqa.get_database_ip(sid) login = dlpxqa.get_database_os_login(sid) print 'HOST : %s (%s)' % (host_name, ip) print 'SID : %s' % sid print 'LOGIN: %s' % login try: database_role = conn.root.get_database_role(sid) except OSError, e: print 'ERROR: OS error raised: %s' % e.strerror continue print 'ROLE : %s' % database_role.rstrip() archive_dest = conn.root.get_archive_dest(sid) print 'ARCHIVE DEST : %s' % archive_dest