UNPKG

datadog-logger-integrations

Version:
50 lines (46 loc) 1.7 kB
'use strict'; var DataDogWritableStream = require('../DataDogWritableStream-CdImPeib.cjs'); require('node:stream'); require('@datadog/datadog-api-client'); var __defProp = Object.defineProperty; var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField = (obj, key, value) => __defNormalProp(obj, key + "" , value); const convertLevel = (level) => { if (typeof level === "string") return level; if (level === 0) return "error"; if (level === 1) return "warning"; if (level === 2) return "info"; if (level === 3) return "info"; if (level === 4) return "debug"; return "trace"; }; const getDataDogStream = (config) => new DataDogWritableStream.DataDogWritableStream({ ...config, logMessageBuilder: config.logMessageBuilder ?? // level is the log level of the logger, not interested (({ type, date, level, hostname, ...parsedItem }) => ({ ddsource: config.ddSource, ddtags: config.ddTags, service: config.service, message: JSON.stringify({ date: date ?? (/* @__PURE__ */ new Date()).toISOString(), ...parsedItem, level: convertLevel(type) }), hostname: typeof hostname === "string" ? hostname : void 0 })) }); class DataDogReporter { constructor(config) { __publicField(this, "stream"); this.stream = getDataDogStream(config); } log(logObj) { if (!this.stream.writableEnded) this.stream.write(`${JSON.stringify(logObj)} `); } } exports.DataDogReporter = DataDogReporter; exports.convertLevel = convertLevel; exports.getDataDogStream = getDataDogStream; //# sourceMappingURL=index.cjs.map