关闭Paramiko的登录

use*_*986 18 python logging paramiko

我使用Paramiko提供的ssh客户端来创建一个函数调用'remoteSSH'(文件名是remoteConnect.py):

import paramiko
import logging
logger = paramiko.util.logging.getLogger()
logger.setLevel(logging.WARN)

def remoteSSH(username,userpasswd):
    ....
Run Code Online (Sandbox Code Playgroud)

现在我在另一个名为getData()(getdata.py)的Python模块中调用remoteSSH函数:

from remoteConnect import *
import logging
logger2=logging.getLogger()
logger2.setLevel(logging.INFO)
Run Code Online (Sandbox Code Playgroud)

但是,调用logger2.info('ccc')也会打开导入Paramiko模块的文件中的所有INFO级别日志记录(即remoteConnect.py)

如何关闭登录remoteConnect.py以便Paramiko不会吐出所有INFO级别的消息?

Mar*_*erg 44

帕拉米科命名其登山者.它似乎作为其他语言的日志记录模块(JDK日志记录)的功能.

我发现了

logging.getLogger("paramiko").setLevel(logging.WARNING) 帮助.

(你可以将它放在导入paramiko的模块中 - 只需确保'logging'模块也被启用).

我花了一段时间才弄清楚如何做到这一点(事实上,直到我真正开始处理Java日志记录时才想到这个答案)


acu*_*ich 1

在设置 logger2 之前尝试一下:

logging.basicConfig(level=logging.WARN)
Run Code Online (Sandbox Code Playgroud)