# Interface StTelemetryServiceType

All Superinterfaces:
  `com.io7m.darco.api.DDatabaseTelemetryType`, `com.io7m.repetoir.core.RPServiceType`

All Known Implementing Classes:
  `StTelemetryNoOp`, `StTelemetryService`

public interface StTelemetryServiceType extends com.io7m.repetoir.core.RPServiceType, com.io7m.darco.api.DDatabaseTelemetryType
The type of server telemetry services.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `isNoOp()`
  `io.opentelemetry.api.logs.Logger`
  `logger()`
  `io.opentelemetry.api.metrics.Meter`
  `meter()`
  `io.opentelemetry.api.OpenTelemetry`
  `openTelemetry()`
  `static void`
  `recordSpanException(Throwable e)`
  Set the error kind for the current span.
  `static void`
  `setSpanErrorCode(StErrorCode errorCode)`
  Set the error kind for the current span.
  `io.opentelemetry.context.propagation.TextMapPropagator`
  `textMapPropagator()`
  `io.opentelemetry.api.trace.Tracer`
  `tracer()`

  ### Methods inherited from interface com.io7m.repetoir.core.RPServiceType

  `description`

- ## Method Details

  - ### openTelemetry

    io.opentelemetry.api.OpenTelemetry openTelemetry()
    Returns:
      The underlying OpenTelemetry service

  - ### textMapPropagator

    io.opentelemetry.context.propagation.TextMapPropagator textMapPropagator()
    Returns:
      The text map propagator for trace contexts

  - ### tracer

    io.opentelemetry.api.trace.Tracer tracer()
    Specified by:
      `tracer` in interface `com.io7m.darco.api.DDatabaseTelemetryType`
    Returns:
      The main tracer

  - ### meter

    io.opentelemetry.api.metrics.Meter meter()
    Specified by:
      `meter` in interface `com.io7m.darco.api.DDatabaseTelemetryType`
    Returns:
      The main meter

  - ### logger

    io.opentelemetry.api.logs.Logger logger()
    Specified by:
      `logger` in interface `com.io7m.darco.api.DDatabaseTelemetryType`
    Returns:
      The main logger

  - ### setSpanErrorCode

    static void setSpanErrorCode(StErrorCode errorCode)
    Set the error kind for the current span.
    Parameters:
      `errorCode` - The error kind

  - ### recordSpanException

    static void recordSpanException(Throwable e)
    Set the error kind for the current span.
    Parameters:
      `e` - The error kind

  - ### isNoOp

    boolean isNoOp()
    Specified by:
      `isNoOp` in interface `com.io7m.darco.api.DDatabaseTelemetryType`
    Returns:
      `true` if this telemetry is in no-op mode