@multiplayer-app/otlp-core
Version:
Multiplayer otlp core
29 lines • 1.25 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MultiplayerJsonTraceSerializer = void 0;
const otlp_transformer_1 = require("@opentelemetry/otlp-transformer");
const constants_base_1 = require("./constants.base");
exports.MultiplayerJsonTraceSerializer = {
serializeRequest: (arg) => {
const filteredArg = arg.filter(span => {
const traceId = span.spanContext().traceId;
if (traceId.startsWith(constants_base_1.MULTIPLAYER_TRACE_DEBUG_PREFIX)
|| traceId.startsWith(constants_base_1.MULTIPLAYER_TRACE_DOC_PREFIX)
|| traceId.startsWith(constants_base_1.MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX)) {
return true;
}
return false;
});
const request = (0, otlp_transformer_1.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