服务商概述

Azure Monitor 是 Microsoft Azure 的原生全栈监控平台,于 2010 年随 Azure 推出。Azure Monitor 提供指标的自动采集、日志集中管理(Log Analytics)、应用性能监控(Application Insights)、智能告警和自动化诊断修复等可观测性能力。它深度集成在 Azure Portal 中,覆盖 VM、AKS、Function App、SQL Database 等全部 Azure 资源类型。Azure Monitor 与 Azure Security Center、Microsoft Sentinel 等安全服务联动,构建监控-安全一体化运维体系。适合以 Azure 为主的全栈监控需求。

核心优势

  • Azure 全服务原生集成:Azure 资源创建后自动开始采集平台指标和活动日志,无需额外配置。Log Analytics 支持跨 VM、AKS、SQL 等多种资源类型的统一日志查询。参见 网站监控工具选型指南。
  • Application Insights APM:开箱即用的应用性能监控,支持 .NET、Java、Node.js、Python 等语言的自动埋点,提供请求量、响应时间、错误率和依赖分析。
  • KQL 强大查询引擎:Kusto Query Language(KQL)是 Azure Monitor 的查询语言,专为大规模日志和时间序列数据设计,表达能力强大,查询速度快。
  • ML 驱动的智能告警:Smart Alerts 使用 ML 模型自动学习指标历史基线,智能识别异常变化,相比固定阈值减少误报 30%+。结合 监控最佳实践可有效降低告警疲劳。
  • Workbooks 交互式报表:Azure Monitor Workbooks 提供交互式数据可视化报表,支持参数化查询、条件格式化和模板分享,适合构建运维仪表盘。

产品生态

Application Insights

Application Insights 是 Azure Monitor 的 APM 组件,支持自动和手动埋点两种模式。自动埋点通过 Application Insights SDK 或 Azure Monitor OpenTelemetry Distro 实现零代码配置,自动采集请求、依赖、异常和追踪数据。支持分布式追踪和端到端事务关联,适合 .NET、Java、Node.js、Python 应用。Application Insights 与 Visual Studio 和 Azure DevOps 集成,支持从异常堆栈直接跳转到代码行进行调试。

Log Analytics

Log Analytics 是 Azure Monitor 的日志管理和分析组件,基于 Azure Data Explorer 引擎。支持 KQL 查询语言,可实现跨 VM、容器、数据库和应用的统一日志查询。Log Analytics 工作区是日志数据的集中存储和管理单元,支持基于角色的访问控制和数据保留策略。通过 Log Analytics Workspace Insights 可监控工作区自身的使用量和性能。

VM Insights

VM Insights 提供基于 Azure Monitor Agent 的虚拟机监控体验,自动发现和监控 VM 上的进程、依赖关系和性能指标。Map 功能可视化展示 VM 间的网络连接和进程拓扑,结合性能指标的关联分析可在 VM 性能异常时快速定位关联的服务依赖。

AKS Insights

AKS Insights 为 Azure Kubernetes Service 提供容器化应用监控,包括集群健康、节点资源、Pod 状态和容器日志的自动采集。支持基于 Prometheus 的指标采集(Managed Prometheus)和 Grafana 仪表盘集成。Container Logs 通过 ContainerInsights 自动收集,支持 KQL 查询。

Azure Monitor Alerts

Azure Monitor Alerts 支持指标告警、日志告警和活动日志告警三种类型。指标告警支持基于动态阈值的 Smart Detection(智能检测),日志告警支持基于 KQL 查询结果的自定义频率检测,活动日志告警覆盖 Azure 资源创建、删除等管理事件。

不足之处

  • 非 Azure 资源采集成本高:混合云场景需通过 Azure Arc 连接或安装 Log Analytics Agent 采集,配置复杂度较高,指标丰富度不如 Azure 原生资源。
  • 定价模型复杂:Azure Monitor 的费用涉及 Log Analytics 数据摄入、保留期扩展、Application Insights 多维度计费、解决方案叠加费用等多个变量,账单理解成本高。
  • APM 深度不及竞品:Application Insights 的分布式追踪能力虽满足基本需求,但在跨服务链路分析和 AI 辅助诊断深度上不如 Datadog APM 或 New Relic。
  • 大规模查询性能局限:Log Analytics 在超大规模日志数据(PB 级)场景下的查询速度可能不如 Elasticsearch,复杂 KQL 查询响应时间较长。

适用场景

  • Azure 全托管用户(★★★★★):Azure Monitor 是 Azure 用户最基础的监控方案,与 Azure Portal 和 Azure Policy 深度集成。
  • .NET / Java 应用监控(★★★★★):Application Insights 对 .NET 和 Java 应用的零代码自动埋点体验最佳。参见 CDN 日志分析与监控。
  • 容器化应用(AKS)(★★★★☆):AKS Insights 提供容器和 Kubernetes 集群的一体化监控体验。
  • 混合云环境(★★★☆☆):需配合 Azure Arc 和 Log Analytics Agent 采集,建议结合第三方工具。
  • 需要 Microsoft 安全联动的场景(★★★★★):Azure Monitor 与 Security Center、Sentinel 的集成是 Microsoft 安全运维体系的核心组件。

价格参考

服务 免费额度 超出后定价
平台指标 自动免费 免费(最多 50 个指标/资源)
Log Analytics 数据摄入 5 GB/月(每工作区) $2.30/GB(按量)或保留容量折扣
Log Analytics 数据保留 31 天默认 额外保留 ~$0.10/GB/月
Application Insights 1 GB/月免费 $2.30/GB(数据摄入)
Smart Detection 告警 免费 免费
Metrics 告警 免费(最多 10 条规则) ~$0.10/规则/月

注:Azure Monitor 费用包含在 Azure 统一账单中,建议使用 Azure Cost Management + Billing 监控监控费用趋势。

常见问题

  • Azure Monitor 和 Application Insights 是什么关系? Application Insights 是 Azure Monitor 的 APM 子服务,两者数据统一存储在 Log Analytics 工作区中。从 Azure 门户导航看,Application Insights 是 Azure Monitor 的一个功能模块。详见 网站监控工具选型指南。
  • Azure Monitor 可以监控本地服务器吗? 可以。通过安装 Azure Monitor Agent 或使用 Azure Arc 连接,本地服务器可以接入 Azure Monitor 进行指标和日志采集。可参考 云监控服务对比。
  • KQL 和 SQL 有什么区别? KQL(Kusto Query Language)是为大规模日志和时间序列数据设计的只读查询语言,擅长管道操作和数据聚合。SQL 是通用关系数据库查询语言。KQL 在日志分析场景下表达力更强。可参考 ELK 日志分析平台搭建指南。
  • Azure Monitor 和 Datadog 怎么选? Azure Monitor 优势在于 Azure 原生的零成本基础监控和与 Microsoft 安全生态的集成;Datadog 优势在于多云统一体验和更丰富的集成。Azure 为主的团队选 Azure Monitor,多云团队选 Datadog。可参考 云监控服务对比。
  • Log Analytics 查询太慢怎么办? 建议优化 KQL 查询(如缩小时间范围、使用预聚合表),或在工作区中配置 Basic Logs 和 Analytics Logs 分层存储降低成本的同时保持查询性能。可参考 服务器日志监控指南。