View a markdown version of this page

스팬, 이벤트 레코드 및 원격 측정 신호 - Amazon Bedrock AgentCore

스팬, 이벤트 레코드 및 원격 측정 신호

Amazon Bedrock AgentCore Evaluations는 에이전트의 동작을 이해하기 위해 두 개의 원격 측정 신호를 처리합니다.

  • 스팬은 개별 작업을 설명합니다. 스팬에는 이름, 범위, 타임스탬프 및 속성과 같은 작업에 대한 메타데이터가 포함됩니다. 스팬에는 대화 콘텐츠가 포함되거나 해당 콘텐츠가 별도의 이벤트 레코드에 있을 수도 있습니다.

  • 이벤트 레코드는 모델, 도구 및 에이전트의 입력 및 출력과 같은 body 필드에 페이로드 콘텐츠를 전달합니다. 이벤트 레코드는 공유 traceId 및에 의해 해당 범위와 상관관계가 있습니다spanId. 이벤트 레코드는 OpenTelemetry 이벤트 규칙을 따릅니다. 자세한 내용은 참조를 참조하세요.

세션을 평가하려면 서비스에 범위와 해당하는 경우 상관관계가 있는 이벤트 레코드가 모두 필요합니다. 각 스팬에 대해 서비스는 다음을 수행합니다.

  1. 프레임워크별 속성에서 스팬의 유형을 식별합니다. 자세한 내용은 프레임별 페이지를 참조하세요.

  2. 사용자 프롬프트, 에이전트 응답, 도구 입력 및 출력 등 필요한 값을 읽습니다. 이러한 값은 스팬의 속성 또는 상관관계가 있는 이벤트 레코드에서 가져옵니다.

주제

ADOT가 원격 측정을 분할하는 방법

에이전트가 AWS Distro for OpenTelemetry(ADOT)를 사용하여 실행되면 원격 측정이 분할됩니다. 스팬을 내보낼 때 ADOT는 스팬 속성에서 큰 대화 콘텐츠(모델 프롬프트 및 완료, 도구 입력 및 출력)를 추출하여 별도의 이벤트 레코드로 내보냅니다. 결과 스팬에는 메타데이터와 작은 속성만 포함됩니다.

이 분할은 이벤트 레코드에 전체 대화 콘텐츠를 보존하지만 스팬 문서를 작게 유지합니다.

ADOT collection (split) Instrumented agent | | span with attributes + content v +--------------------+ | ADOT | extracts conversation content +--------------------+ | | | span | event record(s) | (metadata, attributes) | (body: input / output messages) v v +--------------------+ +-----------------------+ | aws/spans | | event-record | | log group | | log group | +--------------------+ +-----------------------+ | | +-----------+--------------+ v Evaluation service (joins span + event record by traceId / spanId)

분할 후 대화 콘텐츠는 이벤트 레코드body(예: body.input.messagesbody.output.messages)에 존재하며 스팬에는 이를 분류하는 데 사용되는 식별 속성이 포함됩니다.

스팬 및 이벤트 레코드가 저장되는 위치

ADOT는 원격 측정을 수집할 때 스팬 및 이벤트 레코드를 Amazon CloudWatch로 내보내지만 다른 위치로 내보냅니다.

  • 스팬aws/spans 로그 그룹에 저장됩니다. 이 로그 그룹은 평가의 사전 조건인 트랜잭션 검색이 활성화될 때 생성됩니다. 트랜잭션 검색 활성화에 대한 자세한 내용은 AgentCore 관찰성을 참조하세요.

  • 이벤트 레코드는 에이전트가 호스팅되는 위치에 따라 달라지는 로그 그룹에 저장됩니다.

    • Amazon Bedrock AgentCore 런타임의 경우: 런타임은 로그 스트림의 otel-rt-logs 로그 그룹 /aws/bedrock-agentcore/runtimes/<agent_id>-<endpoint_name>에 이벤트 레코드를 내보내고이 내보내기를 구성합니다.

    • AgentCore 런타임 외부에서 호스팅됨(예: Amazon Elastic Container Service(Amazon ECS), Amazon Elastic Kubernetes Service(Amazon EKS) 또는 AWS Lambda): 에이전트는 OTEL_EXPORTER_OTLP_LOGS_HEADERS 환경 변수를 통해 구성한 로그 그룹에 이벤트 레코드를 내보냅니다.

세션을 평가하기 위해 서비스는에서 범위를 읽고 적절한 로그 그룹의 상관관계가 있는 이벤트 레코드와 aws/spans 조인합니다.

서비스가 콘텐츠를 읽는 위치

대화 콘텐츠는 프레임워크 및 계측 라이브러리에 따라 서로 다른 위치에 있을 수 있습니다. 평가 서비스는 어떤 위치에서든 읽습니다.

  • 이벤트 레코드 본문: ADOT가 콘텐츠를 별도의 이벤트 레코드(위에 설명됨)로 분할하면 서비스는 범위와 body 상관관계가 있는 이벤트 레코드에서 콘텐츠를 읽습니다.

  • 스팬 속성: 일부 계측 라이브러리는 스팬의 콘텐츠를 속성으로 유지합니다.

  • 인라인 스팬 이벤트: 일부 계측 라이브러리는 콘텐츠를 스팬에 인라인 이벤트로 연결합니다.

스팬을 분류하는 데 사용되는 식별 속성은 모든 경우에 항상 스팬에 남아 있습니다. 여기에는 스팬을 호출 에이전트 스팬 또는 실행 도구 스팬으로 표시하는 속성이 포함됩니다. 더 큰 대화 콘텐츠의 위치만 다릅니다. 프레임별 페이지에는 각 계측 라이브러리의 식별 속성과 콘텐츠 위치가 모두 나열됩니다.

참조

이러한 OpenTelemetry 사양은 AgentCore 평가의 기반이 되는 규칙을 설명합니다.