Я пытаюсь создать ПРЕДУПРЕЖДЕНИЕ для условия, при котором за 15 минут, если количество FailedRequests превышает 99% полученных запросов, я хочу поднять предупреждение. Я написал запрос KQL, но, к сожалению, он просто срабатывает даже без реальных проблем, то есть без реального получения условия более 99%. Ниже приведен запрос, и я уверен, что делаю в нем какую-то глупую ошибку, чем помочь?
Любая помощь в исправлении вышеуказанного запроса, поэтому он действительно дает результаты только тогда, когда это критично, то есть когда все полученные запросы не выполняются.
requests
| where cloud_RoleName == 'ABCDEF_cloudRName' and resultCode != '404'
| summarize FailedPercent=((countif (success == false))/count() by timestamp, cloud_RoleName, appName)*100
| where FailedPercent > 99
| project RelatedCI='XYZZZ',AlarmTime=timestamp,Category = "Cloud-Azure-Monitor",SubCategory = "Application",Object=appName ,"Value of Metric","Percentage Failed Requests"," is ", FailedPercent
Здесь — аналогичная проблема для отправки оповещения, когда процент сбоев превышает xx%.
Я просто пишу запрос, пожалуйста, не стесняйтесь изменять его, если он не соответствует вашим потребностям:
requests
| where resultCode != "404" and success == "False"
| summarize exceptionsCount =count()
| extend a = "a"
| join
(
requests
| where resultCode != "404"
| summarize requestsCount =count()
| extend a = "a"
)
on a
| project isFail = 1.0 * exceptionsCount / requestsCount > 0.99 //check if the failed percentage is greater than 99%.
| project rr=iff(isFail, "Fail","Pass" )
| where rr= = "Fail"
После того, как код запроса будет готов, вы можете создать оповещение на основе запроса, выполнив действия, описанные в проблема выше.
Спасибо, Иван, как и твой запрос, вот что я придумал: - запросы | где cloud_RoleName имеет значение «THREE-CMS» и код результата! = «404» | расширить isSuccesss=iff(success= = "True", 1, 0) | суммировать сбои=сумма(1-isSuccesss) , успехи=сумма(isSuccesss) по bin(timestamp,5m), cloud_RoleName, appName | коэффициент расширения=(todouble(неудачи) / todouble(неудачи+успехи))*100 | где соотношение > 99 | project RelatedCI='APP-CMS',AlarmTime=timestamp,Category = "Cloud-Azure-Monitor",SubCategory = "Application",Object=appName ,"Значение метрики","Процент невыполненных запросов" ," равно ", failure_Percent=коэффициент