首页 > 解决方案 > Azure Functions V.2 的 Application Insights 无法自动检测 SQL 调用

问题描述

我正在尝试使用 Application Insights for Azure Functions V.2 通过 SQL API (DocumentClient) 自动监视 Azure Cosmos DB 依赖项调用。

函数通过 SQL API 方法访问 Cosmos DB

DocumentClient.readDocuments(String collectionLink, FeedOptions 选项)

该方法的调用发生在单独的包中,但通过 maven 与 pom.xml 文件一起导入。

到目前为止已经尝试过什么

遵循https://docs.microsoft.com/en-us/azure/azure-functions/functions-monitoring#dependencies上的文档...

-com.microsoft.azure.applicationinsights-core V.2.3.0 添加到 pom.xml 文件

-APPINSIGHTS_INSTRUMENTATIONKEY 添加到环境变量

-Application Insights 通过 Azure 门户启用并验证为 V.2

-通过删除 AzureWebJobsDashboard 环境变量禁用内置日志记录

-ApplicationInsights.xml 添加到类路径并由 JavaOpts 指向

-AI-Agent.xml 和 applicationinsights-agent-2.3.1.jar 也被添加到类路径并由 JavaOpts 指向。

- 将日志部分添加到 Host.JSON 以仅记录跟踪文件

期望的行为

期望的行为是 CosmosDbConnection.java 中的 CosmosDB SQL 调用将导致 Azure Functions V.2 自动进行依赖跟踪

该函数本身确实作为一个组件出现在 Application Map 中,但没有任何指示 DB 访问的日志。

由于功能的复杂性和数量,手动跟踪依赖关系不是可取的,对此的任何帮助或建议将不胜感激。

标签: javaazureazure-functionsazure-cosmosdbazure-application-insights

解决方案


推荐阅读