in packages/opentelemetry-node/lib/luggite.js [140:183]
_addStream(s, defaultLevel) {
if (defaultLevel === null || defaultLevel === undefined) {
defaultLevel = INFO;
}
s = Object.assign({}, s);
// Implicit 'type' from other args.
if (!s.type) {
if (s.stream) {
s.type = 'stream';
}
}
// @ts-expect-error -- adding a property `raw` which is not part of the param
s.raw = s.type === 'raw'; // PERF: Allow for faster check in `_emit`.
if (s.level !== undefined) {
s.level = resolveLevel(s.level);
} else {
s.level = resolveLevel(defaultLevel);
}
if (s.level < this._level) {
this._level = s.level;
}
switch (s.type) {
case 'stream':
assert.ok(
isWritable(s.stream),
'"stream" stream is not writable: ' + inspect(s.stream)
);
break;
case 'raw':
break;
default:
throw new TypeError('unknown stream type "' + s.type + '"');
}
this._streams.push(s);
// @ts-expect-error -- inspecting the previously added `raw` property
if (!this._haveNonRawStreams && !s.raw) {
this._haveNonRawStreams = true;
}
}