2

我试图在 Log Analytics 中的 AzureDiagnostic 表中的列 >400 时触发警报,因为记录将开始删除的表有 500 列限制。

问题是警报期望和 AggregatedValue 和 TimeGenerated。由于这是一个模式,因此没有真正的生成时间。我尝试了“时间”指标并将列重命名为“TimeGenerated”,但出现以下错误:

搜索查询应包含度量警报类型的“AggregatedValue”和“bin(TimeGenerated, [roundTo])”

这是我的警报查询:

AzureDiagnostics
|  getschema
| summarize AggregatedValue = count(ColumnName) by bin(1d, 5m) 
|project AggregatedValue, TimeGenerated=Column1

我得到了这些结果:
在此处输入图像描述

4

2 回答 2

1

我改变了我的逻辑是否返回记录。仅当达到 400 列的阈值并将我的警报阈值设置为 > 0 时,它才会返回记录。

AzureDiagnostics
|  getschema
| summarize count(ColumnName) 
| where count_ColumnName >400

警报: 在此处输入图像描述

于 2019-12-17T17:46:54.790 回答
1

我来自 Azure Monitor 日志分析团队。我们正在积极地使用 Azure Log Analytics 来避免这一切。我们现在正在努力为大多数 Azure 资源提供专用表,这样它就不会过度填充 AzureDiagnostics 表。一些 Azure 资源(如 Azure 数据工厂)可以选择控制是否使用专用表或 AzureDiagnistcs。请参阅此处的 #4:https ://docs.microsoft.com/en-us/azure/data-factory/monitor-using-azure-monitor#monitor-data-factory-metrics-with-azure-monitor

于 2019-12-29T07:52:17.367 回答