如何为从未触发的警报创建azure customMetric警报?

时间:2020-09-01 18:07:33

标签: azure azure-application-insights azure-monitoring

我在产品环境中有一些错误警报,如果它们触发了,我希望得到警报。问题是它们从未触发过,因此我无法在门户中看到它们。

谢谢!

2 个答案:

答案 0 :(得分:1)

我看到您有一个try / catch,然后您可以考虑向应用程序见解发送自定义错误消息(此处的逻辑是,由于您知道自定义错误消息,因此可以使用此预定义的消息来创建警报),通过在catch块中使用以下代码:

        try
        {
           //your code            
        }
        catch
        {
            //if you're using ILogger which is integrated with application insights.
            _logger.LogError(new Exception(),"custom error: xxxx");
                           
            //your other code
        }

然后导航至Azure门户->应用程序见解->日志:

1。按如下方式编写查询:

exceptions  
| where customDimensions.FormattedMessage == "custom error: xxxx"

2。选择查询,然后单击运行按钮。

3。最后,单击“新建警报规则”按钮以创建警报。

enter image description here

答案 1 :(得分:1)

我想我现在更好地了解了您的问题。今天,我通过this post收到了一项新功能的通知:

针对尚未发出的自定义指标定义警报规则

创建度量标准警报规则时,将根据“度量标准定义” API验证度量标准名称以确保其存在。在某些情况下,您甚至想在自定义指标发布前就对其创建警报规则。例如,在创建(使用Resource Manager模板)一个Application Insights资源时,该资源将发出自定义指标以及监视该指标的警报规则。

为避免尝试验证自定义指标的定义时部署失败,您可以在警报规则的条件部分中使用skipMetricValidation参数,这将导致指标验证被跳过。 (source