mirror of
https://github.com/Abdulazizzn/n8n-enterprise-unlocked.git
synced 2025-12-17 01:56:46 +00:00
fix(core): Reduce logging overhead for levels that do not output (#7479)
all current logging calls execute `callsites()` to figure out what code tried to log. This happens even for logging methods that aren't supposed to create any output. Under moderate load, this can take up quite a lot of resources. This PR changes the logger to make all ignorable logging methods a No-Op. In a small benchmark with a simple webhook, with log-level set to `warn`, and using `ab -c 50 -n 500 http://localhost:5678/webhook/testing`, these were the response times: ### Before  ### After 
This commit is contained in:
committed by
GitHub
parent
0b42d1aa71
commit
76c04815f7
@@ -22,21 +22,21 @@ export function log(type: LogTypes, message: string, meta: object = {}) {
|
||||
// Convenience methods below
|
||||
|
||||
export function debug(message: string, meta: object = {}) {
|
||||
getInstance().log('debug', message, meta);
|
||||
getInstance().debug(message, meta);
|
||||
}
|
||||
|
||||
export function info(message: string, meta: object = {}) {
|
||||
getInstance().log('info', message, meta);
|
||||
getInstance().info(message, meta);
|
||||
}
|
||||
|
||||
export function error(message: string, meta: object = {}) {
|
||||
getInstance().log('error', message, meta);
|
||||
getInstance().error(message, meta);
|
||||
}
|
||||
|
||||
export function verbose(message: string, meta: object = {}) {
|
||||
getInstance().log('verbose', message, meta);
|
||||
getInstance().verbose(message, meta);
|
||||
}
|
||||
|
||||
export function warn(message: string, meta: object = {}) {
|
||||
getInstance().log('warn', message, meta);
|
||||
getInstance().warn(message, meta);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user