azure - 基于脚本的 Azure 警报

标签 azure monitoring azure-monitoring azure-alerts

我想使用 Azure 资源图表创建 Azure 警报规则,这些表在 Azure Log Analytics 中不可用。使用 Azure CLI,可以将查询发送到 Azure Resource Graph,例如:

az graph query "<QUERY>" --query count

是否可以根据此查询的结果创建 Azure 警报?

最佳答案

没有直接的方法可以使用图形查询创建警报。以下是我创建它的方法。

方法 1:

您可以借助在 azCLI 中运行的 terraform 来创建它。请参阅SO .

方法 2:

使用 az monitor 命令的计划查询参数,我根据您的要求在给定范围内创建了一个警报。

我尝试创建一个示例警报,它对我有用。

az monitor scheduled-query create -g "xxxxresourcegroup" -n "xxxalert" --scopes "/subscriptions/<subscriptionID>/resourcegroups/xxxxresourcegroup/providers/Microsoft.Compute/virtualMachines/xxxxxVMName" --condition "count 'Placeholder_1' > 360 resource id _ResourceId at least 1 violations out of 5 aggregated" --condition-query Placeholder_1="union Event | where TimeGenerated > ago(3h) | where EventLevelName=='xxxxxError' or SeverityLevel=='xxxerror'" --description "xxxxxxxxx"

输出:

enter image description here

方法 3:

通过在 azCli 中使用 az Monitor Metrics Alert,您可以在不使用查询的情况下构建它。

我使用了一个示例警报来检查 CPU 的状况 (CPU %>50),并且能够执行该警报,如下所示:

az monitor metrics alert create -n alert1 -g "xxxxxresourcegroup" --scopes "/subscriptions/< Subscription_ID >/resourcegroups/<resourcegroupName>/providers/Microsoft.Compute/virtualMachines/xxxVMName" --condition "avg Percentage CPU > 50" --description "CPU Percentage"

输出:

enter image description here

方法 4:

通常,我们可以通过从所需资源执行日志查询来创建警报规则,然后创建新的警报规则。

我尝试使用示例查询来检查虚拟机日志上是否缺少软件更新。

enter image description here

点击新警报规则搜索查询将自动更新,并选择如何汇总结果。

enter image description here

添加警报逻辑。当指定事件达到阈值 50 时,将通过发送电子邮件触发警报。

enter image description here

触发警报后,您可以从操作组中选择一项操作(如果您已定义),否则在触发警报之前创建一个操作。

enter image description here

提供警报规则名称和所需的详细信息。

enter image description here

新警报规则已成功创建。

enter image description here

引用:MsDoc

关于azure - 基于脚本的 Azure 警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74563131/

相关文章:

azure - Azure 前门是否支持 TLS 客户端身份验证

azure - 增加azure httptrigger函数中的节点堆内存大小

asp.net - Windows Azure 我可以在同一个超小型实例或小型实例上运行多个网站吗

mongodb - Munin Mongodb 插件未显示。 . .?

json - 使用 Webhook 发送到 Microsoft Teams 的 Azure Monitor 警报 - 没有向 Teams 发送消息

azure - 如何在 Azure 逻辑应用响应组件中进行迭代

android - 是否可以监控 Android 上的所有相机 Activity

Azure 应用程序洞察 | KQL|包含对象数组的 customDimensions 列

cpu - "CPU jumps"是什么意思?