UNPKG

electron-log-transport-datadog

Version:
54 lines (52 loc) 1.54 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }// src/index.ts var _datadogtransportcommon = require('datadog-transport-common'); function dataDogTransport(options) { options.service = _nullishCoalesce(options.service, () => ( "Electron")); const transport = new (0, _datadogtransportcommon.DataDogTransport)(options); return function processLogs(message) { let msg = ""; let metadata = {}; let arrayData = []; for (const data of message.data) { if (typeof data === "string") { msg = msg + data; continue; } if (Array.isArray(data)) { arrayData = arrayData.concat(data); continue; } if (typeof data === "object") { metadata = { ...metadata, ...data }; } } let item = { date: message.date.getTime(), level: message.level, message: msg }; if (Object.keys(metadata).length) { if (options.metadataField) { item[options.metadataField] = metadata; } else { item = { ...item, ...metadata }; } } if (arrayData.length) { if (options.arrayDataField) { item[options.arrayDataField] = arrayData; } else { item.arrayData = arrayData; } } transport.processLog(item); }; } exports.dataDogTransport = dataDogTransport; //# sourceMappingURL=index.js.map