警报无法使用Application Insights可用性指标

时间:2017-10-16 13:52:52

标签: azure azure-application-insights

我在 Application Insights 中创建了一组可用性测试,并希望添加警报以通知团队意外失败,但我还没设法做到这一点。警报在创建后不会改变其状态,看起来,它们根本无法获得度量标准数据。

当我打开可用性测试资源时(来自Application Insights刀片或资源组) - 我看到一个巨大的图形,上面有很多绿色/红色点,显示在最后1/24/72小时内执行的测试:

Availability test results

当我尝试创建指标提醒时,我为其选择相同的可用性测试资源和正常运行时间指标,但建议的图表不显示任何内容(请注意严格的水平线和1970年第一年),而任何教程都会显示其中包含nice graphs的示例

Metric Alert editing

任何创建的警报也不会对更改的资源可用性做出反应。

以下是我的ARM模板的一部分:

    {
  "apiVersion": "2016-03-01",
  "name": "[variables('alerts').vehiclesHealth]",
  "type": "microsoft.insights/alertrules",
  "location": "[resourceGroup().location]",
  "tags": {
    "[concat('hidden-link:', resourceId('Microsoft.Insights/components', variables('appInsights').name))]": "Resource",
    "displayName": "app-insights-alert",
    "env": "[parameters('environment')]"
  },
  "properties": {
    "name": "[variables('alerts').vehiclesHealth]",
    "condition": {
      "odata.type": "Microsoft.Azure.Management.Insights.Models.ThresholdRuleCondition",
      "dataSource": {
        "odata.type": "Microsoft.Azure.Management.Insights.Models.RuleMetricDataSource",
        "resourceUri": "[resourceId('microsoft.insights/webtests', variables('tests').vehiclesHealth)]",
        "metricName": "locations/emea-nl-ams-azr/metrics/GSMT_AvRaw"
      },
      "operator": "LessThan",
      "threshold": 50,
      "windowSize": "PT1H"
    },
    "actions": "[variables('alerts').actions]"
  },
  "dependsOn": [
    "[resourceId('microsoft.insights/webtests', variables('tests').vehiclesHealth)]"
  ]
},

我想我可能使用错误的度量标准名称或资源引用,但我不知道如何检查它。是否有任何Powershell脚本或REST API来获取特定资源的所有可用指标?

我的主要问题是:我做错了什么以及如何让它发挥作用?

1 个答案:

答案 0 :(得分:0)

你问两个不同的问题:

a)为什么在配置警报时未显示可用性指标的预览?

b)如何调试通过脚本创建的警报。

让我轮流回复:

A)这是一个已知的错误。有一个团队致力于改善这种体验,但我目前无法分享目标日期。幸运的是,这个bug只与预览有关,它不应该影响警报的正确功能。

B)我建议您使用UI创建警报,然后下载ARM模板并将其与草稿进行比较。这将是确保所有名称都正确的良好起点。