Kusto 查询语言 (KQL) 是使用 Microsoft Sentinel 的驱动语言。尽管类似于 SQL,但新用户仍必须学习和练习该语言。为了帮助加速学习语言,我们创建了一个交互式学习工作簿。当前版本将帮助新用户或现有用户对语言有 100-200 级的理解,同时还提供实践经验,帮助他们在执行现实世界的查询时迅速上手。
本工作簿由几个部分组成:
- 演示数据 - 提供示例数据,以便在其环境中可能没有数据的用户仍然可以使用工作簿进行学习。
- 文档 - 指向指南、官方文档和其他详细说明 KQL 的文档的直接链接。
- 选项卡 - 根据操作将操作员分组在一起的分类选项卡。
- 练习 - 旨在挑战用户并让他们练习刚学过的运算符的手写练习。对于一些操作员来说,当尝试更多练习时,复杂性会增加。
- 查询空间 - 允许用户编写将针对演示数据运行的 KQL 的部分。尽管该空间不包括智能感知,但它仍然模拟用户在执行查询时会使用什么。
- 预期答案 - 用户在完成查询后应该看到的结果。
- 您的答案 - 从在查询空间中输入的查询返回的结果。
- Checker - 检查以确保预期结果与用户获得的结果相同的功能。
工作流程:
当用户进入工作簿时,他们需要选择一个选项卡,其中包含可以练习的运算符。选择选项卡后,将列出操作员以及相关的练习和内容。
选择练习后,用户可以参考操作员的文档或摘要。摘要包括示例以及何时在查询中使用运算符。
一旦用户感觉准备好练习运算符,他们就可以进入查询空间并尝试练习。当用户键入时,将对数据执行查询并返回结果。如果答案是正确的,用户可以为操作员尝试另一项练习(如果提供了),或者他们可以转到另一位操作员。如果答案不正确,用户可以再次尝试练习或显示答案以了解更多信息。
在整个工作簿中重复此过程。用户完成工作簿后,他们应该对 KQL 以及如何在查询中使用它有 200 级的理解。为了补充此工作簿,链接了Advanced KQL 框架工作簿以及Azure Log Analytics 演示工作区。高级 KQL 工作簿将为用户提供更多示例和详细用例以继续学习。Azure Log Analytics 演示工作区将允许用户在更真实的数据上练习他们学到的知识,这些数据类似于他们在工作区中看到的数据。
注意:高级 KQL 框架工作簿需要在环境中部署,按钮才能打开选项卡才能工作。
部署:
如果工作簿在工作簿库中尚不可用,则可以通过以下过程部署工作簿:
- 在GitHub 存储库中找到工作簿。
- 复制工作簿的 JSON。
- 转到 Microsoft 哨兵。
- 转到工作簿。
- 单击“添加工作簿”。
- 进入编辑模式并进入高级编辑器。
- 粘贴复制的内容,然后单击应用。
注意事项:
- 部署后,可能会出现需要对提取的数据进行授权的问题。为此:
- 在工作簿中,进入编辑模式。
- 转到顶部的隐藏参数。
- 单击参数下方和右侧的编辑。
- 单击 JSON,然后单击铅笔图标。
- 单击窗口中的运行查询。
- 将出现一条错误消息,指出该内容必须受信任,单击出现的“添加为受信任”按钮。
- 保存设置和工作簿。
- 某些运算符无法检查,这可能会导致错误。这适用于使用 extend、let 或 externaldata 的练习。
- 这是该工作簿的第一个版本。在未来的版本中,将有更多的内容、更多的练习和上传自定义练习的方法,允许用户挑选有助于工作特定用例的用例。
- 提供的演示数据托管在公共Microsoft Sentinel GitHub 存储库中。