Class TnsAITelemetry

java.lang.Object
com.tnsai.quality.observability.TnsAITelemetry

public class TnsAITelemetry extends Object
Central configuration for OpenTelemetry in TnsAI framework.

This class provides a unified entry point for initializing and accessing OpenTelemetry tracing and metrics. It supports both programmatic configuration via the Builder pattern and environment-based configuration via OTEL_* variables.

Usage Example


 // Simple initialization with defaults (uses OTEL_* env vars)
 TnsAITelemetry telemetry = TnsAITelemetry.builder()
     .serviceName("my-agent-service")
     .build();

 // Get tracer for spans
 Tracer tracer = telemetry.getTracer();

 // Get meter for metrics
 Meter meter = telemetry.getMeter();

 // Shutdown on application exit
 telemetry.shutdown();
 

Environment Variables

  • OTEL_EXPORTER_OTLP_ENDPOINT - OTLP collector endpoint (default: http://localhost:4317)
  • OTEL_SERVICE_NAME - Service name for telemetry
  • TNSAI_TELEMETRY_ENABLED - Enable/disable telemetry (default: true)
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
    Builder for TnsAITelemetry configuration.
  • Method Summary

    Modifier and Type
    Method
    Description
    Creates a new Builder for TnsAITelemetry.
    io.opentelemetry.api.metrics.Meter
    Returns the Meter for recording metrics.
    io.opentelemetry.api.OpenTelemetry
    Returns the OpenTelemetry instance.
    io.opentelemetry.api.trace.Tracer
    Returns the Tracer for creating spans.
    boolean
    Returns whether telemetry is enabled.
    void
    Shuts down the telemetry providers gracefully.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • getOpenTelemetry

      public io.opentelemetry.api.OpenTelemetry getOpenTelemetry()
      Returns the OpenTelemetry instance.
    • getTracer

      public io.opentelemetry.api.trace.Tracer getTracer()
      Returns the Tracer for creating spans.
    • getMeter

      public io.opentelemetry.api.metrics.Meter getMeter()
      Returns the Meter for recording metrics.
    • isEnabled

      public boolean isEnabled()
      Returns whether telemetry is enabled.
    • shutdown

      public void shutdown()
      Shuts down the telemetry providers gracefully. Should be called on application shutdown.
    • builder

      public static TnsAITelemetry.Builder builder()
      Creates a new Builder for TnsAITelemetry.