diff options
author | Eric Bailey <git@esb.lol> | 2025-02-28 12:09:36 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-02-28 12:09:36 -0600 |
commit | 7c36ea115855050f319be19bb74d6f7fd80f8eed (patch) | |
tree | ed32d674b1b74dca813ad9cac44a621313431270 /src/logger/util.ts | |
parent | 9e9ffd5c6e9e5c672f60aa10d60c6628a15ae783 (diff) | |
download | voidsky-7c36ea115855050f319be19bb74d6f7fd80f8eed.tar.zst |
Logger improvements (#7729)
* Remove enablement * Refactor context and filtering * Fix imports, simplify transports config * Migrate usages of debug context * Re-org, add colors and grouping to console logging * Remove temp default context * Remove manual prefix * Move colorizing out of console transport body * Reduce reuse * Pass through context * Ensure bitdrift is enabled in dev * Enable Sentry on web only * Clean up types * Docs * Format * Update tests * Clean up tests * No positional args * Revert Sentry changes * Clean up context, use it, pass metadata through to Bitdrift * Fix up debugging * Clean up metadata before passing to Bitdrift * Correct transports * Reserve context prop on metadata and include in transports * Update tests
Diffstat (limited to 'src/logger/util.ts')
-rw-r--r-- | src/logger/util.ts | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/logger/util.ts b/src/logger/util.ts new file mode 100644 index 000000000..f1e12b164 --- /dev/null +++ b/src/logger/util.ts @@ -0,0 +1,29 @@ +import {LogLevel, Metadata, Serializable} from '#/logger/types' + +export const enabledLogLevels: { + [key in LogLevel]: LogLevel[] +} = { + [LogLevel.Debug]: [ + LogLevel.Debug, + LogLevel.Info, + LogLevel.Log, + LogLevel.Warn, + LogLevel.Error, + ], + [LogLevel.Info]: [LogLevel.Info, LogLevel.Log, LogLevel.Warn, LogLevel.Error], + [LogLevel.Log]: [LogLevel.Log, LogLevel.Warn, LogLevel.Error], + [LogLevel.Warn]: [LogLevel.Warn, LogLevel.Error], + [LogLevel.Error]: [LogLevel.Error], +} + +export function prepareMetadata( + metadata: Metadata, +): Record<string, Serializable> { + return Object.keys(metadata).reduce((acc, key) => { + let value = metadata[key] + if (value instanceof Error) { + value = value.toString() + } + return {...acc, [key]: value} + }, {}) +} |