Estoy tratando de usar express-winston para iniciar sesión en mi aplicación nodejs-express-server. Esta aplicación es un código auxiliar del servidor API de openapi creado a partir de openapi-generator-cli.
Se refería a esta publicación sobre la exclusión de parámetros al registrar la solicitud. Mi intención aquí es detectar el encabezado de autorización ("api_token") en la solicitud y enmascarar su valor. Cuando registro la solicitud tal como está, sin ningún filtro, veo una entrada de registro masiva de más de 1000 líneas después de formatearlo con JSON. Podría usar algunos consejos sobre
Aquí hay un filtro que estoy probando. El código sigue.
function maskTokenFilter(req, propName) { if(propName !== "headers" || propName !== "rawHeaders") { return req[propName]; } if(propName == "headers" ){ const { api_token, ...rest } = req.headers; if(api_token) { return Object.assign({api_token: '*** masked ***'},rest); } } if(propName == "rawHeaders" ){ const { api_token, ...rest } = req.rawHeaders; if(api_token) { return Object.assign({api_token: '*** masked ***'},rest); } } }La entrada de solicitud completa en el registro de express-winston se comparte aquí . (Nota: lo formateé JSON para facilitar la lectura)