Add config option for Disabling timestamp in log

Signed-off-by: Yannick Bungers <git@innay.de>
This commit is contained in:
Yannick Bungers 2023-10-08 11:09:16 +02:00 committed by Philip Molares
parent c368434387
commit 44a7bfdd9c
3 changed files with 14 additions and 7 deletions

View file

@ -20,6 +20,7 @@ export interface AppConfig {
rendererBaseUrl: string; rendererBaseUrl: string;
port: number; port: number;
loglevel: Loglevel; loglevel: Loglevel;
showLogTimestamp: boolean;
persistInterval: number; persistInterval: number;
} }
@ -59,6 +60,10 @@ const schema = Joi.object({
.default(Loglevel.WARN) .default(Loglevel.WARN)
.optional() .optional()
.label('HD_LOGLEVEL'), .label('HD_LOGLEVEL'),
showLogTimestamp: Joi.boolean()
.default(true)
.optional()
.label('HD_SHOW_LOG_TIMESTAMP'),
persistInterval: Joi.number() persistInterval: Joi.number()
.integer() .integer()
.min(0) .min(0)
@ -79,6 +84,7 @@ export default registerAs('appConfig', () => {
rendererBaseUrl: process.env.HD_RENDERER_BASE_URL, rendererBaseUrl: process.env.HD_RENDERER_BASE_URL,
port: parseOptionalNumber(process.env.HD_BACKEND_PORT), port: parseOptionalNumber(process.env.HD_BACKEND_PORT),
loglevel: process.env.HD_LOGLEVEL, loglevel: process.env.HD_LOGLEVEL,
showLogTimestamp: process.env.HD_SHOW_LOG_TIMESTAMP,
persistInterval: process.env.HD_PERSIST_INTERVAL, persistInterval: process.env.HD_PERSIST_INTERVAL,
}, },
{ {

View file

@ -15,6 +15,7 @@ export function createDefaultMockAppConfig(): AppConfig {
rendererBaseUrl: 'md-renderer.example.com', rendererBaseUrl: 'md-renderer.example.com',
port: 3000, port: 3000,
loglevel: Loglevel.ERROR, loglevel: Loglevel.ERROR,
showLogTimestamp: true,
persistInterval: 10, persistInterval: 10,
}; };
} }

View file

@ -149,17 +149,17 @@ export class ConsoleLoggerService implements LoggerService {
day: '2-digit', day: '2-digit',
month: '2-digit', month: '2-digit',
}; };
//TODO make timestamp optional (https://github.com/hedgedoc/hedgedoc/issues/5033) let timeString = '';
const timestamp = new Date(Date.now()).toLocaleString( if (this.appConfig.showLogTimestamp) {
undefined, timeString =
localeStringOptions, new Date(Date.now()).toLocaleString(undefined, localeStringOptions) +
); ' ';
}
const contextMessage = context ? blue(`[${context}] `) : ''; const contextMessage = context ? blue(`[${context}] `) : '';
const timestampDiff = this.updateAndGetTimestampDiff(isTimeDiffEnabled); const timestampDiff = this.updateAndGetTimestampDiff(isTimeDiffEnabled);
process.stdout.write( process.stdout.write(
`${timestamp} ${contextMessage}${output}${timestampDiff}\n`, `${timeString}${contextMessage}${output}${timestampDiff}\n`,
); );
} }