具有处理多种功能的应用洞察的策略

gog*_*gog 6 azure azure-application-insights azure-functions

我在 Azure 中有一个包含超过 15 个函数应用程序的资源组。一开始,我为每个 Function App 创建了一个 App Insights。因此,如果我想知道\xc2\xb4s 正在发生什么,我可以转到特定Function App 的App Insights(或监视器)并查看\xc2\xb4s 正在发生什么。

\n

它工作得很好,但由于这些功能充当基于分布式消息的服务,有时很难知道问题发生在哪里。所以我想知道处理这种情况的最佳策略。

\n
    \n
  1. 为所有功能创建单个 Application Insights?

    \n
  2. \n
  3. 在 Azure Monitor 中创建一些自定义仪表板,以跟踪一个仪表板内的所有这些 Application Insights(我试图找到如何做到这一点,但实际上找不到)。

    \n
  4. \n
\n

Sam*_*ucy 9

最佳实践是将流程中的所有资源包含在单个 App Insights 实例中。这应该会简化问题的追踪。

如果您确实决定坚持使用多个实例,那么映射应该可以帮助您跟踪整个系统,正如 ZakiMa 提到的那样。文档中有一些基本的故障排除。根据系统的配置方式,可能需要一些手动依赖性跟踪。

此外,如果您决定将它们分开,跨资源查询的Azure Monitor 语法为

union withsource=SourceApp 
app('Contoso-app1').requests,  
app('Contoso-app2').requests, 
app('Contoso-app3').requests, 
app('Contoso-app4').requests, 
app('Contoso-app5').requests 
| parse SourceApp with * "('" applicationName "')" *
Run Code Online (Sandbox Code Playgroud)