Beignet API reference
    Preparing search index...

    Module @beignet/provider-logger-pino

    @beignet/provider-logger-pino

    Pino-backed LoggerPort provider for Beignet.

    Use this package when you want ctx.ports.logger backed by Pino while keeping application code dependent on the stable LoggerPort interface from @beignet/core/ports.

    bun add @beignet/core @beignet/provider-logger-pino pino
    

    Pretty development logs are optional:

    bun add -d pino-pretty
    
    import { createNextServer } from "@beignet/next";
    import { loggerPinoProvider } from "@beignet/provider-logger-pino";
    import { appPorts } from "@/infra/app-ports";

    export const server = await createNextServer({
    ports: appPorts,
    providers: [loggerPinoProvider],
    createContext: ({ ports }) => ({
    requestId: crypto.randomUUID(),
    ports,
    }),
    });

    The provider installs ctx.ports.logger.

    The provider reads LOG_-prefixed environment variables:

    Variable Default Description
    LOG_LEVEL info trace, debug, info, warn, error, or fatal
    LOG_FORMAT json json or pretty
    LOG_SERVICE none Optional service name added to log bindings
    LOG_TIMESTAMP true Include ISO timestamps

    LOG_FORMAT=pretty requires pino-pretty. If it is unavailable, the provider falls back to JSON logging and emits a warning.

    ctx.ports.logger.info("Post published", {
    postId: post.id,
    actorId: ctx.actor.type === "user" ? ctx.actor.id : undefined,
    });

    const log = ctx.ports.logger.child({ requestId: ctx.requestId });
    log.error("Failed to publish post", { error });
    Export Purpose
    loggerPinoProvider Ready-to-install Beignet provider
    LoggerPinoConfig Validated provider config type
    LoggerPort Re-export from @beignet/core/ports
    LogLevel Re-export from @beignet/core/ports

    MIT

    Interfaces

    LoggerPort

    Type Aliases

    LoggerPinoConfig
    LogLevel

    Variables

    loggerPinoProvider