OutputScope class

Provides OpenTelemetry tracing scope for output message tracing.

Extends

Methods

recordOutputMessages(ResponseMessagesParam)

Records the output messages for telemetry tracking. Overwrites any previously recorded output messages.

start(Request, OutputResponse, AgentDetails, UserDetails, SpanDetails)

Creates and starts a new scope for output message tracing.

Inherited Methods

dispose()

Legacy dispose method for compatibility.

getSpanContext()

Gets the span context for this scope.

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

Records multiple attribute key/value pairs.

recordCancellation(string)

Records a cancellation event on the span.

recordError(Error)

Records an error that occurred during the operation.

setEndTime(TimeInput)

Sets a custom end time for the scope. When set, dispose() will pass this value to span.end() instead of using wall-clock time.

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

Makes this span active for the duration of the async callback execution.

Method Details

recordOutputMessages(ResponseMessagesParam)

Records the output messages for telemetry tracking. Overwrites any previously recorded output messages.

function recordOutputMessages(messages: ResponseMessagesParam)

Parameters

start(Request, OutputResponse, AgentDetails, UserDetails, SpanDetails)

Creates and starts a new scope for output message tracing.

static function start(request: Request, response: OutputResponse, agentDetails: AgentDetails, userDetails?: UserDetails, spanDetails?: SpanDetails): OutputScope

Parameters

request
A365Request

Request payload (channel, conversationId, content, sessionId).

response
OutputResponse

The response containing initial output messages.

agentDetails
AgentDetails

The agent producing the output. tenantId is required.

userDetails
UserDetails

Optional human caller identity details.

spanDetails
A365SpanDetails

Optional span configuration.

Returns

Inherited Method Details

dispose()

Legacy dispose method for compatibility.

function dispose()

Inherited From OpenTelemetryScope.dispose

getSpanContext()

Gets the span context for this scope.

function getSpanContext(): SpanContext

Returns

SpanContext

Inherited From OpenTelemetryScope.getSpanContext

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

Records multiple attribute key/value pairs.

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

Parameters

attributes

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

Inherited From OpenTelemetryScope.recordAttributes

recordCancellation(string)

Records a cancellation event on the span.

function recordCancellation(reason?: string)

Parameters

reason

string

Inherited From OpenTelemetryScope.recordCancellation

recordError(Error)

Records an error that occurred during the operation.

function recordError(error: Error)

Parameters

error

Error

Inherited From OpenTelemetryScope.recordError

setEndTime(TimeInput)

Sets a custom end time for the scope. When set, dispose() will pass this value to span.end() instead of using wall-clock time.

function setEndTime(endTime: TimeInput)

Parameters

endTime

TimeInput

Inherited From OpenTelemetryScope.setEndTime

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

Makes this span active for the duration of the async callback execution.

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

Parameters

callback

() => Promise<T>

Returns

Promise<T>

Inherited From OpenTelemetryScope.withActiveSpanAsync