Hyperlinkv0.8.0-beta.28

Logger

Logger.CurrentLoggersconsteffect/Logger.ts:166
Context.Reference<ReadonlySet<Logger<unknown, any>>>

Context reference containing the active loggers for the current fiber.

Details

By default this set includes the default logger and the tracer logger. Providing Logger.layer replaces or merges with this set depending on its options.

Example (Accessing current loggers)

import { Effect, Logger } from "effect"

// Access current loggers from fiber context
const program = Effect.gen(function*() {
  const currentLoggers = yield* Effect.service(Logger.CurrentLoggers)
  console.log(`Number of active loggers: ${currentLoggers.size}`)

  // Add a custom logger to the set
  const customLogger = Logger.make((options) => {
    console.log(`Custom: ${options.message}`)
  })

  yield* Effect.log("Hello from custom logger").pipe(
    Effect.provide(Logger.layer([customLogger]))
  )
})
references
Source effect/Logger.ts:1661 lines
export const CurrentLoggers: Context.Reference<ReadonlySet<Logger<unknown, any>>> = effect.CurrentLoggers
Referenced by 1 symbols