@multiplayer-app/session-recorder-common
Version:
Multiplayer Fullstack Session Recorder - opentelemetry
164 lines • 6.27 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.setGrpcResponseMessage = exports.setGrpcRequestMessage = exports.setRpcResponseMessage = exports.setRpcRequestMessage = exports.setMessageBody = exports.setHttpResponseHeaders = exports.setHttpResponseBody = exports.setHttpRequestHeaders = exports.setHttpRequestBody = exports.setAttribute = void 0;
const api_1 = require("@opentelemetry/api");
const constants_base_1 = require("../constants/constants.base");
const mask_1 = require("./mask");
/**
* @description Set attribute to current span
* @param {string} key
* @param {AttributeValue} value
* @returns {void}
*/
const setAttribute = (key, value) => {
const span = api_1.trace.getSpan(api_1.context.active());
if (!span)
return;
span.setAttribute(key, value);
};
exports.setAttribute = setAttribute;
/**
* @description Set request body to current span attributes
* @param body
* @param {{ mask: boolean }} options
* @returns {void}
*/
const setHttpRequestBody = (body, options = { mask: true }) => {
const span = api_1.trace.getSpan(api_1.context.active());
if (!span)
return;
if (options === null || options === void 0 ? void 0 : options.mask) {
body = (0, mask_1.default)(mask_1.sensitiveFields)(body, span);
}
span.setAttribute(constants_base_1.ATTR_MULTIPLAYER_HTTP_REQUEST_BODY, body);
};
exports.setHttpRequestBody = setHttpRequestBody;
/**
* @description Set request headers to current span attributes
* @param body
* @param {{ mask: boolean }} options
* @returns {void}
*/
const setHttpRequestHeaders = (body, options = { mask: true }) => {
const span = api_1.trace.getSpan(api_1.context.active());
if (!span)
return;
if (options === null || options === void 0 ? void 0 : options.mask) {
body = (0, mask_1.default)(mask_1.sensitiveHeaders)(body, span);
}
span.setAttribute(constants_base_1.ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS, body);
};
exports.setHttpRequestHeaders = setHttpRequestHeaders;
/**
* @description Set response body to current span attributes
* @param body
* @param {{ mask: boolean }} options
* @returns {void}
*/
const setHttpResponseBody = (body, options = { mask: true }) => {
const span = api_1.trace.getSpan(api_1.context.active());
if (!span)
return;
if (options === null || options === void 0 ? void 0 : options.mask) {
body = (0, mask_1.default)(mask_1.sensitiveFields)(body, span);
}
span.setAttribute(constants_base_1.ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY, body);
};
exports.setHttpResponseBody = setHttpResponseBody;
/**
* @description Set response body to current span attributes
* @param body
* @param {{ mask: boolean }} options
* @returns {void}
*/
const setHttpResponseHeaders = (body, options = { mask: true }) => {
const span = api_1.trace.getSpan(api_1.context.active());
if (!span)
return;
if (options === null || options === void 0 ? void 0 : options.mask) {
body = (0, mask_1.default)(mask_1.sensitiveFields)(body, span);
}
span.setAttribute(constants_base_1.ATTR_MULTIPLAYER_HTTP_RESPONSE_HEADERS, body);
};
exports.setHttpResponseHeaders = setHttpResponseHeaders;
/**
* @description Set message body to current span attributes
* @param body
* @param {{ mask: boolean }} options
* @returns {void}
*/
const setMessageBody = (body, options = { mask: true }) => {
const span = api_1.trace.getSpan(api_1.context.active());
if (!span)
return;
if (options === null || options === void 0 ? void 0 : options.mask) {
body = (0, mask_1.default)(mask_1.sensitiveFields)(body, span);
}
span.setAttribute(constants_base_1.ATTR_MULTIPLAYER_MESSAGING_MESSAGE_BODY, body);
};
exports.setMessageBody = setMessageBody;
/**
* @description Set rpc request message to current span attributes
* @param body
* @param {{ mask: boolean }} options
* @returns {void}
*/
const setRpcRequestMessage = (body, options = { mask: true }) => {
const span = api_1.trace.getSpan(api_1.context.active());
if (!span)
return;
if (options === null || options === void 0 ? void 0 : options.mask) {
body = (0, mask_1.default)(mask_1.sensitiveFields)(body, span);
}
span.setAttribute(constants_base_1.ATTR_MULTIPLAYER_RPC_REQUEST_MESSAGE, body);
};
exports.setRpcRequestMessage = setRpcRequestMessage;
/**
* @description Set rpc response message to current span attributes
* @param body
* @param {{ mask: boolean }} options
* @returns {void}
*/
const setRpcResponseMessage = (body, options = { mask: true }) => {
const span = api_1.trace.getSpan(api_1.context.active());
if (!span)
return;
if (options === null || options === void 0 ? void 0 : options.mask) {
body = (0, mask_1.default)(mask_1.sensitiveFields)(body, span);
}
span.setAttribute(constants_base_1.ATTR_MULTIPLAYER_RPC_RESPONSE_MESSAGE, body);
};
exports.setRpcResponseMessage = setRpcResponseMessage;
/**
* @description Set grpc request message to current span attributes
* @param body
* @param {{ mask: boolean }} options
* @returns {void}
*/
const setGrpcRequestMessage = (body, options = { mask: true }) => {
const span = api_1.trace.getSpan(api_1.context.active());
if (!span)
return;
if (options === null || options === void 0 ? void 0 : options.mask) {
body = (0, mask_1.default)(mask_1.sensitiveFields)(body, span);
}
span.setAttribute(constants_base_1.ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE, body);
};
exports.setGrpcRequestMessage = setGrpcRequestMessage;
/**
* @description Set grpc response message to current span attributes
* @param body
* @param {{ mask: boolean }} options
* @returns {void}
*/
const setGrpcResponseMessage = (body, options = { mask: true }) => {
const span = api_1.trace.getSpan(api_1.context.active());
if (!span)
return;
if (options === null || options === void 0 ? void 0 : options.mask) {
body = (0, mask_1.default)(mask_1.sensitiveFields)(body, span);
}
span.setAttribute(constants_base_1.ATTR_MULTIPLAYER_GRPC_RESPONSE_MESSAGE, body);
};
exports.setGrpcResponseMessage = setGrpcResponseMessage;
//# sourceMappingURL=set-attribute.js.map
;