通过OpenTelemetry接入ARMS

本文介绍如何将OpenTelemetry Trace数据接入ARMS并使用。

接入OpenTelemetry Trace数据

ARMS支持多种方式接入OpenTelemetry Trace数据,您可以将OpenTelemetry Trace数据直接上报至ARMS,或通过OpenTelemetry Collector转发。

直接上报

  • 结合ARMS Java AgentOpenTelemetry Java SDK上报Trace数据

    v2.7.1.3及以上版本的ARMS Java Agent支持OpenTelemetry Java SDK扩展。您在使用ARMS Java Agent自动获取通用组件Trace数据的同时,还可以通过OpenTelemetry SDK扩展自定义的方法埋点。具体操作,请参见通过OpenTelemetry Java SDK进行手工埋点

  • 通过OpenTelemetry直接上报Trace数据

    您也可以使用OpenTelemetry SDK进行应用埋点,并通过Jaeger Exporter直接上报Trace数据。具体操作,请参见通过OpenTelemetry上报Java应用数据

通过OpenTelemetry Collector转发

通过开源OpenTelemetry Collector转发Trace数据

使用开源的OpenTelemetry Collector转发Trace数据至ARMS,只需要修改Exporter中的接入点(Endpoint)和鉴权信息(Token)。

exporters:
  otlp:
    endpoint: <endpoint>:8090
    tls:
      insecure: true
    headers:
      Authentication: <token>
说明
  • <endpoint>替换为您上报区域对应的Endpoint,例如:http://tracing-analysis-dc-bj.aliyuncs.com:8090

  • <token>替换为您控制台上获取的Token,例如:b590lhguqs@3a7*********9b_b590lhguqs@53d*****8301

OpenTelemetry Trace使用指南

为了更好的发挥OpenTelemetry Trace数据价值,ARMS提供了链路详情、预聚合大盘、Trace Explorer后聚合分析、调用链路关联业务日志等多种诊断能力。

  • 链路详情

    在链路详情面板左侧可以查看链路的接口调用次序与耗时,面板右侧展示了详细的附加信息和关联指标,例如数据库SQL,JVMHost监控指标等。链路详情

  • 预聚合大盘

    ARMS基于OpenTelemetry Trace数据提供了多种预聚合指标大盘,包括应用总览,接口调用,数据库调用等。更多信息,请参见应用总览

    Overall Analysis tab
  • Trace Explorer后聚合分析

    针对OpenTelemetry Trace数据,ARMS提供了灵活的多维筛选与后聚合分析能力,例如查询特定应用的异常链路。还可以根据IP、接口等维度对Trace数据进行聚合。更多信息,请参见调用链分析

    Span数据信息
  • 调用链路关联业务日志

    ARMS支持将OpenTelemetry Trace与业务日志相关联,从应用接口角度排查业务异常问题。更多信息,请参见通过调用链路和日志分析定位业务异常问题

    Log Analysis