mirror of
https://github.com/CommunitySolidServer/CommunitySolidServer.git
synced 2024-10-03 14:55:10 +00:00
fix: logging component logs as coming from a worker
This commit is contained in:
parent
069b123c67
commit
c89cc4b395
@ -1,3 +1,4 @@
|
|||||||
|
import cluster from 'cluster';
|
||||||
import { WrappingLogger } from './Logger';
|
import { WrappingLogger } from './Logger';
|
||||||
import type { Logger } from './Logger';
|
import type { Logger } from './Logger';
|
||||||
import type { LoggerFactory } from './LoggerFactory';
|
import type { LoggerFactory } from './LoggerFactory';
|
||||||
@ -51,7 +52,7 @@ class TemporaryLoggerFactory implements LoggerFactory {
|
|||||||
}
|
}
|
||||||
// Emit all buffered log messages
|
// Emit all buffered log messages
|
||||||
for (const { logger, level, message } of this.buffer.splice(0, this.buffer.length)) {
|
for (const { logger, level, message } of this.buffer.splice(0, this.buffer.length)) {
|
||||||
logger.log(level, message);
|
logger.log(level, message, { isPrimary: cluster.isMaster, pid: process.pid });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -38,7 +38,7 @@ export interface Logger extends SimpleLogger {
|
|||||||
* @param message - The message to log.
|
* @param message - The message to log.
|
||||||
* @param meta - Optional metadata to include in the log message.
|
* @param meta - Optional metadata to include in the log message.
|
||||||
*/
|
*/
|
||||||
log: (level: LogLevel, message: string) => Logger;
|
log: (level: LogLevel, message: string, meta?: LogMetadata) => Logger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Log a message at the 'error' level.
|
* Log a message at the 'error' level.
|
||||||
|
@ -53,13 +53,13 @@ describe('LazyLoggerFactory', (): void => {
|
|||||||
|
|
||||||
const wrappedA = dummyLoggerFactory.createLogger.mock.results[0].value as jest.Mocked<Logger>;
|
const wrappedA = dummyLoggerFactory.createLogger.mock.results[0].value as jest.Mocked<Logger>;
|
||||||
expect(wrappedA.log).toHaveBeenCalledTimes(2);
|
expect(wrappedA.log).toHaveBeenCalledTimes(2);
|
||||||
expect(wrappedA.log).toHaveBeenNthCalledWith(1, 'warn', 'message1', undefined);
|
expect(wrappedA.log).toHaveBeenNthCalledWith(1, 'warn', 'message1', expect.any(Object));
|
||||||
expect(wrappedA.log).toHaveBeenNthCalledWith(2, 'error', 'message4', undefined);
|
expect(wrappedA.log).toHaveBeenNthCalledWith(2, 'error', 'message4', expect.any(Object));
|
||||||
|
|
||||||
const wrappedB = dummyLoggerFactory.createLogger.mock.results[1].value as jest.Mocked<Logger>;
|
const wrappedB = dummyLoggerFactory.createLogger.mock.results[1].value as jest.Mocked<Logger>;
|
||||||
expect(wrappedB.log).toHaveBeenCalledTimes(2);
|
expect(wrappedB.log).toHaveBeenCalledTimes(2);
|
||||||
expect(wrappedB.log).toHaveBeenNthCalledWith(1, 'warn', 'message2', undefined);
|
expect(wrappedB.log).toHaveBeenNthCalledWith(1, 'warn', 'message2', expect.any(Object));
|
||||||
expect(wrappedB.log).toHaveBeenNthCalledWith(2, 'error', 'message3', undefined);
|
expect(wrappedB.log).toHaveBeenNthCalledWith(2, 'error', 'message3', expect.any(Object));
|
||||||
});
|
});
|
||||||
|
|
||||||
it('does not store more messages than the buffer limit.', (): void => {
|
it('does not store more messages than the buffer limit.', (): void => {
|
||||||
@ -84,6 +84,8 @@ describe('LazyLoggerFactory', (): void => {
|
|||||||
expect(wrappedA.log).toHaveBeenCalledTimes(50);
|
expect(wrappedA.log).toHaveBeenCalledTimes(50);
|
||||||
expect(wrappedB.log).toHaveBeenCalledTimes(49);
|
expect(wrappedB.log).toHaveBeenCalledTimes(49);
|
||||||
expect(warningLogger.log).toHaveBeenCalledTimes(1);
|
expect(warningLogger.log).toHaveBeenCalledTimes(1);
|
||||||
expect(warningLogger.log).toHaveBeenCalledWith('warn', 'Memory-buffered logging limit of 100 reached', undefined);
|
expect(warningLogger.log).toHaveBeenCalledWith(
|
||||||
|
'warn', 'Memory-buffered logging limit of 100 reached', expect.any(Object),
|
||||||
|
);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
Loading…
x
Reference in New Issue
Block a user