Azure Monitor 与 App Insights 关系

Azure monitor 和 Azure App Insights 之间的关系

简要结论:

  • Azure Monitor 是统一的监控平台(覆盖指标、日志、追踪、告警、可视化等)。
  • Azure Application Insights(简称 App Insights)是 Azure Monitor 里的“应用性能监控(APM)”能力,专注于应用层的遥测与诊断。
  • 换句话说:App Insights 是 Azure Monitor 的一个组件/功能域,聚焦应用;Azure Monitor 是大盘,涵盖应用与基础设施。

详细说明:

  • 关注点

    • Azure Monitor:面向全栈与全资源(VM/容器/数据库/网络/平台服务等)的监控与运营,提供指标平台、日志平台(Kusto/KQL)、告警、Workbook、仪表板、数据收集规则等。
    • App Insights:面向应用与代码的 APM,提供请求/依赖/异常/分布式追踪、应用映射(Application Map)、可用性测试、Live Metrics、失败分析、Profiler/Snapshot Debugger(部分区域/限制)。
  • 数据与存储

    • App Insights 产生的遥测数据最终进入 Azure Monitor Logs(Log Analytics 工作区)。
    • 现在推荐使用“基于工作区(workspace-based)的 Application Insights”:数据落在绑定的 Log Analytics 工作区里,用同一套 KQL 查询,便于与其他资源日志联查、统一告警和访问控制。
    • 你会在工作区里看到 App Insights 的资源专用表(如 AppRequests、AppDependencies、AppTraces、AppExceptions、AppAvailabilityResults、AppPageViews、AppCustomEvents 等;具体名称以实际环境为准)。
  • 定价与治理

    • App Insights 的数据摄取与保留按 Azure Monitor Logs 的计费模型计量(GB 计费、保留期、承诺层/预留等),部分增值功能可能单独计费。
    • 访问控制、合规与数据驻留随工作区与订阅的治理策略统一管理。
  • 选型与搭配

    • 监控应用代码、请求性能、分布式追踪、用户行为:用 App Insights(并通过 Azure Monitor 的告警、Workbook 等进行运营)。
    • 监控基础设施与平台服务、跨资源分析与统一运营:用 Azure Monitor(VM/Container Insights、Metrics/Logs、Activity Log 等)。
    • 实践中常是“两者一起用”:应用打点进 App Insights,数据进工作区;再用 Azure Monitor 做跨资源查询、告警与可视化。
  • 集成与标准

    • 支持 OpenTelemetry(可用 Azure Monitor 的 OTEL Distro/Exporters 将 traces/metrics/logs 送入 App Insights/Monitor)。
    • 与 Azure Monitor Alerts、Workbooks、Dashboards、Metrics 等无缝集成。

一句话关系图(文字版):
应用程序 → App Insights(APM/遥测)→ Azure Monitor Logs(Log Analytics)→ KQL 查询/告警/可视化(Azure Monitor)