Skip to main content
이 페이지는 앱 runtime observability와 외부 backend 연동을 다룹니다. Agent 내부 Trace는 MLflow Tracing 계층에서 별도로 다룹니다.

Databricks Apps Telemetry

Databricks Apps Telemetry는 앱 자체의 runtime observability를 담당합니다. MLflow Agent trace와는 별도 계층이며 현재 Public Preview입니다. 앱의 traces/logs/metrics를 OTel로 수집해 Unity Catalog에 저장합니다.

활성화

App Settings의 App telemetry에서 저장할 UC catalog/schema(필요하면 table prefix)를 지정한 뒤 앱을 redeploy 합니다.

생성되는 테이블

로그는 활성화만 하면 자동으로 쌓이지만, span과 metric은 앱에 계측 코드를 추가해야 채워집니다.

FastAPI 예시

requirements.txt에 OTel 패키지를 추가합니다.
app.yaml에서 opentelemetry-instrument로 앱을 실행합니다.
telemetry가 활성화되면 Databricks Apps가 OTLP collector endpoint, protocol, service name, batch 관련 env를 runtime에 자동 주입합니다. 데이터가 쌓이는지 확인합니다.
대상 테이블은 workspace와 같은 region의 managed Delta table이어야 합니다.

외부 OTel backend로 내보내기

Datadog, Grafana, OTel Collector 같은 외부 backend로 Trace를 내보낼 때는 MLflow의 OTLP export를 사용합니다.

3가지 export 모드

dual export(MLflow와 OTel Collector 동시 전송)는 MLFLOW_TRACE_ENABLE_OTLP_DUAL_EXPORT=true 환경변수로 켭니다. OTEL_SERVICE_NAME만으로는 dual export가 되지 않습니다 — OTEL_SERVICE_NAME은 trace 그룹핑(서비스 이름 지정)용입니다. 이 환경변수 설정들은 모두 첫 Trace가 생성되기 전에 적용해야 합니다.