类 Observability

java.lang.Object
com.agentsflex.core.observability.Observability

public final class Observability extends Object
OpenTelemetry 可观测性统一入口。 支持 Tracing(链路追踪)和 Metrics(指标)。
  • 字段详细资料

    • logger

      private static final org.slf4j.Logger logger
    • globalTracer

      private static volatile io.opentelemetry.api.trace.Tracer globalTracer
    • tracerProvider

      private static volatile io.opentelemetry.sdk.trace.SdkTracerProvider tracerProvider
    • globalMeter

      private static volatile io.opentelemetry.api.metrics.Meter globalMeter
    • meterProvider

      private static volatile io.opentelemetry.sdk.metrics.SdkMeterProvider meterProvider
    • initialized

      private static volatile boolean initialized
    • shutdownHookRegistered

      private static volatile boolean shutdownHookRegistered
    • initError

      private static volatile Throwable initError
    • observabilityEnabled

      private static volatile Boolean observabilityEnabled
    • excludedTools

      private static volatile Set<String> excludedTools
    • customSpanExporter

      private static volatile io.opentelemetry.sdk.trace.export.SpanExporter customSpanExporter
    • customMetricExporter

      private static volatile io.opentelemetry.sdk.metrics.export.MetricExporter customMetricExporter
  • 构造器详细资料

  • 方法详细资料

    • setCustomExporters

      public static void setCustomExporters(io.opentelemetry.sdk.trace.export.SpanExporter spanExporter, io.opentelemetry.sdk.metrics.export.MetricExporter metricExporter)
      注入自定义 Exporter
    • init

      private static void init()
    • isEnabled

      public static boolean isEnabled()
      全局可观测性开关。默认开启。 可通过系统属性 agentsflex.otel.enabled 控制(true/false)。
    • isToolExcluded

      public static boolean isToolExcluded(String toolName)
      判断指定工具是否被排除在可观测性之外。 可通过系统属性 agentsflex.otel.tool.excluded 配置(逗号分隔,如 "heartbeat,debug")。
    • getMetricExportIntervalSeconds

      private static long getMetricExportIntervalSeconds()
    • getExporterType

      private static String getExporterType()
    • createSpanExporter

      private static io.opentelemetry.sdk.trace.export.SpanExporter createSpanExporter()
    • createSpanExporterByClassName

      private static io.opentelemetry.sdk.trace.export.SpanExporter createSpanExporterByClassName(String className)
    • createSpanProcessor

      private static io.opentelemetry.sdk.trace.SpanProcessor createSpanProcessor(io.opentelemetry.sdk.trace.export.SpanExporter exporter)
    • createMetricExporter

      private static io.opentelemetry.sdk.metrics.export.MetricExporter createMetricExporter()
    • createMetricExporterByClassName

      public static io.opentelemetry.sdk.metrics.export.MetricExporter createMetricExporterByClassName(String className)
    • shutdown

      private static void shutdown()
    • getTracer

      public static io.opentelemetry.api.trace.Tracer getTracer()
      获取全局 Tracer 实例(用于链路追踪)。 首次调用时自动初始化 OpenTelemetry。
    • getMeter

      public static io.opentelemetry.api.metrics.Meter getMeter()
      获取全局 Meter 实例(用于指标收集)。 首次调用时自动初始化 OpenTelemetry。