我正在尝试使用自定义序列化程序,但它似乎对我不起作用,我的序列化程序从未调用过。我在做什么错了?
我创建这样的记录器:
const mask = token => {
console.log({token})
return typeof token === 'string' ? token.replace(/[^\.]+$/, 'REDACTED') : token
}
const log = context.log = createLogger({
name: '_placeholder',
level: process.env.LOG_LEVEL || 'info',
serializers: {authorization: mask, bearer: mask, Authorization: mask}
})
然后我这样登录:
console.log({properties})
log[!status ? 'error' : status < 500 ? 'info' : 'warn']({error: merge({message, ...properties}, status && {status})})
输出通过管道传输到Bunyan:
{ properties:
{ reason: 'InvalidToken', authorization: 'Bearer foo.bar.baz' } }
[2018-08-14T14:37:11.775Z] INFO: _placeholder/9920 on XXX:
error: {
"message": "Invalid token",
"reason": "InvalidToken",
"authorization": "Bearer foo.bar.baz",
"status": 401
}
编辑:
我看到它仅适用于顶级属性;有没有一种方法可以实现我在这里要执行的操作-掩盖恰当命名的嵌套属性?
答案 0 :(得分:0)
从技术上讲这行得通,但是考虑到性能受到影响,我不确定这是我想直播的东西
sudo chown www-data:www-data storage/oauth-*.key
php artisan passport:install
php artisan config:clear
php artisan key:generate
php artisan config:clear