Как включить журналы отладки для j2ssh Maverick?
Недавно пользуюсь j2ssh-maverick-1.5.5.jar
для реализации sftp
в моем собственном Java-приложении, но у меня возникла проблема с включением отладочного сообщения через log4j.properties
,
Кажется, это не сработало log4j.logger.com.sshtools=DEBUG
Я могу найти похожую тему от sshtools
ограничено: "Как включить журналы отладки для версий Maverick 1.4.x", но я не использую maverick-legacy-client.jar
,
Может ли кто-нибудь сказать мне, как я могу показать сообщение журнала отладки, используя j2ssh-maverick-1.5.5.jar
?
2 ответа
J2SSH Maverick использует собственный интерфейс регистрации Logger
Но если вы хотите просто войти в System.out, просто используйте SimpleLogger, вызвав
LoggerFactory.setInstance(new SimpleLogger(LoggerLevel.DEBUG));
В 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));