UNPKG

@multiplayer-app/otlp-core

Version:

Multiplayer otlp core

26 lines 1.15 kB
import { createExportTraceServiceRequest, } from '@opentelemetry/otlp-transformer'; import { MULTIPLAYER_TRACE_DEBUG_PREFIX, MULTIPLAYER_TRACE_DOC_PREFIX, MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX, } from './constants.base'; export const MultiplayerJsonTraceSerializer = { serializeRequest: (arg) => { const filteredArg = arg.filter(span => { const traceId = span.spanContext().traceId; if (traceId.startsWith(MULTIPLAYER_TRACE_DEBUG_PREFIX) || traceId.startsWith(MULTIPLAYER_TRACE_DOC_PREFIX) || traceId.startsWith(MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX)) { return true; } return false; }); const request = createExportTraceServiceRequest(filteredArg, { useHex: true, useLongBits: false, }); const encoder = new TextEncoder(); return encoder.encode(JSON.stringify(request)); }, deserializeResponse: (arg) => { const decoder = new TextDecoder(); return JSON.parse(decoder.decode(arg)); }, }; //# sourceMappingURL=MultiplayerJsonTraceSerializer.js.map