📌  相关文章
📜  Microsoft Azure – 使用 Azure KQL 查询应用程序事件日志数据

📅  最后修改于: 2022-05-13 01:56:13.282000             🧑  作者: Mango

Microsoft Azure – 使用 Azure KQL 查询应用程序事件日志数据

在本文中,我们将使用自定义查询语言 (KQL) 从日志分析数据源中查找应用程序事件日志数据。应使用 KQL 事件运算符检索捕获的应用程序事件日志。此 KQL 事件运算符可帮助用户对所有应用程序的应用程序故障、警告和其他信息源进行故障排除,而无需登录应用程序。可以从 Azure Monitor 本身捕获或导出数据。

先决条件:

  • 应启用 Log Analytics 工作区代理配置以捕获日志事件。

1. 从选择订阅中获取应用程序事件日志:

从选择订阅或订阅或范围中查找所有事件日志的默认 KQL 查询:

Event 
| where EventLog has "Application" and TimeGenerated > ago(1d)

输出:

2. 从 Select Scope 中获取所有应用程序事件日志 ID:

用于从选择范围中查找所有捕获的应用程序事件日志 ID 的 KQL 查询。

Event 
| where EventLog has "Application" and TimeGenerated > ago(1d)
| distinct EventID

输出:

3. 获取选择事件 ID 的应用程序事件日志:

用于查找选择事件 ID 或多个事件 ID 的应用程序事件日志的 KQL 查询

示例 1: 从选择范围中找到选择事件 ID 的应用程序事件日志,比如说 455。

Event 
| where EventLog has "Application" and TimeGenerated > ago(1d)
| where EventID == "455"

输出:

示例 2:要查找多个事件 id 的应用程序事件日志,假设选择范围中的 455 和 1022。

Event 
| where EventLog has "Application" and TimeGenerated > ago(1d)
| where EventID == "455" or EventID == "1022"

输出:

4. 获取生成的事件:

KQL 日志查询查找为选择订阅或订阅生成的所有事件,并仅投影事件时间戳、源应用程序、事件日志类型、事件 ID、事件日志描述和事件生成资源 ID 的信息。

Event | where EventLog has "Application" and TimeGenerated > ago(1d)
| where EventID != ""
| project TimeGenerated, Source, EventLog, EventID, RenderedDescription, _ResourceId

输出: