谷歌云最近宣布,在其Cloud Monitoring服务中全面支持OpenTelemetry协议。这一举措标志着其在整个观测能力体系中推进遥测数据收集标准化的进程。现在,用户可以通过一个与供应商无关的传输管道,将采用OTLP格式的指标、跟踪数据以及日志一起发送到Cloud Monitoring服务中,从而实现更加灵活、基于标准的遥测数据采集机制,同时使数据导入流程更加简单、一致。
OpenTelemetry SDK生成指标数据,然后通过OTLP协议直接将这些数据发送到Cloud Monitoring服务中,或者先通过OpenTelemetry收集器进行转发。默认情况下,导入的OTLP格式指标会与Prometheus格式的数据一起存储,用户可以使用标准的监控工具对这些数据进行查询。
差分型指标能够通过仅报告计数器变化来减少客户端内存占用;指数分布直方图则有助于动态调整数据存储范围;此外,改进后的命名规则允许使用点号和斜杠进行标识,这使得这些指标更符合OpenTelemetry的标准语义规范。这些功能有助于消除云原生监控工具、第三方遥测系统与谷歌云自身监控基础设施之间的兼容性问题。
Google Kubernetes Engine设计的托管型OpenTelemetry解决方案。这一全托管的采集管道简化了Kubernetes工作负载中OpenTelemetry收集器的部署、扩展和管理流程,对于那些需要利用OTLP进行监控但不想自行维护相关基础设施的团队来说,这是一个非常便捷的选择。
虽然谷歌云在Cloud Monitoring中新增的对OpenTelemetry的支持显著提升了基于标准的遥测数据采集能力,但其他主要的观测平台也在朝着增强与OpenTelemetry的兼容性方向发展,只不过它们各自采取了不同的实现方式。例如,亚马逊网络服务的CloudWatch通过其CloudWatch代理及OpenTelemetry导出工具支持OTLP指标和追踪数据的采集与转换,以便这些数据能够被直接纳入相应的分析系统;不过要实现完整的集成流程,通常还需要进行额外的配置设置。与此同时,像Datadog和New Relic这样的供应商,则通过自己开发的代理程序及数据采集工具,将OpenTelemetry技术与丰富的仪表盘、分析功能以及高级警报机制相结合,从而为用户提供更全面的观测解决方案。不过,某些实现方案仍然会结合专有技术与开放标准,以此来提升自身的功能完备性。
除了超大规模云服务提供商之外,像SigNoz和Grafana Cloud这样的开源或混合式监控工具也同样采用了OTLP技术以及OpenTelemetry生态体系,从而提供了灵活且不受特定供应商限制的监控功能。这些平台非常注重互操作性与易用性,通常允许用户进行更深入的自定义设置或选择自行托管方案,因此很受那些希望避免被某个供应商锁定的团队的青睐。不过,在企业级支持或高度整合的云服务方面,这些工具也会带来一定的局限性。在这个领域,谷歌的做法是将其内置的OTLP支持深度集成到自身的云监控解决方案中,这样对于现有的Google Cloud客户来说,使用起来会更加便捷;同时,这一做法也符合业界推动跨不同工具实现遥测数据真正可移植性的发展趋势。
目前,对于那些使用OpenTelemetry 0.140.0版本或更高版本的客户而言,Cloud Monitoring的OTLP支持已处于预览阶段。这一功能为企业及云工程师提供了更加开放、灵活且具备未来发展潜力的监控基础。