Suprimindo saída de paramiko SSHClient Classe
Pergunta
Quando eu chamar a função de conexão da classe SSHClient
paramiko, ele gera alguns dados de registro sobre o estabelecimento da ligação, o que eu gostaria de suprimir.
Existe uma maneira de fazer isso através de si paramiko, ou Python em geral?
Solução
paramiko não faz nada de saída por padrão. Você provavelmente tem uma chamada para o módulo de registro, estabelecendo um loglevel que herdou quando conjuntos paramiko-se que é o registo próprio.
Se você quiser entrar no logger paramiko para substituir as configurações:
logger = paramiko.util.logging.getLogger()
Há também uma função de conveniência para registrar tudo em um arquivo:
paramiko.util.log_to_file('filename.log')
Outras dicas
Eu não sei o que paramiko é, e deve haver uma definição do nível de log com certeza, mas se você está desesperado e procurando uma solução temporária e se o seu aplicativo é único segmento
import sys
dev_null = sys.stdout = sys.stderr = open('/dev/null', 'w')
try:
.
. connect()
.
finally:
dev_null.close()
Você pode usar StringIO para saída também, se você estiver em um sistema operacional não tem uma '/ dev / null'