You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure Application Insights中按层级查看调用时长及API方法耗时?

嘿,这两个问题本质上指向的是Application Insights里的层级化调用时长追踪能力,我来一步步给你拆解怎么实现:

1. 层级结构查看呼叫时长:应用程序映射(Application Map)

这是最直观的全局层级视图:

  • 打开你的Application Insights资源,在左侧导航栏找到应用程序映射(Application Map)
  • 页面会自动展示你的服务、API、依赖项之间的调用层级关系,每个节点都会标注平均响应时长、请求量、错误率等核心指标
  • 点击任意节点,选择「查看详细信息」或「转到事务诊断」,就能从全局视图钻取到具体的调用链路细节
2. 方法调用层级的耗时拆分:端到端事务诊断

如果要深入到代码方法级别的耗时拆分(最外层调用作为根节点,内层调用展示时长占比),就得用到事务诊断功能:

  • 方式一:从应用程序映射的某个请求节点点击进入,选择「查看端到端事务」
  • 方式二:直接在左侧导航栏打开事务搜索(Transaction Search),筛选出你要分析的目标API调用,点击进入该请求的详情页
  • 在端到端事务详情页面,你会看到一个完整的调用栈层级视图:
    • 最顶部的根节点就是最外层的API调用,显示该请求的完整总耗时
    • 下方会逐层展开所有内部依赖调用(比如数据库查询、其他API调用)、代码方法调用,每个子节点都会显示自身的耗时,以及在总耗时中的占比
    • 点击任意子节点,还能进一步查看更内层的调用细节、日志甚至代码行级别的追踪(前提是你的应用已经配置了Application Insights SDK的自动性能追踪,或者手动添加了自定义遥测)

额外技巧:自定义方法层级追踪

如果你的业务需要追踪特定的自定义方法(而非SDK自动捕获的框架方法),可以通过SDK的API手动创建嵌套遥测:

  • 以.NET为例,使用StartOperation<DependencyTelemetry>来包裹你的方法逻辑,这样该方法的调用就会作为子节点出现在层级视图中:
    using (var operation = telemetryClient.StartOperation<DependencyTelemetry>("MyCustomMethod"))
    {
        // 你的方法逻辑
    }
    
  • Java、Python等其他语言也有对应的SDK API来实现类似的嵌套追踪

内容的提问来源于stack exchange,提问作者Suraj Gharat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 11:53:31