Skip to content

Providers

OmniObserve provides two provider systems:

  • llmops - LLM observability for AI/ML applications (tracing, evaluation, prompts, datasets)
  • observops - General application observability (metrics, traces, logs)

LLM Providers (llmops)

For AI/ML application observability. Register via blank import and open with llmops.Open().

Provider Package Description
Opik github.com/agentplexus/go-opik/llmops Comet Opik - Open-source, full-featured
Langfuse omniobserve/llmops/langfuse Cloud & self-hosted, batch ingestion
Phoenix github.com/agentplexus/go-phoenix/llmops Arize Phoenix - OpenTelemetry-based
slog omniobserve/llmops/slog Local structured logging for development

App Observability Providers (observops)

For general application observability. Register via blank import and open with observops.Open().

Provider Package Description
OTLP omniobserve/observops/otlp OpenTelemetry Protocol - vendor-agnostic
Datadog omniobserve/observops/datadog Datadog APM via OTLP
New Relic omniobserve/observops/newrelic New Relic via OTLP
Dynatrace omniobserve/observops/dynatrace Dynatrace via OTLP

See also: sloghandler for slog integration with trace correlation.


observops Capabilities

Feature OTLP Datadog New Relic Dynatrace
Metrics :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
Traces :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
Logs :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
slog Handler :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:

LLM Provider Capabilities

Feature Opik Langfuse Phoenix slog
Tracing :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
Evaluation :white_check_mark: :white_check_mark: :white_check_mark: :x:
Prompts :white_check_mark: Partial :x: :x:
Datasets :white_check_mark: :white_check_mark: Partial :x:
Experiments :white_check_mark: :white_check_mark: Partial :x:
Streaming :white_check_mark: :white_check_mark: Planned :x:
Distributed Tracing :white_check_mark: :x: :white_check_mark: :x:
Cost Tracking :white_check_mark: :white_check_mark: :x: :x:
OpenTelemetry :x: :x: :white_check_mark: :x:

Provider Registration

LLM Providers (llmops)

import (
    "github.com/plexusone/omniobserve/llmops"

    // Register one or more providers
    _ "github.com/agentplexus/go-opik/llmops"
    _ "github.com/plexusone/omniobserve/llmops/langfuse"
    _ "github.com/agentplexus/go-phoenix/llmops"
    _ "github.com/plexusone/omniobserve/llmops/slog"
)

// Open by name
provider, err := llmops.Open("opik", llmops.WithAPIKey("..."))

App Observability Providers (observops)

import (
    "github.com/plexusone/omniobserve/observops"

    // Register one provider
    _ "github.com/plexusone/omniobserve/observops/otlp"     // OTLP
    // or
    _ "github.com/plexusone/omniobserve/observops/datadog"  // Datadog
    // or
    _ "github.com/plexusone/omniobserve/observops/newrelic" // New Relic
)

// Open by name
provider, err := observops.Open("otlp",
    observops.WithEndpoint("localhost:4317"),
    observops.WithServiceName("my-service"),
)
defer provider.Shutdown(ctx)

Direct SDK Access

For provider-specific features, use the underlying SDKs directly:

import "github.com/plexusone/omniobserve/sdk/langfuse"  // Langfuse SDK
import "github.com/agentplexus/go-opik"                   // Opik SDK
import "github.com/agentplexus/go-phoenix"                // Phoenix SDK