MCPcopy Create free account
hub / github.com/effect-app/libs / makeLog

Function makeLog

packages/effect-app/src/utils/logger.ts:14–36  ·  view source on GitHub ↗
(namespace: string, defaultLevel: Levels = "warn")

Source from the content-addressed store, hash-verified

12}) {}
13
14export const makeLog = (namespace: string, defaultLevel: Levels = "warn") => {
15 const level = LogLevels.use((levels) => Effect.succeed(levels.get(namespace) ?? defaultLevel))
16 const withLogNamespace = Effect.annotateLogs({ logNamespace: namespace })
17 return {
18 logWarning: (...message: ReadonlyArray<any>) =>
19 Effect.flatMap(level, (l) =>
20 l === "info" || l === "debug" || l === "warn"
21 ? Effect.logWarning(...message).pipe(withLogNamespace)
22 : Effect.void),
23 logError: (...message: ReadonlyArray<any>) => Effect.logError(...message).pipe(withLogNamespace),
24 logFatal: (...message: ReadonlyArray<any>) => Effect.logFatal(...message).pipe(withLogNamespace),
25 logInfo: (...message: ReadonlyArray<any>) =>
26 Effect.flatMap(
27 level,
28 (l) => l === "info" || l === "debug" ? Effect.logInfo(...message).pipe(withLogNamespace) : Effect.void
29 ),
30 logDebug: (...message: ReadonlyArray<any>) =>
31 Effect.flatMap(level, (l) => l === "debug" ? Effect.logDebug(...message).pipe(withLogNamespace) : Effect.void),
32 // for now always log
33 logWithLevel: (level: LogLevel.Severity, ...message: ReadonlyArray<any>) =>
34 Effect.logWithLevel(level)(...message).pipe(withLogNamespace)
35 }
36}

Callers 2

logger.tsFile · 0.90
logger.tsFile · 0.90

Calls 4

useMethod · 0.65
getMethod · 0.65
pipeMethod · 0.65
succeedMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…