diff --git a/package.json b/package.json index cca53e7..92319e9 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "zeed", "type": "module", - "version": "0.25.0", + "version": "0.25.1", "description": "🌱 Simple foundation library", "author": { "name": "Dirk Holtwick", diff --git a/src/common/data/convert.ts b/src/common/data/convert.ts index f487371..7f4a062 100644 --- a/src/common/data/convert.ts +++ b/src/common/data/convert.ts @@ -1,4 +1,5 @@ import { Uint8ArrayToHexDump } from './bin' +import { objectPlain } from './object' // import { jsonStringify } from './json' @@ -111,6 +112,7 @@ export function formatMessages( return `${obj.name || 'Error'}: ${obj.message}\n${obj.stack}` } try { + obj = objectPlain(obj) return pretty ? JSON.stringify(obj, null, 2) : JSON.stringify(obj) } catch (err) {} diff --git a/src/common/log/log-memory.ts b/src/common/log/log-memory.ts index a1ae970..fd32738 100644 --- a/src/common/log/log-memory.ts +++ b/src/common/log/log-memory.ts @@ -32,7 +32,11 @@ export function LoggerMemoryHandler( msg.timestamp ??= getTimestamp() - const m = objectPlain(msg, { maxDepth, errorTrace }) + const m = objectPlain(msg, { + maxDepth, + errorTrace, + keepAsIs: v => v instanceof Error, + }) if (compact === true) (messages as LogMessageCompact[]).push([m.timestamp, m.level, m.name, ...m.messages])