Grafana Pyroscope CPU 프로파일링
Grafana Pyroscope CPU 프로파일링 (Grafana Pyroscope CPU profiling)
LiteLLM proxy는 환경 변수로 활성화하면 Grafana Pyroscope에 연속 CPU 프로파일을 보낼 수 있어요. 선택 사항이며 기본적으로 꺼져 있어요.
출처: 문서
본문
빠른 시작 (Quick Start)
- 선택 의존성 설치 (Pyroscope를 활성화할 때만 필요):
uv add pyroscope-io
또는 proxy extra를 설치해요:
uv add "litellm[proxy]"
- 프록시를 시작하기 전에 환경 변수를 설정해요:
| 변수 (Variable) | 필수 (Required) | 설명 (Description) |
|---|---|---|
LITELLM_ENABLE_PYROSCOPE |
예 (활성화하려면) | true로 설정하면 Pyroscope 프로파일링을 활성화해요. |
PYROSCOPE_APP_NAME |
예 (활성화 시) | Pyroscope UI에 표시되는 애플리케이션 이름이에요. |
PYROSCOPE_SERVER_ADDRESS |
예 (활성화 시) | Pyroscope 서버 URL (예: http://localhost:4040). |
PYROSCOPE_SAMPLE_RATE |
아니요 | 샘플링 레이트(정수). 설정하지 않으면 pyroscope-io 라이브러리 기본값을 사용해요. |
PYROSCOPE_GRAFANA_USER |
아니요 | Grafana Cloud Pyroscope 사용자/테넌트 ID. PYROSCOPE_GRAFANA_API_TOKEN이 설정되면 필요해요. |
PYROSCOPE_GRAFANA_API_TOKEN |
아니요 | Grafana Cloud API/access policy 토큰. Pyroscope basic auth 비밀번호로 사용돼요. |
- 프록시를 시작하면 프로파일링이 자동으로 시작돼요.
export LITELLM_ENABLE_PYROSCOPE=true
export PYROSCOPE_APP_NAME=litellm-proxy
export PYROSCOPE_SERVER_ADDRESS=http://localhost:4040
litellm --config config.yaml
Grafana Cloud Pyroscope를 사용한다면 PYROSCOPE_SERVER_ADDRESS로 Profiles 엔드포인트를 사용하고 Grafana Cloud 자격 증명을 설정해요:
export LITELLM_ENABLE_PYROSCOPE=true
export PYROSCOPE_APP_NAME=litellm-proxy
export PYROSCOPE_SERVER_ADDRESS=https://profiles-prod-<region>.grafana.net
export PYROSCOPE_GRAFANA_USER=<grafana-cloud-pyroscope-user>
export PYROSCOPE_GRAFANA_API_TOKEN=<grafana-cloud-api-or-access-policy-token>
litellm --config config.yaml
- Pyroscope(또는 Grafana) UI에서 프로파일을 확인하고
PYROSCOPE_APP_NAME을 선택해요.
참고 사항 (Notes)
- 선택 의존성:
pyroscope-io는 선택 의존성이에요. 설치되어 있지 않은데LITELLM_ENABLE_PYROSCOPE=true면, 프록시는 경고를 로깅하고 프로파일링 없이 계속 실행돼요. - 플랫폼 지원:
pyroscope-io패키지는 네이티브 확장을 사용하며 모든 플랫폼에서 사용할 수는 없어요 (예: Windows는 패키지에서 제외됨). - 기타 설정: 모든 proxy 환경 변수는 Configuration settings 문서를 참고해요.