Observability for Quarkus LangChain4j with Opik

Quarkus LangChain4j uses Quarkus OpenTelemetry configuration in application.properties.

When this guide applies

Use this if your app is Quarkus + LangChain4j and you want OTEL traces to land in Opik.

Opik OTLP endpoint modes

For full endpoint/header details, see Opik OpenTelemetry overview.

  • Cloud endpoint: https://www.comet.com/opik/api/v1/private/otel
  • Enterprise endpoint: https://<comet-deployment-url>/opik/api/v1/private/otel
  • Self-hosted endpoint: http://localhost:5173/api/v1/private/otel

Example (application.properties)

Intent: Configure Quarkus OTEL trace exporter to target Opik directly.

Applies when: You are using Quarkus-native OTEL exporter settings.

Required fields:

  • quarkus.otel.enabled=true
  • quarkus.otel.traces.enabled=true
  • quarkus.otel.exporter.otlp.traces.endpoint
  • quarkus.otel.exporter.otlp.traces.protocol=http/protobuf

Optional fields:

  • quarkus.otel.exporter.otlp.traces.headers (projectName strongly recommended)
  • quarkus.application.name (for service.name attribution)

Minimal valid setup:

1quarkus.otel.enabled=true
2quarkus.otel.traces.enabled=true
3quarkus.otel.exporter.otlp.traces.endpoint=https://www.comet.com/opik/api/v1/private/otel
4quarkus.otel.exporter.otlp.traces.protocol=http/protobuf
5quarkus.otel.exporter.otlp.traces.headers=Authorization=<your-api-key>,Comet-Workspace=<your-workspace>,projectName=<your-project-name>

Validation

  1. Start your Quarkus app with OTEL enabled.
  2. Trigger a LangChain4j-backed endpoint/action.
  3. Confirm spans with your configured service.name and project headers arrive in Opik.

Source references