为从门户创建的 Azure 日志分析警报导出 ARM 模板

Posted

技术标签:

【中文标题】为从门户创建的 Azure 日志分析警报导出 ARM 模板【英文标题】:Export ARM Template for Azure Log analytics Alerts created from Portal 【发布时间】:2020-07-15 01:41:05 【问题描述】:

我已创建 Azure Log Analytics(监视器)警报来监视逻辑应用程序故障,并且我已使用 Azure 门户完成此操作。 我想知道如何将 Azure 门户创建的警报导出为 ARM 模板? 任何人都知道我们如何实现它。

谢谢

【问题讨论】:

【参考方案1】:

如果您想在门户中导出警报的ARM模板,请按照以下步骤操作。

1.在门户中,导航到警报所在的资源组(注意:这是警报的组,而不是警报的目标资源组),选择@ 987654330@ 选项 -> 找到您的警报并选择它 -> 点击Export Template

2.点击下图Download,将模板下载为压缩文件,包含template.jsonparameters.json到本地。

更新:

您使用的是legacy Log Analytics Alert,从2019年6月1日起,Azure门户默认自动使用新的scheduledQueryRules,其资源类型为 microsoft.insights/scheduledqueryrules

在您的情况下,您可以按照此link 从旧警报切换到新警报。

或者在门户中创建一个新警报,导航到门户中的Log Analytics workspace -> New alert rule -> 添加Custom log search 并创建它。

创建后,在资源组中选择Show hidden types选项,你会看到如下提示,然后你就可以导出模板了。

【讨论】:

谢谢乔伊,我试了一下,但这仍然没有显示我在 Log Analytics 中创建的警报(我确保我选择了显示隐藏并且还选择了警报的资源组而不是目标资源)。不确定此方法是否适用于日志分析警报,但我可以看到 Application Insights 警报。 @user42012 请在门户中显示您的警报屏幕截图。 hi @Joy Wang 我已经用警报和资源组的屏幕截图更新了我的原始帖子。 @user42012 我稍后会调查。 不用担心,谢谢@Joy-wang,基本上我使用自定义日志搜索条件(查询)从 Log Analytics 工作区创建了一个警报,它显示为 ResourceType (Microsoft.OperationalInsights)。【参考方案2】:

您使用的是旧版日志分析 API,它不支持导出模板,因为它们不是 ARM 跟踪的资源。这些定义将在工作区本身上(在 savedsearch => schedule => action 下)。 如果您希望能够更轻松地导出,请考虑使用更新的 ScheduledQueryRules API。在此处了解有关如何切换的更多信息: https://docs.microsoft.com/azure/azure-monitor/platform/alerts-log-api-switch#process-of-switching-from-legacy-log-alerts-api

请注意,由于 API 更改,这可能会有很大的变化,请查看完整的文章以了解切换后会发生什么。

【讨论】:

以上是关于为从门户创建的 Azure 日志分析警报导出 ARM 模板的主要内容,如果未能解决你的问题,请参考以下文章

Azure 指标警报中的自定义 Json 有效负载

使用 azure 命令行工具根据自定义日志创建警报

Azure 门户在存储帐户中创建 Blob 容器时出错

使用 azure ARM 模板配置逻辑应用失败警报

如何删除网络测试警报

Azure Log Analytics - 警报建议