PlatformLogger
Other
Create a Logger from another string Logger that writes to the specified file.
Signature
declare const toFile: { (path: string, options?: OpenFileOptions & { readonly batchWindow?: DurationInput; }): <Message>(self: Logger<Message, string>) => Effect<Logger<Message, void>, PlatformError, Scope | FileSystem>; <Message>(self: Logger<Message, string>, path: string, options?: OpenFileOptions & { readonly batchWindow?: DurationInput; }): Effect<Logger<Message, void>, PlatformError, Scope | FileSystem>;}Example
import { PlatformLogger } from "@effect/platform"import { NodeFileSystem, NodeRuntime } from "@effect/platform-node"import { Effect, Layer, Logger } from "effect"
const fileLogger = Logger.logfmtLogger.pipe( PlatformLogger.toFile("/tmp/log.txt"))const LoggerLive = Logger.replaceScoped(Logger.defaultLogger, fileLogger).pipe( Layer.provide(NodeFileSystem.layer))
Effect.log("a").pipe( Effect.zipRight(Effect.log("b")), Effect.zipRight(Effect.log("c")), Effect.provide(LoggerLive), NodeRuntime.runMain)