# Class IdServerTelemetryService

java.lang.Object
com.io7m.idstore.server.service.telemetry.otp.internal.IdServerTelemetryService

All Implemented Interfaces:
  `IdServerTelemetryServiceType, com.io7m.repetoir.core.RPServiceType, AutoCloseable`

public final class IdServerTelemetryService extends Object implements AutoCloseable, IdServerTelemetryServiceType
An OpenTelemetry service.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `IdServerTelemetryService(io.opentelemetry.api.trace.Tracer inTracer, io.opentelemetry.api.metrics.Meter inMeter, io.opentelemetry.api.logs.Logger inLogger, io.opentelemetry.context.propagation.TextMapPropagator inTextMapPropagator)`
  An OpenTelemetry service.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `close()`
  `String`
  `description()`
  `boolean`
  `isNoOp()`
  `io.opentelemetry.api.logs.Logger`
  `logger()`
  `io.opentelemetry.api.metrics.Meter`
  `meter()`
  `io.opentelemetry.context.propagation.TextMapPropagator`
  `textMapPropagator()`
  `String`
  `toString()`
  `io.opentelemetry.api.trace.Tracer`
  `tracer()`

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### IdServerTelemetryService

    public IdServerTelemetryService(io.opentelemetry.api.trace.Tracer inTracer, io.opentelemetry.api.metrics.Meter inMeter, io.opentelemetry.api.logs.Logger inLogger, io.opentelemetry.context.propagation.TextMapPropagator inTextMapPropagator)
    An OpenTelemetry service.
    Parameters:
      `inTracer` - The tracer instance
      `inMeter` - The meter instance
      `inLogger` - The logger instance
      `inTextMapPropagator` - The text map propagator

- ## Method Details

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`

  - ### textMapPropagator

    public io.opentelemetry.context.propagation.TextMapPropagator textMapPropagator()
    Specified by:
      `textMapPropagator` in interface `IdServerTelemetryServiceType`
    Returns:
      The text map propagator for trace contexts

  - ### description

    public String description()
    Specified by:
      `description` in interface `com.io7m.repetoir.core.RPServiceType`

  - ### tracer

    public io.opentelemetry.api.trace.Tracer tracer()
    Specified by:
      `tracer` in interface `IdServerTelemetryServiceType`
    Returns:
      The main tracer

  - ### meter

    public io.opentelemetry.api.metrics.Meter meter()
    Specified by:
      `meter` in interface `IdServerTelemetryServiceType`
    Returns:
      The main meter

  - ### logger

    public io.opentelemetry.api.logs.Logger logger()
    Specified by:
      `logger` in interface `IdServerTelemetryServiceType`
    Returns:
      The main logger

  - ### isNoOp

    public boolean isNoOp()
    Specified by:
      `isNoOp` in interface `IdServerTelemetryServiceType`
    Returns:
      `true` if this telemetry service is a no-op service

  - ### close

    public void close()
    Specified by:
      `close` in interface `AutoCloseable`