/
/
home
/
u523034047
/
domains
/
wasms.shop
/
public_html
/
varified
/
node_modules
/
pino
/
lib
Server: in-mum-web1112.main-hosting.eu (62.72.28.111)
You: 216.73.216.60
PHP 8.3.16
Dir:
/home/u523034047/domains/wasms.shop/public_html/varified/node_modules/pino/lib
Edit:
/home/u523034047/domains/wasms.shop/public_html/varified/node_modules/pino/lib/transport.js
'use strict' const { createRequire } = require('module') const getCallers = require('./caller') const { join, isAbsolute } = require('path') const sleep = require('atomic-sleep') let onExit if (global.WeakRef && global.WeakMap && global.FinalizationRegistry) { // This require MUST be top level otherwise the transport would // not work from within Jest as it hijacks require. onExit = require('on-exit-leak-free') } const ThreadStream = require('thread-stream') function setupOnExit (stream) { /* istanbul ignore next */ if (onExit) { // This is leak free, it does not leave event handlers onExit.register(stream, autoEnd) stream.on('close', function () { onExit.unregister(stream) }) } else { const fn = autoEnd.bind(null, stream) process.once('beforeExit', fn) process.once('exit', fn) stream.on('close', function () { process.removeListener('beforeExit', fn) process.removeListener('exit', fn) }) } } function buildStream (filename, workerData, workerOpts) { const stream = new ThreadStream({ filename, workerData, workerOpts }) stream.on('ready', onReady) stream.on('close', function () { process.removeListener('exit', onExit) }) process.on('exit', onExit) function onReady () { process.removeListener('exit', onExit) stream.unref() if (workerOpts.autoEnd !== false) { setupOnExit(stream) } } function onExit () { if (stream.closed) { return } stream.flushSync() // Apparently there is a very sporadic race condition // that in certain OS would prevent the messages to be flushed // because the thread might not have been created still. // Unfortunately we need to sleep(100) in this case. sleep(100) stream.end() } return stream } function autoEnd (stream) { stream.ref() stream.flushSync() stream.end() stream.once('close', function () { stream.unref() }) } function transport (fullOptions) { const { pipeline, targets, levels, options = {}, worker = {}, caller = getCallers() } = fullOptions // Backwards compatibility const callers = typeof caller === 'string' ? [caller] : caller // This will be eventually modified by bundlers const bundlerOverrides = '__bundlerPathsOverrides' in globalThis ? globalThis.__bundlerPathsOverrides : {} let target = fullOptions.target if (target && targets) { throw new Error('only one of target or targets can be specified') } if (targets) { target = bundlerOverrides['pino-worker'] || join(__dirname, 'worker.js') options.targets = targets.map((dest) => { return { ...dest, target: fixTarget(dest.target) } }) } else if (pipeline) { target = bundlerOverrides['pino-pipeline-worker'] || join(__dirname, 'worker-pipeline.js') options.targets = pipeline.map((dest) => { return { ...dest, target: fixTarget(dest.target) } }) } if (levels) { options.levels = levels } return buildStream(fixTarget(target), options, worker) function fixTarget (origin) { origin = bundlerOverrides[origin] || origin if (isAbsolute(origin) || origin.indexOf('file://') === 0) { return origin } if (origin === 'pino/file') { return join(__dirname, '..', 'file.js') } let fixTarget for (const filePath of callers) { try { fixTarget = createRequire(filePath).resolve(origin) break } catch (err) { // Silent catch continue } } if (!fixTarget) { throw new Error(`unable to determine transport target for "${origin}"`) } return fixTarget } } module.exports = transport
Ukuran: 3.6 KB