Observability

Self-hosted

The self-hosted version of the application supports OpenTelemetry for observability to ship signals to an observability platform, such as Prometheus, Elastic, Datadog, and others.

The following signals are supported:

  • Logs
  • Metrics
  • Traces

You can enable and configure OpenTelemetry by setting environment variables:

Environment VariableValueDescription
OTEL_JAVAAGENT_ENABLEDtrueEnable OpenTelemetry
OTEL_EXPORTER_OTLP_ENDPOINThttps://ENDPOINT_URLThe endpoint URL for the OTLP exporter
OTEL_EXPORTER_OTLP_HEADERSAuthorization=Bearer BEARER_TOKENHeaders for the OTLP exporter, including authorization
OTEL_RESOURCE_ATTRIBUTESservice.name=datacontract-manager,deployment.environment=prodAttributes for the resource, such as service name, version, and deployment environment
OTEL_SERVICE_NAMEdatacontract-managerThe name of the service
OTEL_JAVAAGENT_LOGGINGapplicationThe Java agent logging mode.
OTEL_EXPORTER_OTLP_PROTOCOLhttp/protobufProtocol used by the OTLP exporter
OTEL_LOGS_EXPORTERotlpotlp to enable (default) or none to disable logs exporter
OTEL_METRICS_EXPORTERotlpotlp to enable (default) or none to disable metrics exporter
OTEL_TRACES_EXPORTERotlpotlp to enable (default) or none to disable traces exporter
OTEL_INSTRUMENTATION_MICROMETER_ENABLEDtrueEnable this to export application metrics.

You can use the official OpenTelemetry documentation to learn more about the configuration options: https://opentelemetry.io/docs/languages/sdk-configuration/otlp-exporter/