Skip to content

Commit 73afa4c

Browse files
authored
fix: use messageKey when giving message precedence over error (#1746)
* test: add failing test showing that `messageKey` is not used * fix: use `messageKey` when giving message preference over error
1 parent 491b342 commit 73afa4c

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

lib/proto.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ const {
2020
serializersSym,
2121
formattersSym,
2222
errorKeySym,
23+
messageKeySym,
2324
useOnlyCustomLevelsSym,
2425
needsMetadataGsym,
2526
redactFmtSym,
@@ -181,6 +182,7 @@ function write (_obj, msg, num) {
181182
const t = this[timeSym]()
182183
const mixin = this[mixinSym]
183184
const errorKey = this[errorKeySym]
185+
const messageKey = this[messageKeySym]
184186
const mixinMergeStrategy = this[mixinMergeStrategySym] || defaultMixinMergeStrategy
185187
let obj
186188

@@ -193,7 +195,7 @@ function write (_obj, msg, num) {
193195
}
194196
} else {
195197
obj = _obj
196-
if (msg === undefined && _obj.msg === undefined && _obj[errorKey]) {
198+
if (msg === undefined && _obj[messageKey] === undefined && _obj[errorKey]) {
197199
msg = _obj[errorKey].message
198200
}
199201
}

test/error.test.js

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -376,3 +376,23 @@ test('msg should take precedence over error message on mergingObject', async ({
376376
msg: 'my message'
377377
})
378378
})
379+
380+
test('considers messageKey when giving msg precedence over error', async ({ same }) => {
381+
const err = new Error('myerror')
382+
const stream = sink()
383+
const instance = pino({ messageKey: 'message' }, stream)
384+
instance.error({ message: 'my message', err })
385+
const result = await once(stream, 'data')
386+
delete result.time
387+
same(result, {
388+
pid,
389+
hostname,
390+
level: 50,
391+
err: {
392+
type: 'Error',
393+
stack: err.stack,
394+
message: err.message
395+
},
396+
message: 'my message'
397+
})
398+
})

0 commit comments

Comments
 (0)