Amazon SageMaker AI 엔드포인트에서 누락된 Amazon CloudWatch 지표 문제를 해결하고 싶습니다.
해결 방법
참고: AWS Command Line Interface(AWS CLI) 명령을 실행할 때 오류가 발생하면 AWS CLI의 오류 해결을 참조하십시오. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하십시오.
CloudWatch 지표 네임스페이스 및 차원 확인
올바른 CloudWatch 네임스페이스를 확인하고 있는지 살펴보십시오.
- AWS/SageMaker 네임스페이스에는 InvokeEndpoint에 대한 API 호출의 모델 로딩 지표가 포함됩니다.
- aws/sagemaker/Endpoints 네임스페이스에는 InvokeEndpoint에 대한 API 호출의 인스턴스 지표가 포함됩니다.
- aws/sagemaker/InferenceComponents 네임스페이스에는 추론 구성 요소를 호스팅하는 엔드포인트에 대해 InvokeEndpoint에 대한 API 호출의 지표가 포함됩니다.
자세한 내용은 Amazon CloudWatch로 Amazon SageMaker AI를 모니터링하기 위한 지표를 참조하십시오.
또한 SageMaker AI 엔드포인트 지표의 차원은 EndpointName 및 VariantName입니다.
IAM 권한 확인
CloudWatch에 지표를 게시하고 로그 그룹을 관리하려면 엔드포인트와 연결된 AWS Identity and Access Management(IAM) 역할에 필요한 IAM 권한이 있어야 합니다.
권한 예시:
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": [
"cloudwatch:PutMetricData",
"cloudwatch:ListMetrics",
"cloudwatch:GetMetricData",
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents"
],
"Resource": "*"
}]
}
엔드포인트를 생성하거나 업데이트한 후 20분 뒤에 CloudWatch 지표 확인
엔드포인트를 생성하거나 업데이트한 후 CloudWatch 지표를 사용할 수 있으려면 최대 20분이 걸릴 수 있습니다. 지표를 확인하기 전에 최소 20분 동안 기다리십시오.
SageMaker AI CloudWatch 로그 확인
SageMaker AI 로그를 확인하여 지표가 CloudWatch에 게시되지 않게 할 수 있는 문제를 식별합니다. SageMaker 로그에 액세스하려면 CloudWatch 콘솔을 사용하십시오. 또는 다음 get-log-events 명령을 실행합니다.
aws logs get-log-events --log-group-name example-sagemaker-log-group-name
참고: example-sagemaker-log-group-name을 SageMaker AI 로그 그룹의 이름으로 바꾸십시오.
지표 보존 기간 확인
CloudWatch는 지표 데이터를 15개월 동안 보관합니다.
SageMaker AI 엔드포인트에 대한 과거 CloudWatch 지표를 보려면 다음 단계를 완료하십시오.
- CloudWatch 콘솔을 엽니다.
- 탐색 창에서 지표를 선택한 다음, 모든 지표를 선택합니다.
- 보려는 지표를 선택합니다.
- 지정된 기간 동안 지표에 대한 과거 데이터를 표시하는 그래프를 보려면 시간 범위를 설정합니다.
자세한 내용은 CloudWatch를 사용한 로깅을 참조하십시오.
엔드포인트 호출 활동 확인
CloudWatch는 엔드포인트의 트래픽이 일정할 때 지표를 생성합니다. SageMaker AI 엔드포인트에 트래픽 또는 호출 활동이 있는지 확인하십시오.
엔드포인트 호출 기록을 확인하려면 다음 단계를 완료하십시오.
- SageMaker AI 콘솔을 엽니다.
- 탐색 창에서 추론을 선택한 다음, 엔드포인트를 선택합니다.
- 해당 엔드포인트를 선택합니다.
- Monitor(모니터) 탭을 선택한 다음, View invocation history(호출 기록 보기)를 선택합니다.
또는 다음 sagemaker-runtime 명령을 실행하여 엔드포인트 호출 기록을 검색합니다.
aws sagemaker-runtime get-invocation-history --endpoint-name example-endpoint-name [--max-results example-number] [--starting-time example-timestamp]
참고: example-endpoint-name을 엔드포인트 이름으로, example-number를 확인하려는 최대 결과 수로, example-timestamp를 시작 시간으로 바꾸십시오.