diff --git a/src/IRCBot.py b/src/IRCBot.py index f5b66b23..b2c2861f 100644 --- a/src/IRCBot.py +++ b/src/IRCBot.py @@ -204,8 +204,12 @@ class Bot(object): try: server.connect() except Exception as e: - self.log.warn("Failed to connect to %s: %s", - [str(server), str(e)]) + ip = "" + if server.socket.connected_ip is not None: + ip = f" ({server.socket.connected_ip})" + + self.log.warn("Failed to connect to %s%s: %s", + [str(server), ip, str(e)]) self.log.debug("Connection failure reason:", exc_info=True) return False self.servers[server.fileno()] = server diff --git a/src/IRCSocket.py b/src/IRCSocket.py index 7fbae39d..507c6471 100644 --- a/src/IRCSocket.py +++ b/src/IRCSocket.py @@ -69,11 +69,12 @@ class Socket(IRCObject.Object): 5.0) self._socket.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1) + self.connected_ip = self._socket.getpeername()[0] + if self._tls: self._tls_wrap() self.connect_time = time.time() - self.connected_ip = self._socket.getpeername()[0] self.cached_fileno = self._socket.fileno() self.connected = True