Splunk Observability Cloud

Splunk Observability Cloud

내장된 otel 콜백과 표준 OpenTelemetry OTLP 환경 변수를 사용해 LiteLLM 트레이스를 Splunk Observability Cloud로 보낼 수 있어요.

출처: 문서

본문

LiteLLM은 OpenTelemetry 통합과 동일한 OpenTelemetry 경로를 사용해요. Splunk의 OTLP/HTTP 트레이스 수집 URL은 /v2/trace/otlp를 사용해요 (/v1/traces가 아님). LiteLLM은 일반적인 컬렉터 URL을 정규화하지만 Splunk 스타일의 /v2/trace/otlp 엔드포인트는 보존하여 스팬(span)이 Splunk에 올바르게 도달하도록 해요.

비디오 워크스루 (Video walkthrough)

Loom에서도 볼 수 있어요.

사전 준비 (Prerequisites)

  • Splunk Observability Cloud 계정과 수집 액세스 토큰(X-SF-Token으로 사용)
  • Splunk Observability Cloud UI 또는 문서에서 가져온 리얼름(realm, 예: eu1, us0)

LiteLLM Proxy

Datadog Logs 같은 통합과 동일한 흐름이에요. config.yaml을 구성하고, 환경 변수를 설정하고, 프록시를 시작하면 돼요.

Step 1: config.yaml에서 OpenTelemetry 콜백을 활성화해요:

litellm_settings:
  callbacks: ["otel"]

Step 2: 아래 OTLP 환경 변수를 설정해요. 프로세스 환경, .env 파일, 또는 config.yaml의 프록시 environment_variables 블록(config 필드)에서 불러올 수 있어요.

목적 변수
트레이스 수집 URL (Splunk OTLP/HTTP) OTEL_EXPORTER_OTLP_ENDPOINT — 예: https://ingest.<realm>.observability.splunkcloud.com/v2/trace/otlp
인증 OTEL_EXPORTER_OTLP_HEADERS 또는 OTEL_HEADERS — 예: X-SF-Token=<your-access-token> (여러 헤더는 콤마로 구분된 key=value 쌍)
프로토콜 OTEL_EXPORTER_OTLP_PROTOCOL = http/protobuf (OTLP/HTTP용; gRPC OTLP 엔드포인트를 대상으로 할 때만 grpc 사용)
선택적 리소스 네이밍 OTEL_SERVICE_NAME, OTEL_ENVIRONMENT_NAME

우선순위: OTEL_EXPORTER_OTLP_PROTOCOL은 레거시 OTEL_EXPORTER보다 먼저 읽혀요. 둘 다 설정되면 OTLP 프로토콜 변수가 우선해요. OTEL_EXPORTER_OTLP_ENDPOINT는 둘 다 설정된 경우 OTEL_ENDPOINT보다 우선해요.

OTEL_EXPORTER_OTLP_ENDPOINT="https://ingest.eu1.observability.splunkcloud.com/v2/trace/otlp"
OTEL_EXPORTER_OTLP_PROTOCOL="http/protobuf"
OTEL_EXPORTER_OTLP_HEADERS="X-SF-Token=<your-ingest-access-token>"
OTEL_SERVICE_NAME="litellm-proxy"

Step 3: 프록시를 시작해요:

litellm --config /path/to/config.yaml

트레이스 확인 (Verify traces)

Splunk Observability Cloud에서 APM / Traces를 열어요 (제품 이름은 버전에 따라 다를 수 있어요). 서비스 이름으로 필터링해요 (OTEL_SERVICE_NAME, 설정하지 않으면 기본값 litellm). 선택적으로 LiteLLM 환경에 OTEL_DEBUG=True를 설정해 로그에서 익스포터 문제를 표면화할 수 있어요 (OpenTelemetry 트러블슈팅 참조).

같이 보기 (See also)

더 알아보기 (Learn more)