UNPKG

appdynamics

Version:

Performance Profiler and Monitor

44 lines (37 loc) 1.04 kB
"use strict"; const core_1 = require("@opentelemetry/core"); class AppdynamicsSpanExporter { constructor(logger) { this.logger = logger; } export(spans, resultCallback) { return this._sendSpans(spans, resultCallback); } shutdown() { this._sendSpans([]); return Promise.resolve(); } _exportInfo(span) { return { traceId: span.spanContext().traceId, parentId: span.parentSpanId, name: span.name, id: span.spanContext().spanId, kind: span.kind, timestamp: core_1.hrTimeToMicroseconds(span.startTime), duration: core_1.hrTimeToMicroseconds(span.duration), attributes: span.attributes, status: span.status, events: span.events, }; } _sendSpans(spans, done) { for (const span of spans) { this.logger.trace("Exporting span : " + JSON.stringify(this._exportInfo(span))); } if (done) { return done({ code: core_1.ExportResultCode.SUCCESS }); } } } module.exports.AppdynamicsSpanExporter = AppdynamicsSpanExporter;