3

最近我正在使用在我自己的 java 应用程序j2ssh-maverick-1.5.5.jar中实现,但是我在通过.sftplog4j.properties

好像没用log4j.logger.com.sshtools=DEBUG

我可以从有限的内容中找到类似的主题sshtools:“如何为 Maverick 版本 1.4.x 启用调试日志”,但我没有使用maverick-legacy-client.jar.

谁能告诉我如何使用显示调试日志消息j2ssh-maverick-1.5.5.jar

4

2 回答 2

0

在 j2ssh-maverick-1.5.5 中,您需要创建一个实现Logger接口的新类。这是一个例子:

import com.sshtools.logging.Logger;
import com.sshtools.logging.LoggerLevel;
    
public class J2sshLogger implements Logger{
    LoggerLevel level;

    public J2sshLogger(LoggerLevel arg0) {
        level = arg0;
    }

    public boolean isLevelEnabled(LoggerLevel level) {
        return (this.level.ordinal() >= level.ordinal());
    }

    public void log(LoggerLevel level, Object source, String msg) {
        //here your log: example log.write(level, msg);
    }

    public void log(LoggerLevel level, Object source, String msg, Throwable t) {
        //here your log: example log.write(level, msg);
    }
}

创建 SSH 连接时,您需要将新的记录器类设置为LoggerFactory,如下所示:

LoggerFactory.setInstance(new J2sshLogger(LoggerLevel.INFO));
于 2021-03-17T13:56:09.910 回答
0

J2SSH Maverick 使用自己的日志接口Logger

但是,如果您只想简单地记录到 System.out,只需通过调用来使用SimpleLogger

LoggerFactory.setInstance(new SimpleLogger(LoggerLevel.DEBUG));
于 2018-06-07T19:52:28.807 回答