Azure函数监视器警报执行计数<1从未触发



我有一个带有Azure函数的Azure函数应用程序,我想单独监视以下规则:如果Azure函数未执行n分钟,请发送电子邮件/发送电子邮件/通知。

我想知道是否可以使用应用程序Insights警报,这是否可以在单个Azure函数的基础上为 Count 提供信号逻辑。但是,这个计数从来没有0,在图中看来任何计数&lt;0不被视为数字。它显示为 - ,如下图:

测试函数图表(没有足够的声誉来发布图像(

图表上的峰值被视为3,但是如果我使用条件" 每当测试功能计数小于1 时,则永远不会触发警报。

更改聚合粒度并没有真正的作用,因为信号逻辑似乎从未记录0的计数,或任何小于1的计数。

有很多不便的方法来执行这种监视,但是使用NICE内置的Azure Application Insight Insights警报似乎很有可能,如果可能的话,我想使用它。

我是在试图滥用应用程序见解警报,还是有明显的东西我没有得到?我认为应该根据缺乏执行的监视规则。

您可能必须使用日志/查询警报执行此操作。如果您执行基于公制的警报,则其中一些不会发送0作为数据。因此,如果在时间范围内什么都没发生,则没有0个警报,因为什么都没有提交0、0、0、0。

相反,您要根据查询创建警报:https://learn.microsoft.com/en-us/azure/azure-monitor/platform/alerts-unified-log

文档列出了此确切方案:

在某些情况下,您可能需要在没有事件的情况下创建警报。

例如,一个过程可能会记录常规事件以表明其正常工作。如果在特定时间段内未记录这些事件之一,则应创建警报。在这种情况下,您将阈值设置为小于1。[添加了强调,这是您的方案,正确]?

记录数的示例类型log警报

考虑一个方案,您想知道何时基于Web的应用程序对使用Code 500(即(内部服务器错误的用户响应响应。您将创建一个带有以下详细信息的警报规则:

查询:请求|resultcode ==" 500"

时间段:30分钟

警报频率:五分钟

阈值值:大于0

在该示例中,由于设置了时间段,查询最终将成为类似requests | where timespan < ago(30m) | where resultCode == "500"的东西。(然后,查询本身可以过滤该时间范围/结果按照您需要设置(

因此,对于您的人来说,您可能只做requests,根本没有任何条件,以及您拥有的任何时间和频率,而"少于一个"作为阈值。您也可以提出更复杂的查询,以滤除测试数据等。

要注意的一件事是,我相信每次频率通过时,日志警报都会发射警报。因此,如果您有请求&LT;每5分钟设置1个警报,并且您的功能在2小时内没有电话,警报将每5分钟发射一次,向您发送40封电子邮件或其他任何电子邮件。也许您想要那个:(

相关内容

最新更新