如何在 Web 应用实例上住抓取网络日志
用户部署在 Azure 上的 Web 应用,根据业务需求可能会调用第三方服务,当调用第三方服务出现问题时,如果开发人员定位到是网络问题,并需要抓取网络包进行分析时,可以使用下面的步骤:
安装 ArmClient 工具
以管理员权限打开 PowerShell
运行如下命令安装 chocolatey
PS C:\WINDOWS\system32> iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
通过 chocolatey 安装 armclient 工具
PS C:\WINDOWS\system32> choco install armclient
使用 Azure 账号登陆 ARMClient
PS C:\WINDOWS\system32> armclient.exe login Mooncake
运行下面的命令进行网络日志的抓取(保证您的网站在运行状态下)
armclient.exe POST "/subscriptions/<sub>/resourceGroups/<RG>/providers/Microsoft.Web/sites/<site>/networkTrace/start?duration=<seconds>&api-version=2015-06-01"
[AZURE.NOTE] 对 SubID、资源组名称 RG、网站名称 site、duration(最大设置为 300,目前只允许抓取最长 5 分钟的网络包) 进行替换,这些信息可以在新 portal 中网站预览页面看到。
抓包完成以后,日志会出现在 \home\logfiles\networktrace 目录下。