Commit 2a450db9 authored by ibuler's avatar ibuler

[Update] 优化日志显示

parent 8c9c1f09
...@@ -197,7 +197,7 @@ class TelnetConnection: ...@@ -197,7 +197,7 @@ class TelnetConnection:
) )
def get_socket(self): def get_socket(self):
logger.info('Get telnet server socket. {}'.format(self.client.user)) logger.debug('Get telnet server socket. {}'.format(self.client.user))
self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
self.sock.settimeout(10) self.sock.settimeout(10)
self.sock.connect((self.asset.ip, self.asset.port)) self.sock.connect((self.asset.ip, self.asset.port))
...@@ -211,7 +211,7 @@ class TelnetConnection: ...@@ -211,7 +211,7 @@ class TelnetConnection:
for sock in [key.fileobj for key, _ in events]: for sock in [key.fileobj for key, _ in events]:
data = sock.recv(BUF_SIZE) data = sock.recv(BUF_SIZE)
if sock == self.sock: if sock == self.sock:
logger.info(b'[Telnet server send]: ' + data) logger.debug(b'[Telnet server send]: ' + data)
if not data: if not data:
self.sock.close() self.sock.close()
...@@ -247,7 +247,7 @@ class TelnetConnection: ...@@ -247,7 +247,7 @@ class TelnetConnection:
:param data: option negotiate data :param data: option negotiate data
:return: :return:
""" """
logger.info(b'[Server options negotiate]: ' + data) logger.debug(b'[Server options negotiate]: ' + data)
data_list = data.split(telnetlib.IAC) data_list = data.split(telnetlib.IAC)
new_data_list = [] new_data_list = []
for x in data_list: for x in data_list:
...@@ -272,11 +272,11 @@ class TelnetConnection: ...@@ -272,11 +272,11 @@ class TelnetConnection:
else: else:
new_data_list.append(x) new_data_list.append(x)
new_data = telnetlib.IAC.join(new_data_list) new_data = telnetlib.IAC.join(new_data_list)
logger.info(b'[Client options negotiate]: ' + new_data) logger.debug(b'[Client options negotiate]: ' + new_data)
self.sock.send(new_data) self.sock.send(new_data)
def login_auth(self, raw_data): def login_auth(self, raw_data):
logger.info('[Telnet login auth]: ({})'.format(self.client.user)) logger.debug('[Telnet login auth]: ({})'.format(self.client.user))
try: try:
data = raw_data.decode('utf-8') data = raw_data.decode('utf-8')
...@@ -284,23 +284,23 @@ class TelnetConnection: ...@@ -284,23 +284,23 @@ class TelnetConnection:
try: try:
data = raw_data.decode('gbk') data = raw_data.decode('gbk')
except UnicodeDecodeError: except UnicodeDecodeError:
logger.info(b'[Decode error]: ' + b'>>' + raw_data + b'<<') logger.debug(b'[Decode error]: ' + b'>>' + raw_data + b'<<')
return None return None
if self.incorrect_pattern.search(data): if self.incorrect_pattern.search(data):
logger.info(b'[Login incorrect prompt]: ' + b'>>' + raw_data + b'<<') logger.debug(b'[Login incorrect prompt]: ' + b'>>' + raw_data + b'<<')
return False return False
elif self.username_pattern.search(data): elif self.username_pattern.search(data):
logger.info(b'[Username prompt]: ' + b'>>' + raw_data + b'<<') logger.debug(b'[Username prompt]: ' + b'>>' + raw_data + b'<<')
self.sock.send(self.system_user.username.encode('utf-8') + b'\r\n') self.sock.send(self.system_user.username.encode('utf-8') + b'\r\n')
return None return None
elif self.password_pattern.search(data): elif self.password_pattern.search(data):
logger.info(b'[Password prompt]: ' + b'>>' + raw_data + b'<<') logger.debug(b'[Password prompt]: ' + b'>>' + raw_data + b'<<')
self.sock.send(self.system_user.password.encode('utf-8') + b'\r\n') self.sock.send(self.system_user.password.encode('utf-8') + b'\r\n')
return None return None
elif self.success_pattern.search(data): elif self.success_pattern.search(data):
logger.info(b'[Login Success prompt]: ' + b'>>' + raw_data + b'<<') logger.debug(b'[Login Success prompt]: ' + b'>>' + raw_data + b'<<')
return True return True
else: else:
logger.info(b'[No match]: ' + b'>>' + raw_data + b'<<') logger.debug(b'[No match]: ' + b'>>' + raw_data + b'<<')
return None return None
...@@ -347,7 +347,7 @@ class InteractiveServer: ...@@ -347,7 +347,7 @@ class InteractiveServer:
self.client.send(wr(_("No Assets"), before=0)) self.client.send(wr(_("No Assets"), before=0))
return None return None
except StopIteration: except StopIteration:
logger.info('Back display result paging.') logger.debug('Back display result paging.')
# self.display_banner() # self.display_banner()
return None return None
self.display_result_of_page(page, result) self.display_result_of_page(page, result)
......
...@@ -30,14 +30,14 @@ class SSHInterface(paramiko.ServerInterface): ...@@ -30,14 +30,14 @@ class SSHInterface(paramiko.ServerInterface):
self.user = None self.user = None
def check_auth_interactive(self, username, submethods): def check_auth_interactive(self, username, submethods):
logger.info("Check auth interactive: %s %s" % (username, submethods)) logger.debug("Check auth interactive: %s %s" % (username, submethods))
instructions = 'Please enter 6 digits.' instructions = 'Please enter 6 digits.'
interactive = paramiko.server.InteractiveQuery(instructions=instructions) interactive = paramiko.server.InteractiveQuery(instructions=instructions)
interactive.add_prompt(prompt='[MFA auth]: ') interactive.add_prompt(prompt='[MFA auth]: ')
return interactive return interactive
def check_auth_interactive_response(self, responses): def check_auth_interactive_response(self, responses):
logger.info("Check auth interactive response: %s " % responses) logger.debug("Check auth interactive response: %s " % responses)
# TODO:MFA Auth # TODO:MFA Auth
otp_code = responses[0] otp_code = responses[0]
if not otp_code or not len(otp_code) == 6 or not otp_code.isdigit(): if not otp_code or not len(otp_code) == 6 or not otp_code.isdigit():
......
...@@ -51,12 +51,13 @@ def create_logger(): ...@@ -51,12 +51,13 @@ def create_logger():
}, },
loggers={ loggers={
'coco': main_setting, 'coco': main_setting,
'paramiko': main_setting,
'jms': main_setting, 'jms': main_setting,
# 'socket.io': main_setting, # 'socket.io': main_setting,
# 'engineio': main_setting, # 'engineio': main_setting,
} }
) )
if level.lower() == 'debug':
config['loggers']['paramiko'] = main_setting
dictConfig(config) dictConfig(config)
logger = logging.getLogger() logger = logging.getLogger()
return logger return logger
......
...@@ -41,7 +41,7 @@ class Connection(object): ...@@ -41,7 +41,7 @@ class Connection(object):
client.connection_id = self.id client.connection_id = self.id
self.clients[tid] = client self.clients[tid] = client
self.__class__.clients_num += 1 self.__class__.clients_num += 1
logger.info("New client {} join, total {} now".format( logger.debug("New client {} join, total {} now".format(
client, self.__class__.clients_num client, self.__class__.clients_num
)) ))
return client return client
...@@ -59,7 +59,7 @@ class Connection(object): ...@@ -59,7 +59,7 @@ class Connection(object):
client.close() client.close()
self.__class__.clients_num -= 1 self.__class__.clients_num -= 1
del self.clients[tid] del self.clients[tid]
logger.info("Client {} leave, total {} now".format( logger.debug("Client {} leave, total {} now".format(
client, self.__class__.clients_num client, self.__class__.clients_num
)) ))
......
...@@ -72,14 +72,14 @@ class Session: ...@@ -72,14 +72,14 @@ class Session:
:param silent: If true not send welcome message :param silent: If true not send welcome message
:return: :return:
""" """
logger.info("Session add watcher: {} -> {} ".format(self.id, watcher)) logger.debug("Session add watcher: {} -> {} ".format(self.id, watcher))
if not silent: if not silent:
watcher.send("Welcome to watch session {}\r\n".format(self.id).encode()) watcher.send("Welcome to watch session {}\r\n".format(self.id).encode())
self.sel.register(watcher, selectors.EVENT_READ) self.sel.register(watcher, selectors.EVENT_READ)
self._watchers.append(watcher) self._watchers.append(watcher)
def remove_watcher(self, watcher): def remove_watcher(self, watcher):
logger.info("Session %s remove watcher %s" % (self.id, watcher)) logger.debug("Session %s remove watcher %s" % (self.id, watcher))
self.sel.unregister(watcher) self.sel.unregister(watcher)
self._watchers.remove(watcher) self._watchers.remove(watcher)
...@@ -90,7 +90,7 @@ class Session: ...@@ -90,7 +90,7 @@ class Session:
:param silent: If true not send welcome message :param silent: If true not send welcome message
:return: :return:
""" """
logger.info("Session %s add share %s" % (self.id, sharer)) logger.debug("Session %s add share %s" % (self.id, sharer))
if not silent: if not silent:
sharer.send("Welcome to join session: {}\r\n" sharer.send("Welcome to join session: {}\r\n"
.format(self.id).encode("utf-8")) .format(self.id).encode("utf-8"))
...@@ -194,7 +194,7 @@ class Session: ...@@ -194,7 +194,7 @@ class Session:
break break
elif sock == self.client.change_size_evt: elif sock == self.client.change_size_evt:
self.resize_win_size() self.resize_win_size()
logger.info("Session stop event set: {}".format(self.id)) logger.debug("Session stop event set: {}".format(self.id))
def resize_win_size(self): def resize_win_size(self):
width, height = self.client.request.meta['width'], \ width, height = self.client.request.meta['width'], \
...@@ -205,7 +205,7 @@ class Session: ...@@ -205,7 +205,7 @@ class Session:
@ignore_error @ignore_error
def close(self): def close(self):
if self.closed: if self.closed:
logger.info("Session has been closed: {} ".format(self.id)) logger.debug("Session has been closed: {} ".format(self.id))
return return
logger.info("Close the session: {} ".format(self.id)) logger.info("Close the session: {} ".format(self.id))
self.is_finished = True self.is_finished = True
......
...@@ -111,7 +111,7 @@ class SSHServer: ...@@ -111,7 +111,7 @@ class SSHServer:
chan_type = client.request.type chan_type = client.request.type
kind = client.request.kind kind = client.request.kind
if kind == 'session' and chan_type in supported: if kind == 'session' and chan_type in supported:
logger.info("Request type `{}:{}`, dispatch to interactive mode".format(kind, chan_type)) logger.info("Dispatch client to interactive mode")
try: try:
InteractiveServer(client).interact() InteractiveServer(client).interact()
except IndexError as e: except IndexError as e:
......
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