@vtex/diagnostics-nodejs
Version:
Diagnostics library for Node.js applications
31 lines • 1.5 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AttributeKeys = exports.HeaderKeys = void 0;
const diagnostics_semconv_1 = require("@vtex/diagnostics-semconv");
const semantic_conventions_1 = require("@opentelemetry/semantic-conventions");
exports.HeaderKeys = {
VTEX_IO_CALLER: 'X-VTEX-IO-Caller',
VTEX_APP_SERVICE: 'X-VTEX-App-Service',
VTEX_APP_KEY: 'X-VTEX-App-Key',
VTEX_RETRY_COUNT: 'X-VTEX-Retry-Count',
FORWARDED_FOR: 'X-Forwarded-For'
};
/**
* Attribute keys following OpenTelemetry semantic conventions.
* References: https://opentelemetry.io/docs/specs/semconv/
*/
exports.AttributeKeys = {
// HTTP semantic conventions: https://opentelemetry.io/docs/specs/semconv/http/
HTTP_METHOD: semantic_conventions_1.ATTR_HTTP_REQUEST_METHOD,
HTTP_URL: semantic_conventions_1.ATTR_URL_FULL,
HTTP_ROUTE: semantic_conventions_1.ATTR_HTTP_ROUTE,
HTTP_HOST: "host.name", // TODO: Import from community semconv when available
HTTP_USER_AGENT: semantic_conventions_1.ATTR_USER_AGENT_ORIGINAL,
HTTP_STATUS_CODE: semantic_conventions_1.ATTR_HTTP_RESPONSE_STATUS_CODE,
HTTP_CLIENT_IP: semantic_conventions_1.ATTR_CLIENT_ADDRESS,
ERROR: 'error', // TODO: Check if community has this constant
ERROR_TYPE: semantic_conventions_1.ATTR_ERROR_TYPE,
// VTEX-specific attributes (custom namespace)
VTEX_ACCOUNT_NAME: diagnostics_semconv_1.ATTR_VTEX_ACCOUNT_NAME,
};
//# sourceMappingURL=constants.js.map