Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 4.0 SSH.NET FTP客户端和日志记录_C# 4.0_Logging_Sftp_Ssh.net - Fatal编程技术网

C# 4.0 SSH.NET FTP客户端和日志记录

C# 4.0 SSH.NET FTP客户端和日志记录,c#-4.0,logging,sftp,ssh.net,C# 4.0,Logging,Sftp,Ssh.net,我有一个非常基本的例程,可以使用SSH.NET库将文件上传到安全的FTP站点。我正在使用库外的SftpClient对象。一切正常,我没有收到任何异常。然而,FTP另一端的公司表示,他们没有收到一些文件。它看起来是随机的,每次我手动验证文件是否在FTP服务器上时,它们都被删除了。所以我怀疑他们这边有什么问题,因为在向其他客户发送了数千个文件之后,除了他们之外,从来没有丢失过一个文件 所以…我一直在寻找从SftpClient中注销的选项,这样我就可以证明文件实际上已经上传了 有没有办法让FTP命令从

我有一个非常基本的例程,可以使用SSH.NET库将文件上传到安全的FTP站点。我正在使用库外的SftpClient对象。一切正常,我没有收到任何异常。然而,FTP另一端的公司表示,他们没有收到一些文件。它看起来是随机的,每次我手动验证文件是否在FTP服务器上时,它们都被删除了。所以我怀疑他们这边有什么问题,因为在向其他客户发送了数千个文件之后,除了他们之外,从来没有丢失过一个文件

所以…我一直在寻找从SftpClient中注销的选项,这样我就可以证明文件实际上已经上传了

有没有办法让FTP命令从库中注销?我正在寻找客户端和服务器响应,如以下从web上窃取的示例:

%   ftp nordsieck.cs.colorado.edu  
Connected to nordsieck.cs.colorado.edu.  
220 nordsieck FTP server (Version 5.53 Tue Aug 25 10:46:12 MDT 1992) ready.  
Name (nordsieck.cs.colorado.edu:yourlogin): yourlogin  
331 Password required for yourlogin.  
Password:  
230 User yourlogin logged in.  
ftp> cd HPSC/exercises  
250 CWD command successful.  
ftp> ls  
200 PORT command successful.  
550 No files found.  
ftp> put tmul.out  
200 PORT command successful.  
150 Opening ASCII mode data connection for tmul.out.  
226 Transfer complete.  
local: tmul.out remote: tmul.out  
1882 bytes sent in 0.0095 seconds (1.9e+02 Kbytes/s)  
ftp> ls  
200 PORT command successful.  
150 Opening ASCII mode data connection for file list.  
tmul.out  
226 Transfer complete.  
9 bytes received in 0.0021 seconds (4.3 Kbytes/s)  
ftp> mput *  
mput Makefile? y  
200 PORT command successful.  
150 Opening ASCII mode data connection for Makefile.  
226 Transfer complete.  
local: Makefile remote: Makefile  
1020 bytes sent in 0.0062 seconds (1.6e+02 Kbytes/s)  
mput tmul.out? n  
ftp> quit  
221 Goodbye.  

除此之外,还有其他可用的日志记录吗?

您显示的是FTP日志。FTP是一种文本协议(命令以文本形式发送),因此日志记录非常简单。SFTP是一种完全不同的协议,具有二进制命令。最好的选择是在调用每个SFTP方法之前和之后添加自己的日志记录

啊。我只是假设SFTP协议只是对典型的FTP会话进行加密。我没有意识到它重新定义了信息传输的基本协议。也就是说,我能够通过源代码(它也是开源的)挖掘,并从中获得我需要的日志记录。出于好奇,你为什么认为SSH.NET已经过时了?它仍在维护中,似乎运行良好。我看到你开发了一种竞争产品……这与此有关吗?;)@MichaelStoner所有这些开源名称都太令人困惑了。。。有一个名为SharpSSH的旧库,ssh.net标记提到SharpSSH是源代码。