Skip to main content
Hyperterse integrates with OpenTelemetry for distributed tracing and metrics. Tracing covers the execution path, database connectors, and MCP traffic. Structured logging provides operational visibility at every level.

Tracing

When tracing is on, Hyperterse records spans for each stage of tool execution: Traces follow the OpenTelemetry specification and export to any compatible backend: Jaeger, Zipkin, Grafana Tempo, Datadog, AWS X-Ray (via ADOT collector), or any OTLP receiver.

Metrics

Metrics export through the configured OpenTelemetry meter provider.

Structured logging

Hyperterse uses a tagged structured logger with the following fields:
  • Timestamp — ISO 8601.
  • Level — ERROR (1), WARN (2), INFO (3), DEBUG (4).
  • Tag — component identifier: runtime, executor, connector, mcp, auth.
  • Message — descriptive text.
  • Fields — structured key-value pairs (tool name, adapter, duration, error details).

Log levels

Configure via server.log_level in .hyperterse, or --log-level / --verbose CLI flags.

Log routing

Attribute redaction

Sensitive values are redacted before export:
  • Connection strings — replaced with [REDACTED] in trace spans.
  • API keys — auth policy values excluded from trace attributes.
  • Statement parameters — input values in substituted statements logged at debug level only.
Redaction is applied at the observability contract layer, not per-exporter.

Configuration

When tracing or metrics are not configured, they default to disabled.

Collector integration

Hyperterse exports via OTLP over HTTP. Point the endpoint to your collector:

Quick start with Jaeger

Set the tracing endpoint to http://localhost:4318/v1/traces and view traces at http://localhost:16686.