InvokeAgentScope class

AI 에이전트 호출 작업에 대한 OpenTelemetry 추적 범위를 제공합니다.

Extends

메서드

recordInputMessages(InputMessagesParam)

원격 분석 추적을 위한 입력 메시지를 기록합니다. 단일 문자열, 문자열 배열(역할을 user사용하여 OTEL ChatMessage로 자동 래핑) 또는 버전이 지정된 InputMessages 래퍼를 허용합니다.

recordOutputMessages(OutputMessagesParam)

원격 분석 추적에 대한 출력 메시지를 기록합니다. 단일 문자열, 문자열 배열(역할이 assistant있는 OTEL OutputMessage로 자동 래핑) 또는 버전이 지정된 OutputMessages 래퍼를 허용합니다.

recordResponse(string)

원격 분석 추적에 대한 응답 정보를 기록합니다.

start(Request, InvokeAgentScopeDetails, AgentDetails, CallerDetails, SpanDetails)

에이전트 호출 추적에 대한 새 범위를 만들고 시작합니다.

상속된 메서드

dispose()

호환성을 위한 레거시 삭제 방법

getSpanContext()

이 범위에 대한 범위 컨텍스트를 가져옵니다. 비동기 경계를 넘어 명시적 부모-자식 연결을 위한 ParentSpanRef를 만드는 데 사용할 수 있습니다.

recordAttributes(undefined | null | Iterable<[string, AttributeValue]> | Record<string, AttributeValue>)

원격 분석 추적을 위해 여러 특성 키/값 쌍을 기록합니다.

recordCancellation(string)

범위에 취소 이벤트를 기록합니다. 취소 이유로 범위 상태를 ERROR로 설정하고 오류 유형을 'TaskCanceledException'으로 표시합니다.

recordError(Error)

작업 중에 발생한 오류를 기록합니다.

setEndTime(TimeInput)

범위에 대한 사용자 지정 종료 시간을 설정합니다. 설정되면 dispose 는 현재 벽시계 시간을 사용하는 대신 이 값을 span.end() 전달합니다. 이는 범위가 삭제되기 전에 작업의 실제 종료 시간을 알 수 있는 경우에 유용합니다.

withActiveSpanAsync<T>(() => Promise<T>)

비동기 콜백 실행 기간 동안 이 범위를 활성화합니다.

메서드 세부 정보

recordInputMessages(InputMessagesParam)

원격 분석 추적을 위한 입력 메시지를 기록합니다. 단일 문자열, 문자열 배열(역할을 user사용하여 OTEL ChatMessage로 자동 래핑) 또는 버전이 지정된 InputMessages 래퍼를 허용합니다.

function recordInputMessages(messages: InputMessagesParam)

매개 변수

messages
InputMessagesParam

문자열, 문자열 배열 또는 InputMessages 래퍼

recordOutputMessages(OutputMessagesParam)

원격 분석 추적에 대한 출력 메시지를 기록합니다. 단일 문자열, 문자열 배열(역할이 assistant있는 OTEL OutputMessage로 자동 래핑) 또는 버전이 지정된 OutputMessages 래퍼를 허용합니다.

function recordOutputMessages(messages: OutputMessagesParam)

매개 변수

messages
OutputMessagesParam

문자열, 문자열 배열 또는 OutputMessages 래퍼

recordResponse(string)

원격 분석 추적에 대한 응답 정보를 기록합니다.

function recordResponse(response: string)

매개 변수

response

string

호출 응답

start(Request, InvokeAgentScopeDetails, AgentDetails, CallerDetails, SpanDetails)

에이전트 호출 추적에 대한 새 범위를 만들고 시작합니다.

static function start(request: Request, invokeScopeDetails: InvokeAgentScopeDetails, agentDetails: AgentDetails, callerDetails?: CallerDetails, spanDetails?: SpanDetails): InvokeAgentScope

매개 변수

request
Request

요청 페이로드(채널, conversationId, 콘텐츠, sessionId).

invokeScopeDetails
InvokeAgentScopeDetails

범위 수준 세부 정보

agentDetails
AgentDetails

에이전트 ID입니다. 테넌트 ID는 (필수)에서 agentDetails.tenantId 파생됩니다.

callerDetails
CallerDetails

선택적 호출자 정보입니다. 다음 세 가지 시나리오를 지원합니다.

  • 사용자 호출자만 해당: { userDetails: { userId, userName, ... } }
  • 에이전트 호출자만 해당: { callerAgentDetails: { agentId, agentName, ... } }
  • 둘 다(체인에 사람이 있는 A2A): { userDetails: { ... }, callerAgentDetails: { ... } }
spanDetails
SpanDetails

선택적 범위 구성(parentContext, startTime, endTime, spanKind, spanLinks).

반품

새 InvokeAgentScope 인스턴스입니다.

상속된 메서드 세부 정보

dispose()

호환성을 위한 레거시 삭제 방법

function dispose()

OpenTelemetryScope.dispose에서 상속됨

getSpanContext()

이 범위에 대한 범위 컨텍스트를 가져옵니다. 비동기 경계를 넘어 명시적 부모-자식 연결을 위한 ParentSpanRef를 만드는 데 사용할 수 있습니다.

function getSpanContext(): SpanContext

반품

SpanContext

traceId 및 spanId를 포함하는 SpanContext

OpenTelemetryScope.getSpanContext에서 상속됨

recordAttributes(undefined | null | Iterable<[string, AttributeValue]> | Record<string, AttributeValue>)

원격 분석 추적을 위해 여러 특성 키/값 쌍을 기록합니다.

function recordAttributes(attributes: undefined | null | Iterable<[string, AttributeValue]> | Record<string, AttributeValue>)

매개 변수

attributes

undefined | null | Iterable<[string, AttributeValue]> | Record<string, AttributeValue>

특성 키/값 쌍(배열 또는 [키, 값] 또는 개체 맵의 반복 가능)의 컬렉션입니다.

OpenTelemetryScope.recordAttributes에서 상속

recordCancellation(string)

범위에 취소 이벤트를 기록합니다. 취소 이유로 범위 상태를 ERROR로 설정하고 오류 유형을 'TaskCanceledException'으로 표시합니다.

function recordCancellation(reason?: string)

매개 변수

reason

string

선택적 취소 이유입니다. 기본값은 '작업이 취소되었습니다.'입니다.

OpenTelemetryScope.recordCancellation에서 상속됨

recordError(Error)

작업 중에 발생한 오류를 기록합니다.

function recordError(error: Error)

매개 변수

error

Error

발생한 오류

OpenTelemetryScope.recordError에서 상속됨

setEndTime(TimeInput)

범위에 대한 사용자 지정 종료 시간을 설정합니다. 설정되면 dispose 는 현재 벽시계 시간을 사용하는 대신 이 값을 span.end() 전달합니다. 이는 범위가 삭제되기 전에 작업의 실제 종료 시간을 알 수 있는 경우에 유용합니다.

function setEndTime(endTime: TimeInput)

매개 변수

endTime

TimeInput

epoch, Date 또는 HrTime 튜플 이후의 종료 시간(밀리초)입니다.

OpenTelemetryScope.setEndTime에서 상속됨

withActiveSpanAsync<T>(() => Promise<T>)

비동기 콜백 실행 기간 동안 이 범위를 활성화합니다.

function withActiveSpanAsync<T>(callback: () => Promise<T>): Promise<T>

매개 변수

callback

() => Promise<T>

반품

Promise<T>

OpenTelemetryScope.withActiveSpanAsync에서 상속됨