将数据从 Splunk 引入 Azure 数据资源管理器
重要
此连接器可用于 Microsoft Fabric 中的实时智能。 使用本文中的说明时,请注意以下例外情况:
- 如果需要,请按照创建 KQL 数据库中的说明创建数据库。
- 如果需要,请按照创建空表中的说明创建表。
- 使用复制 URI 中的说明获取查询或引入 URI。
- 运行 KQL 查询集中的查询。
Splunk Enterprise 是一个软件平台,可用于同时从多个源引入数据。 Splunk 索引器可处理数据,并默认将其存储在主索引或指定的自定义索引中。 在 Splunk 中搜索使用索引数据来创建指标、仪表板和警报。 Azure 数据资源管理器是一项快速且高度可缩放的数据探索服务,适用于日志和遥测数据。
本文介绍如何使用 Azure 数据资源管理器 Splunk 加载项将数据从 Splunk 发送到群集中的表。 你将首选创建表和数据映射,然后指示 Splunk 将数据发送到表中,最后验证结果。
以下方案最适合将数据引入 Azure 数据资源管理器:
- 大容量数据:Azure 数据资源管理器旨在高效处理大量数据。 如果组织生成大量需要实时分析的数据,Azure 数据资源管理器是一个合适的选择。
- 时序数据:Azure 数据资源管理器擅长处理时序数据,例如日志、遥测数据和传感器读数。 它将数据组织在基于时间的分区中,从而轻松执行基于时间的分析和聚合。
- 实时分析:如果组织需要从流入的数据中获取实时见解,Azure 数据资源管理器的近实时功能可能很有用。
先决条件
- Microsoft 帐户或 Microsoft Entra 用户标识。 无需 Azure 订阅。
- Azure 数据资源管理器群集和数据库。 创建群集和数据库。
- Splunk Enterprise 9 或更高版本。
- Microsoft Entra 服务主体。 创建 Microsoft Entra 服务主体。
创建表和映射对象
获得群集和数据库后,创建一个架构与 Splunk 数据匹配的表。 还可以创建一个映射对象,该对象用于将传入数据转换为目标表架构。
在以下示例中,你将创建一个名为 WeatherAlert
表,该表具有四个列:Timestamp
、Temperature
、Humidity
和 Weather
。 你还将创建一个名为 WeatherAlert_Json_Mapping
的新映射。该映射根据 path
的指定从传入的 json 中提取属性,然后将这些属性输出到指定的 column
。
在 Web UI 查询编辑器中运行以下命令以创建表和映射:
创建表:
.create table WeatherAlert (Timestamp: datetime, Temperature: string, Humidity: string, Weather: string)
验证表
WeatherAlert
是否已创建且为空:WeatherAlert | count
创建映射对象:
.create table WeatherAlert ingestion json mapping "WeatherAlert_Json_Mapping" ```[{ "column" : "Timestamp", "datatype" : "datetime", "Properties":{"Path":"$.timestamp"}}, { "column" : "Temperature", "datatype" : "string", "Properties":{"Path":"$.temperature"}}, { "column" : "Humidity", "datatype" : "string", "Properties":{"Path":"$.humidity"}}, { "column" : "Weather", "datatype" : "string", "Properties":{"Path":"$.weather_condition"}} ]```
使用先决条件中的服务主体来授予使用数据库的权限。
.add database YOUR_DATABASE_NAME admins ('aadapp=YOUR_APP_ID;YOUR_TENANT_ID') 'Entra App'
安装 Splunk Azure 数据资源管理器加载项
Splunk 加载项与 Azure 数据资源管理器通信,并将数据发送到指定的表。
下载 Azure 数据资源管理器加载项。
以管理员身份登录到 Splunk 实例。
转到“应用”>“管理应用”。
选择“从文件安装应用”,然后选择下载的 Azure 数据资源管理器加载项文件。
按照提示完成安装。
选择“立即重启”。
转到“仪表板”>“警报操作”并查找“Azure 数据资源管理器加载项”,验证是否已安装加载项。
在 Splunk 中创建新索引
在 Splunk 中创建索引,为要发送到 Azure 数据资源管理器的数据指定条件。
- 以管理员身份登录到 Splunk 实例。
- 转到“设置”>“索引”。
- 指定索引的名称,并为要发送到 Azure 数据资源管理器的数据配置条件。
- 根据需要配置其余属性,然后保存索引。
配置 Splunk 加载项以将数据发送到 Azure 数据资源管理器
以管理员身份登录到 Splunk 实例。
使用之前创建的索引转到仪表板并搜索。 例如,如果创建了名为
WeatherAlerts
的索引,则搜索index="WeatherAlerts"
。选择“另存为”>“警报”。
根据警报的需要,指定名称、间隔和条件。
在“触发器操作”下,选择“添加操作”>“发送到 Azure 数据资源管理器”。
配置连接详细信息,如下所示:
设置 说明 群集引入 URL 指定 Azure 数据资源管理器群集的引入 URL。 例如 https://ingest-<mycluster>.<myregion>.kusto.chinacloudapi.cn
。客户端 ID 指定前面创建的 Microsoft Entra 应用程序的客户端 ID。 客户端机密 指定前面创建的 Microsoft Entra 应用程序的客户端密码。 租户 ID 指定之前创建的 Microsoft Entra 应用程序的租户 ID。 Database 指定要将数据发送到的数据库的名称。 表 指定要将数据发送到的表的名称。 映射 指定前面创建的映射对象的名称。 删除额外字段 选择此选项可从发送到群集的数据中删除任何空字段。 持久模式 选择此选项可在引入期间启用持久模式。 设置为 true 时,引入吞吐量将受到影响。 选择“保存”以保存警报。
转到“警报”页,验证警报是否显示在警报列表中。
验证数据是否已引入 Azure 数据资源管理器
触发警报后,数据将发送到 Azure 数据资源管理器表。 可以通过在 Web UI 查询编辑器中运行查询来验证数据是否已引入。