@vizydrop/logger
Advanced tools
| /********************************************************************* | ||
| * © Copyright IBM Corp. 2026 | ||
| *********************************************************************/ | ||
| function createMetadataPlugin(metadataConfig) { | ||
| if (!metadataConfig.enabled) { | ||
| return (params) => params; | ||
| } | ||
| if (!metadataConfig.getMetadata) { | ||
| throw new Error(`getMetadata is required`); | ||
| } | ||
| if (typeof metadataConfig.getMetadata !== `function`) { | ||
| throw new Error(`getMetadata should be a function`); | ||
| } | ||
| return (params) => { | ||
| const metadata = metadataConfig.getMetadata(); | ||
| if (!metadata || typeof metadata !== `object`) { | ||
| return params; | ||
| } | ||
| return [...params, metadata]; | ||
| }; | ||
| } | ||
| module.exports = {createMetadataPlugin}; |
| /********************************************************************* | ||
| * © Copyright IBM Corp. 2025 | ||
| *********************************************************************/ | ||
| * © Copyright IBM Corp. 2026 | ||
| *********************************************************************/ | ||
| function create(initialAdditionalFields) { | ||
@@ -5,0 +5,0 @@ let additionalFields = {...initialAdditionalFields}; |
| /********************************************************************* | ||
| * © Copyright IBM Corp. 2025 | ||
| *********************************************************************/ | ||
| * © Copyright IBM Corp. 2026 | ||
| *********************************************************************/ | ||
| const winston = require(`winston`); | ||
@@ -69,2 +69,3 @@ const {createLoggerWrapper} = require(`./createLoggerWrapper`); | ||
| transports = [], | ||
| metadata: metadataConfig = {}, | ||
| } = opts; | ||
@@ -100,2 +101,3 @@ | ||
| additionalFieldsStorage, | ||
| metadataConfig, | ||
| }); | ||
@@ -102,0 +104,0 @@ } |
| /********************************************************************* | ||
| * © Copyright IBM Corp. 2025 | ||
| *********************************************************************/ | ||
| * © Copyright IBM Corp. 2026 | ||
| *********************************************************************/ | ||
| const {convertErrors} = require(`./plugins/convertErrors`); | ||
| const {createCorrelationIdPlugin} = require(`./plugins/correlationId`); | ||
| const {createAdditionalFieldsPlugin} = require(`./plugins/additionalFields`); | ||
| const {createMetadataPlugin} = require(`./plugins/metadata`); | ||
@@ -12,2 +13,3 @@ function createLoggerWrapper({ | ||
| additionalFieldsStorage, | ||
| metadataConfig, | ||
| }) { | ||
@@ -18,2 +20,3 @@ const addCorrelationId = createCorrelationIdPlugin(correlationIdConfig); | ||
| ); | ||
| const addMetadata = createMetadataPlugin(metadataConfig); | ||
@@ -39,3 +42,3 @@ const wrapper = { | ||
| ...addAdditionalFields( | ||
| addCorrelationId(convertErrors(logParams)), | ||
| addMetadata(addCorrelationId(convertErrors(logParams))), | ||
| ), | ||
@@ -42,0 +45,0 @@ ); |
| /********************************************************************* | ||
| * © Copyright IBM Corp. 2025 | ||
| *********************************************************************/ | ||
| * © Copyright IBM Corp. 2026 | ||
| *********************************************************************/ | ||
| function createAdditionalFieldsPlugin(additionalFieldsStorage) { | ||
@@ -5,0 +5,0 @@ return (params) => { |
| /********************************************************************* | ||
| * © Copyright IBM Corp. 2025 | ||
| *********************************************************************/ | ||
| * © Copyright IBM Corp. 2026 | ||
| *********************************************************************/ | ||
| const fieldsToString = [`errno`]; | ||
@@ -5,0 +5,0 @@ |
| /********************************************************************* | ||
| * © Copyright IBM Corp. 2025 | ||
| *********************************************************************/ | ||
| * © Copyright IBM Corp. 2026 | ||
| *********************************************************************/ | ||
| function createCorrelationIdPlugin(correlationIdConfig) { | ||
@@ -5,0 +5,0 @@ if (!correlationIdConfig.enabled) { |
| /********************************************************************* | ||
| * © Copyright IBM Corp. 2025 | ||
| *********************************************************************/ | ||
| * © Copyright IBM Corp. 2026 | ||
| *********************************************************************/ | ||
| const {MESSAGE} = require(`triple-beam`); | ||
@@ -5,0 +5,0 @@ const jsonStringify = require(`fast-safe-stringify`); |
+1
-1
| { | ||
| "name": "@vizydrop/logger", | ||
| "version": "1.11.2", | ||
| "version": "1.12.0", | ||
| "description": "Vizydrop predefined logger based on winston v3", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
20536
5.24%19
5.56%466
6.15%