Apache Commons Net library does not seem to send anything to any "logger".
Can I somehow obtain a log file from an (FTP) session, for debugging purposes? For example raw FTP commands and responses from the server, like this:
220 Welcome
USER *******
331 Password required for ...
PASS *******
230 Logged on
TYPE I
200 Type set to I
QUIT
221 Goodbye
All protocol implementations in Apache Commons Net, including FTPClient
, derive from SocketClient
, which has a method addProtocolCommandListener
. You can pass it an implementation of ProtocolCommandListener
to implement logging.
There's a ready-made implementation PrintCommandListener
, which prints the protocol log to provided PrintStream
.
With a code like this:
ftpClient.addProtocolCommandListener(
new PrintCommandListener(
new PrintWriter(new OutputStreamWriter(System.out, "UTF-8")), true));
..., you will get exactly the output that you have asked for.