迁移可用性测试

在本文中,我们将指导你完成从经典 URL ping 测试迁移到新式高效标准测试的过程。

我们通过提供明确的分步说明来简化此过程,以确保无缝转换,并为应用程序提供最新的监视功能。

将经典 URL ping 测试迁移到标准测试

以下步骤将引导你完成创建标准测试的过程,以复制 URL ping 测试的功能。 它使你能够更轻松地通过以前创建的 URL ping 测试来开始使用标准测试的高级功能。

重要

URL ping 测试将于 2026 年 9 月 30 日停用。 请在此之前过渡到标准测试

先决条件

步骤

  1. 使用 Azure PowerShell (Connect-AzAccount + Set-AzContext) 连接到订阅。

  2. 列出当前订阅中的所有 URL ping 测试:

    Get-AzApplicationInsightsWebTest | `
    Where-Object { $_.WebTestKind -eq "ping" } | `
    Format-Table -Property ResourceGroupName,Name,WebTestKind,Enabled;
    
  3. 找到要迁移的 URL Ping 测试并记录其资源组和名称。

  4. 以下命令使用与 URL ping 测试相同的逻辑创建标准测试:

    $resourceGroup = "pingTestResourceGroup";
    $appInsightsComponent = "componentName";
    $pingTestName = "pingTestName";
    $newStandardTestName = "newStandardTestName";
    
    $componentId = (Get-AzApplicationInsights -ResourceGroupName $resourceGroup -Name $appInsightsComponent).Id;
    $pingTest = Get-AzApplicationInsightsWebTest -ResourceGroupName $resourceGroup -Name $pingTestName;
    $pingTestRequest = ([xml]$pingTest.ConfigurationWebTest).WebTest.Items.Request;
    $pingTestValidationRule = ([xml]$pingTest.ConfigurationWebTest).WebTest.ValidationRules.ValidationRule;
    
    $dynamicParameters = @{};
    
    if ($pingTestRequest.IgnoreHttpStatusCode -eq [bool]::FalseString) {
    $dynamicParameters["RuleExpectedHttpStatusCode"] = [convert]::ToInt32($pingTestRequest.ExpectedHttpStatusCode, 10);
    }
    
    if ($pingTestValidationRule -and $pingTestValidationRule.DisplayName -eq "Find Text" `
    -and $pingTestValidationRule.RuleParameters.RuleParameter[0].Name -eq "FindText" `
    -and $pingTestValidationRule.RuleParameters.RuleParameter[0].Value) {
    $dynamicParameters["ContentMatch"] = $pingTestValidationRule.RuleParameters.RuleParameter[0].Value;
    $dynamicParameters["ContentPassIfTextFound"] = $true;
    }
    
    New-AzApplicationInsightsWebTest @dynamicParameters -ResourceGroupName $resourceGroup -Name $newStandardTestName `
    -Location $pingTest.Location -Kind 'standard' -Tag @{ "hidden-link:$componentId" = "Resource" } -TestName $newStandardTestName `
    -RequestUrl $pingTestRequest.Url -RequestHttpVerb "GET" -GeoLocation $pingTest.PropertiesLocations -Frequency $pingTest.Frequency `
    -Timeout $pingTest.Timeout -RetryEnabled:$pingTest.RetryEnabled -Enabled:$pingTest.Enabled `
    -RequestParseDependent:($pingTestRequest.ParseDependentRequests -eq [bool]::TrueString);
    
  5. 新的标准测试默认没有警报规则,因此不会创建干扰警报。 不会对 URL ping 测试进行更改,因此可以继续依赖它来获取警报。

  6. 验证新标准测试的功能后,请更新引用 URL ping 测试的警报规则,改为引用标准测试。 然后禁用或删除 URL ping 测试。

  7. 若要使用 Azure PowerShell 删除 URL ping 测试,可以使用以下命令:

    Remove-AzApplicationInsightsWebTest -ResourceGroupName $resourceGroup -Name $pingTestName;
    

常见问题解答

应何时使用这些命令?

立即将 URL ping 测试迁移到标准测试以利用新功能。

这些步骤是否同时适用于 HTTP 和 HTTPS 终结点?

是的,这些命令适用于 URL ping 测试中使用的 HTTP 和 HTTPS 终结点。

更多信息