如何通过Bicep将KQL函数部署至Application Insights的组件函数中?
通过Bicep部署KQL函数到Application Insights组件函数
你当前通过Bicep部署的是Log Analytics工作区级别的函数,这类函数仅在工作区范围可见。要将KQL函数部署到Application Insights的组件函数中,需要针对Application Insights实例本身的savedSearches资源进行定义,而非Log Analytics工作区的资源。
示例Bicep代码
// 引用已存在的Application Insights实例 resource appInsights 'Microsoft.Insights/components@2020-02-02' existing = { name: 'your-ai-instance-name' // 若AI实例不在当前资源组,需添加resourceGroup参数指定目标资源组 // resourceGroup: 'your-ai-resource-group' } // 部署KQL组件函数到Application Insights resource aiKqlFunction 'Microsoft.Insights/components/savedSearches@2020-02-02' = { name: 'myAIHealthFunction' parent: appInsights properties: { category: 'Health' displayName: 'My AI Component Function' functionAlias: 'MyAIComponentFunction' query: loadTextContent('./Sample.kql') // 加载本地KQL文件内容 tags: [ { name: 'type' value: 'health' } ] } }
关键说明
- 资源类型需使用
Microsoft.Insights/components/savedSearches,而非Log Analytics的Microsoft.OperationalInsights/workspaces/savedSearches - 父资源必须指向目标Application Insights实例,而非Log Analytics工作区
functionAlias是你在KQL查询中调用该函数时使用的别名,需确保在当前AI实例内唯一- 部署完成后,切换到Application Insights实例范围时,该函数会显示在组件函数标签下,可直接用于查询
traces、exceptions等AI专属表
内容的提问来源于stack exchange,提问作者Axefield
相关产品推荐
相关产品推荐

