代码之家  ›  专栏  ›  技术社区  ›  Bernard Vander Beken Harald Coppoolse

是否有一个restapi用于TrackAvailability?

  •  0
  • Bernard Vander Beken Harald Coppoolse  · 技术社区  · 5 年前

    我有一个PowerShell脚本,它对只在本地可用的api执行内部测试。测试类型与此问题无关。它们通过或失败,并显示错误消息。

    TrackAvailability 向Azure报告测试结果的功能。这可以让我监视来自Azure门户的所有内容。

    问题是:我能做同样的事吗 轨道可用性 逻辑,例如从PowerShell调用REST,而不是使用.NET API?

    2 回复  |  直到 5 年前
        1
  •  0
  •   cijothomas    5 年前

    是的,你可以用可用性测试结果做一个httppost。最简单的方法是创建一个执行TrackAvailability()调用的控制台应用程序,并捕获fiddler跟踪以了解post body结构。你可以在powershell中完成。

    这里记录了端点规范,但是上面的方法可以让您快速开始。 https://github.com/Microsoft/ApplicationInsights-Home/tree/master/EndpointSpecs

        2
  •  0
  •   Bernard Vander Beken Harald Coppoolse    5 年前

    你可以跟着这个 link

    我做了个测试,效果很好:

    powershell代码:

    $body = (New-Object PSObject `
        | Add-Member -PassThru NoteProperty name 'Microsoft.ApplicationInsights.Availability' `
        | Add-Member -PassThru NoteProperty time $([System.dateTime]::UtcNow.ToString('o')) `
        | Add-Member -PassThru NoteProperty iKey "your instrumentation key" `
        | Add-Member -PassThru NoteProperty tags (New-Object PSObject `
        | Add-Member -PassThru NoteProperty 'ai.cloud.roleInstance' $env:computername `
        | Add-Member -PassThru NoteProperty 'ai.internal.sdkVersion' 'one-line-ps:1.0.0') `
        | Add-Member -PassThru NoteProperty data (New-Object PSObject `
            | Add-Member -PassThru NoteProperty baseType 'EventData' `
            | Add-Member -PassThru NoteProperty baseData (New-Object PSObject `
                | Add-Member -PassThru NoteProperty ver 2 `
                | Add-Member -PassThru NoteProperty name 'aaaaaaaa from one line script' `
                | Add-Member -PassThru NoteProperty properties (New-Object PSObject `
                    | Add-Member -PassThru NoteProperty propName 'propValue')))) `
        | ConvertTo-JSON -depth 5; 
    
        Invoke-WebRequest -Uri 'https://dc.services.visualstudio.com/v2/track' -Method 'POST' -UseBasicParsing -body $body
    

    试验结果:

    enter image description here

    TrackAvailability 方法,只需复制“ Microsoft.ApplicationInsights.dll “添加到文件夹中,然后使用“添加类型”将其添加。一个简单的例子如下:

    enter image description here