【问题标题】:Strategy with app insights for dealing with multiple functions具有应用洞察力的策略以处理多种功能
【发布时间】:2019-09-19 17:15:17
【问题描述】:

我有一个资源组,在 Windows azure 上包含超过 15 个功能应用程序。在开始时,我为每个函数应用创建了一个应用洞察。因此,如果我想知道发生了什么,我可以转到特定的功能应用洞察(或监视器)并查看发生了什么。它运行良好,但由于这些功能充当基于分布式消息的服务,有时很难知道问题发生在哪里。所以我想知道处理这种情况的最佳策略。

1) 为所有功能创建单一应用洞察?

2) 在 azure monitor 上创建一些自定义仪表板,以在一个仪表板中跟踪所有这些应用程序洞察(我试图找到如何做到这一点,但实际上找不到)

【问题讨论】:

  • Application Map 应该将所有分布式服务拼接到一张图片中(假设它们相互通信)。对你起作用吗?此外,端到端事务详细信息还通过所有组件(无论它们向 Application Insights 报告还是向许多组件报告)缝合整个事务。
  • Application Map,据我了解是跟踪外部依赖。并且关系是 1-1,因为我对每个应用程序见解都有一个应用程序地图。
  • 为特定 Application Insights 资源打开应用程序映射并显示该资源中的所有组件。但是,如果相关性(分布式跟踪)正常工作,它也会从不同的资源中提取所有其他组件。对于 Application Map,应用程序将数据报告到相同的 Application Insights 资源还是不同的资源都没有关系。
  • 基于 1-1 关系,听起来相关性不起作用(假设您的 Azure Functions 相互通信)。您使用哪种语言?
  • 我理解你的意思,你是对的。但是我的问题是,分布式应用出现了一些问题,我需要在应用洞察中快速找到故障点,但是我有15个功能,我需要一张一张的查看应用地图来检测错误吗?

标签: azure azure-application-insights


【解决方案1】:

Best practice 是将流程中的所有资源包含在单个 App Insights 实例中。这应该可以简化问题的追踪。

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

此外,如果您决定将它们分开,则用于跨资源查询的 Azure Monitor syntax

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 "')" *

【讨论】:

    猜你喜欢
    • 2018-03-02
    • 1970-01-01
    • 2020-04-12
    • 1970-01-01
    • 2023-01-27
    • 1970-01-01
    • 2018-10-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多