每次出现错误时使用普罗米修斯创建警报
Creating alert using prometheus everytime there is an error
我是普罗米修斯和警报系统的新手。
我开发了一个微服务并添加了度量代码,以便在出现错误时获取增量总数。
现在我正在尝试创建一个警报,以便每当错误增加时,它应该标记出来并发送邮件。
但我无法为这种情况形成正确的查询。我使用了 error_total > 0 之类的东西来发送警报,但它每次都会起作用,因为除非我们手动重置它,否则计数将 > 0。
您要查找的是increase function。每当前 15 分钟内出现错误时,以下表达式都会触发错误:
expr: increase(my_error_metric[15m]) > 0
annotations:
summary: "Hey! There were {{ $value }} errors in the last 15 minutes"
错误在微服务中很常见,对每个错误发出警报通常是难以管理的。更常见的策略是仅在 error rate 超过给定阈值(例如 5%)时发出警报:
expr: irate(my_error_metric[2m]) / irate(number_of_call[2m]) * 100 > 5
警报增加也可能意味着您可能会错过一些错误,因为警报是在错误上触发的,但在调查期间又发生了另一个错误。不会有第二个警报,它将包含在第一个警报中。
我是普罗米修斯和警报系统的新手。 我开发了一个微服务并添加了度量代码,以便在出现错误时获取增量总数。 现在我正在尝试创建一个警报,以便每当错误增加时,它应该标记出来并发送邮件。 但我无法为这种情况形成正确的查询。我使用了 error_total > 0 之类的东西来发送警报,但它每次都会起作用,因为除非我们手动重置它,否则计数将 > 0。
您要查找的是increase function。每当前 15 分钟内出现错误时,以下表达式都会触发错误:
expr: increase(my_error_metric[15m]) > 0
annotations:
summary: "Hey! There were {{ $value }} errors in the last 15 minutes"
错误在微服务中很常见,对每个错误发出警报通常是难以管理的。更常见的策略是仅在 error rate 超过给定阈值(例如 5%)时发出警报:
expr: irate(my_error_metric[2m]) / irate(number_of_call[2m]) * 100 > 5
警报增加也可能意味着您可能会错过一些错误,因为警报是在错误上触发的,但在调查期间又发生了另一个错误。不会有第二个警报,它将包含在第一个警报中。