UNPKG

nestjs-auditlog

Version:

A powerful package for auditlog using opentelemetry in NestJS applications

38 lines 2.97 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TraceExporter = void 0; const resources_1 = require("@opentelemetry/resources"); const semantic_conventions_1 = require("@opentelemetry/semantic-conventions"); const { getNodeAutoInstrumentations, } = require('@opentelemetry/auto-instrumentations-node'); const opentelemetry = require('@opentelemetry/sdk-node'); /** * The abstract class of Trace exporter */ class TraceExporter { constructor(serviceName, serviceNamespace, exporter, serviceEnvironmentName) { this.serviceName = serviceName; this.serviceNamespace = serviceNamespace; this.exporter = exporter; this.serviceEnvironmentName = serviceEnvironmentName; } async setup() { const resource = new resources_1.Resource({ [semantic_conventions_1.SEMRESATTRS_SERVICE_NAME]: this.serviceName, [semantic_conventions_1.SEMRESATTRS_SERVICE_NAMESPACE]: this.serviceNamespace, [semantic_conventions_1.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT]: this.serviceEnvironmentName, }); this.sdk = new opentelemetry.NodeSDK({ traceExporter: this.exporter, instrumentations: [getNodeAutoInstrumentations()], resource, }); // initialize the SDK and register with the OpenTelemetry API // this enables the API to record telemetry this.sdk.start(); } async shutdown() { await this.sdk.shutdown(); } } exports.TraceExporter = TraceExporter; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2UuZXhwb3J0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL21vZHVsZXMvdHJhY2UvZXhwb3J0ZXJzL3RyYWNlLmV4cG9ydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHdEQUFvRDtBQUNwRCw4RUFJNkM7QUFFN0MsTUFBTSxFQUNKLDJCQUEyQixHQUM1QixHQUFHLE9BQU8sQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDO0FBQ3pELE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0FBRXpEOztHQUVHO0FBQ0gsTUFBYSxhQUFhO0lBR3hCLFlBQ1UsV0FBbUIsRUFDbkIsZ0JBQXdCLEVBQ3hCLFFBQW9DLEVBQ3BDLHNCQUErQjtRQUgvQixnQkFBVyxHQUFYLFdBQVcsQ0FBUTtRQUNuQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQVE7UUFDeEIsYUFBUSxHQUFSLFFBQVEsQ0FBNEI7UUFDcEMsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUFTO0lBQ3RDLENBQUM7SUFFSixLQUFLLENBQUMsS0FBSztRQUNULE1BQU0sUUFBUSxHQUFHLElBQUksb0JBQVEsQ0FBQztZQUM1QixDQUFDLCtDQUF3QixDQUFDLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDNUMsQ0FBQyxvREFBNkIsQ0FBQyxFQUFFLElBQUksQ0FBQyxnQkFBZ0I7WUFDdEQsQ0FBQyx5REFBa0MsQ0FBQyxFQUFFLElBQUksQ0FBQyxzQkFBc0I7U0FDbEUsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLGFBQWEsQ0FBQyxPQUFPLENBQUM7WUFDbkMsYUFBYSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQzVCLGdCQUFnQixFQUFFLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztZQUNqRCxRQUFRO1NBQ1QsQ0FBQyxDQUFDO1FBRUgsNkRBQTZEO1FBQzdELDJDQUEyQztRQUMzQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxLQUFLLENBQUMsUUFBUTtRQUNaLE1BQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1QixDQUFDO0NBQ0Y7QUEvQkQsc0NBK0JDIn0=