GitHub Copilot용 OpenTelemetry 설정
GitHub Copilot은 토큰 사용량, 요청, 도구 직접 호출 및 지연 시간에 대한 OpenTelemetry(OTel) 지표를 내보냅니다. Amazon CloudWatch로 이러한 지표를 전송하면 Coding Agent Insights 대시보드의 GitHub Copilot 탭에 해당 지표가 표시됩니다. 대시보드에 대한 자세한 내용은 Coding Agent Insights 섹션을 참조하세요.
Copilot은 CloudWatch 네이티브 OTLP 지표 엔드포인트로 직접 OTLP 지표를 전송하고 Bearer 토큰(CloudWatch Metrics API 키)으로 인증합니다. OpenTelemetry 수집기는 불필요합니다. 현재 Copilot에 대해 지원되는 경로는 Bearer 토큰입니다.
참고
이 가이드에서는 CloudWatch로 Copilot의 OTel 지표를 내보내는 방법만 다루며, 이는 Copilot이 추론을 위해 모델을 직접적으로 호출하는 방식과는 별개입니다. Copilot은 기본적으로 자체 모델을 사용하지만, 기업은 Amazon Bedrock을 포함한 기존 모델 제공업체 키를 사용할 수 있습니다. 자세한 내용은 GitHub Copilot 설명서의 Use your own API keys
중요
Bearer 토큰은 장기 자격 증명입니다. AWS 외부에 있는 개발자 노트북과 같이 단기 AWS 자격 증명을 사용할 수 없는 경우에만 Bearer 토큰 사용을 권장합니다. 보안 장단점 및 키 교체 지침은 Metrics에 대한 전달자 토큰 인증 설정 섹션을 참조하세요.
사전 조건
-
OpenTelemetry 지표 내보내기를 지원하는 버전의 GitHub Copilot이 설치되어 있어야 합니다.
-
모델 추론을 위한 활성 GitHub Copilot 구독이 필요합니다. Copilot은 기본적으로 자체 모델을 사용하지만, 대신 Amazon Bedrock을 사용하려면 GitHub Copilot 설명서의 Use your own API keys
에 설명된 대로 사용자 지정 모델 키를 구성해야 합니다. -
CloudWatch Metrics 권한이 있는 IAM 사용자로부터 생성된 CloudWatch Metrics API 키(Bearer 토큰)가 필요합니다. IAM 사용자를 생성하고 키를 생성하는 절차는 Metrics에 대한 전달자 토큰 인증 설정을 참조하세요.
지표 익스포터 구성
Authorization 헤더에 Bearer 토큰을 포함하여 CloudWatch Metrics 엔드포인트로 지표를 전송하도록 Copilot의 OpenTelemetry 익스포터를 구성합니다. Copilot을 시작하는 환경에서 다음 환경 변수를 설정합니다. OpenTelemetry를 활성화하려면 COPILOT_OTEL_ENABLED=true로 설정합니다. Copilot은 모든 신호에 표준 OpenTelemetry 변수를 사용하며 지표별 재정의는 지원하지 않습니다. OTEL_EXPORTER_OTLP_ENDPOINT는 /v1/metrics 경로를 제외한 기본 엔드포인트로 설정합니다. 익스포터가 신호 경로를 추가합니다.
export COPILOT_OTEL_ENABLED=true export OTEL_EXPORTER_OTLP_ENDPOINT="https://monitoring.region.amazonaws.com" export OTEL_EXPORTER_OTLP_HEADERS="Authorization=BearerYOUR_API_KEY"
참고
Bearer 토큰을 시크릿으로 취급하세요. 소스 제어 또는 공유 쉘 프로필에 Bearer 토큰을 커밋하지 말고, Metrics에 대한 전달자 토큰 인증 설정에 설명된 대로 주기적으로 키를 교체하세요.
ID 및 조직 속성 추가
Coding Agent Insights 대시보드는 개발자, 팀, 부서 및 기타 조직 차원별로 사용량을 그룹화합니다. OTEL_RESOURCE_ATTRIBUTES 환경 변수를 통해 이를 OTel 리소스 속성으로 제공합니다. 개발자의 ID와 조직의 구조에서 값을 설정합니다.
export OTEL_RESOURCE_ATTRIBUTES="\ user.id=alias,\ user.email=developer@example.com,\ user.name=Jane Doe,\ department=engineering,\ team.id=platform,\ cost_center=cc-1234,\ organization=example-corp,\ location=us-seattle,\ role=software-engineer,\ manager=manager@example.com"
확인 및 보기
Copilot을 사용하여 지표를 생성하고 데이터가 CloudWatch에 도달했는지 확인합니다.
지표를 확인하려면
-
Copilot을 사용하여 원격 분석을 생성하는 일부 작업을 수행합니다.
-
CloudWatch 콘솔에서 GenAI Observability, Coding Agent Insights, GitHub Copilot 탭을 차례로 선택합니다. 지표는 대개 몇 분 안에 표시됩니다.
-
필요에 따라 PromQL을 사용하여 지표를 직접 쿼리합니다. 자세한 내용은 PromQL 쿼리 섹션을 참조하세요.