首页 > 解决方案 > Azure devops 管道,在发布期间检查 ftp 流量

问题描述

有没有办法从微软托管代理记录详细的 ftp 流量?就我而言,在发布管道中运行 ui 测试时,屏幕截图会上传到 ftp 服务器。昨天当我开始出现以下错误时,它工作了几个星期:

在此处输入图像描述

ftp 服务器端和用于上传 ftp 文件的 c# 代码没有变化。当我在本地运行测试时,上传文件仍然可以正常工作,并且这个问题仅在从管道运行时才会发生,所以我考虑比较网络流量,寻找一些线索。

标签: c#azure-devopspipeline

解决方案


有没有办法从微软托管代理记录详细的 ftp 流量?

您可以尝试使用网络跟踪来收集 Ftp 流量日志。

您可以在配置文件中添加配置(例如 web.config 、 app.config)。

例如:要收集FTPWebRequestFtpWebResponse信息,您可以使用system.net.

<configuration>
  <system.diagnostics>
    <sources>
      <source name="System.Net" tracemode="protocolonly" maxdatasize="1024">
        <listeners>
          <add name="System.Net"/>
        </listeners>
      </source>
    </sources>
    <switches>
      <add name="System.Net" value="Information"/>
    </switches>
    <sharedListeners>
      <add name="System.Net"
        type="System.Diagnostics.TextWriterTraceListener"
        initializeData="network.log"
      />
    </sharedListeners>
    <trace autoflush="true"/>
  </system.diagnostics>
</configuration>

然后它将创建一个 network.log 文件。

由于您使用的是Microsoft-Hosted agent,因此您可以确定文件位置并使用 将Publish Build Artifacts task文件作为构建工件上传。


推荐阅读