2022-11-06 16:21:10 +01:00
|
|
|
/* eslint-disable no-console */
|
|
|
|
const { MasterLogger } = require('../');
|
2022-11-08 21:03:35 +01:00
|
|
|
const ChildProcess = require('node:child_process');
|
2022-11-06 16:21:10 +01:00
|
|
|
|
2022-11-08 21:03:35 +01:00
|
|
|
const spawn = (child) => {
|
|
|
|
return new Promise((resolve) => {
|
|
|
|
child.on('spawn', resolve);
|
|
|
|
});
|
|
|
|
|
|
|
|
};
|
2022-11-06 16:21:10 +01:00
|
|
|
|
2022-11-08 21:03:35 +01:00
|
|
|
const main = async () => {
|
|
|
|
const logger = new MasterLogger({
|
|
|
|
debug: true,
|
|
|
|
customTypes: [ 'access' ],
|
|
|
|
customStreams: [ 'access' ],
|
|
|
|
customTypeMapping: { access: 'access', warn: 'error' },
|
2023-03-23 17:50:49 +01:00
|
|
|
customColors: { access: 'green' },
|
2023-03-26 19:38:15 +02:00
|
|
|
fileRotationFreq: 0.0001,
|
|
|
|
logLevelMapping: { access: 2 }
|
2022-11-08 21:03:35 +01:00
|
|
|
});
|
|
|
|
const child = ChildProcess.fork('./test/otherProcess.js');
|
|
|
|
logger.attach(child);
|
2022-11-06 16:21:10 +01:00
|
|
|
|
2022-11-08 21:03:35 +01:00
|
|
|
await spawn(child);
|
|
|
|
|
|
|
|
const { types, colours, streamTypes, streamTypeMapping } = logger; // , writeStreams
|
|
|
|
console.log(types, colours, streamTypes, streamTypeMapping); // , writeStreams
|
|
|
|
|
2023-03-23 17:50:49 +01:00
|
|
|
for (let i = 0; i < 10; i++) {
|
|
|
|
await new Promise((resolve) => setTimeout(resolve, 1000));
|
|
|
|
logger.info(`Iteration ${i}`);
|
|
|
|
}
|
2022-11-08 21:03:35 +01:00
|
|
|
};
|
|
|
|
main();
|