如何在Azure中查询已删除DNS A记录并配置删除告警
监测Azure专用DNS区域记录删除事件的KQL查询与告警配置
当然可以通过KQL查询结合Azure Monitor告警实现对指定专用DNS区域内记录删除操作的监测,以下是具体的查询语句和配置说明:
1. 监测指定区域内A记录的删除事件
针对专用DNS区域privatelink.xx.arc.azure.com的A记录删除操作,可使用基于Azure活动日志AzureActivity表的KQL查询:
AzureActivity | where ResourceType == "Microsoft.Network/privateDnsZones" | where Resource == "privatelink.xx.arc.azure.com" | where OperationNameValue == "Microsoft.Network/privateDnsZones/A/delete" | where ActivityStatusValue == "Success" | project TimeGenerated, Caller, OperationName, Resource, ResourceGroup, ActivityStatusValue
查询说明:
ResourceType:限定查询范围为专用DNS区域资源类型Resource:指定目标专用DNS区域名称OperationNameValue:精准匹配A记录的删除操作类型ActivityStatusValue == "Success":仅监测已成功完成的删除操作(若需包含失败操作可移除该条件)project:按需展示关键字段,比如操作时间、执行账户、所属资源组等
2. 监测指定区域内任意记录的删除事件
如果需要覆盖该区域内所有类型DNS记录的删除操作,调整OperationNameValue的匹配规则即可:
AzureActivity | where ResourceType == "Microsoft.Network/privateDnsZones" | where Resource == "privatelink.xx.arc.azure.com" | where OperationNameValue startswith "Microsoft.Network/privateDnsZones/" and OperationNameValue endswith "/delete" | where ActivityStatusValue == "Success" | project TimeGenerated, Caller, OperationName, Resource, ResourceGroup, ActivityStatusValue, Properties
查询说明:
- 使用
startswith和endswith匹配所有记录类型的删除操作(如A、AAAA、CNAME、MX等) - 新增
Properties字段可查看操作的详细参数,比如被删除的具体记录名称
告警配置步骤
- 进入Azure门户的Azure Monitor,选择告警 > 创建 > 告警规则
- 在范围中选择目标专用DNS区域所在的订阅或资源组
- 在条件中选择自定义日志搜索,粘贴上述KQL查询,设置触发条件为“结果数大于0”
- 配置操作组(如邮件、短信、Webhook通知等)
- 设置告警名称、描述等基本信息后完成创建
内容的提问来源于stack exchange,提问作者learner
相关产品推荐
相关产品推荐

