@jenova-marie/wonder-logger - v2.0.15
    Preparing search index...

    Variable default

    default: {
        createLogger: (options: LoggerOptions) => Logger;
        createConsoleTransport: (options?: ConsoleTransportOptions) => StreamEntry;
        createAlignedConsoleTransport: (
            options?: AlignedConsoleTransportOptions,
        ) => StreamEntry;
        createFileTransport: (options?: FileTransportOptions) => StreamEntry;
        createOtelTransport: (options: OtelTransportOptions) => StreamEntry;
        createMemoryTransport: (options?: MemoryTransportOptions) => StreamEntry;
        withTraceContext: (logger: Logger) => Logger;
        createMorganStream: (
            logger: Logger,
            level?: "error" | "warn" | "info" | "debug" | "trace",
        ) => MorganStream;
        createTelemetry: (options: TelemetryOptions) => TelemetrySDK;
        withSpan: <T>(
            name: string,
            fn: () => Promise<T>,
            tracerName?: string,
        ) => Promise<T>;
        createLoggerFromConfig: (options?: CreateLoggerFromConfigOptions) => Logger;
        createTelemetryFromConfig: (
            options?: CreateTelemetryFromConfigOptions,
        ) => TelemetrySDK;
        loadConfig: (
            options?: { configPath?: string; required?: boolean },
        ) => ConfigResult<
            {
                service: { name: string; version: string; environment: string };
                logger: {
                    enabled: boolean;
                    level:
                        | "fatal"
                        | "error"
                        | "warn"
                        | "info"
                        | "debug"
                        | "trace"
                        | "silent";
                    redact: string[];
                    transports: (
                        | {
                            type: "console";
                            level?: "fatal"
                            | "error"
                            | "warn"
                            | "info"
                            | "debug"
                            | "trace";
                            variant?: "pretty" | "json" | "minimal" | "aligned";
                            prettyOptions?: {
                                colorize?: (...) | (...) | (...);
                                translateTime?: (...) | (...);
                                ignore?: (...) | (...);
                                singleLine?: (...) | (...) | (...);
                                hideObject?: (...) | (...) | (...);
                            };
                            minimalOptions?: { colorize?: (...)
                            | (...)
                            | (...) };
                            alignedOptions?: {
                                colorize?: (...) | (...) | (...);
                                showTimestamp?: (...) | (...) | (...);
                                timestampFormat?: (...) | (...) | (...);
                                dataFormat?: (...) | (...) | (...) | (...);
                                excludeFields?: (...) | (...);
                            };
                            pretty?: boolean;
                        }
                        | {
                            type: "file";
                            dir: string;
                            fileName: string;
                            level?: "fatal"
                            | "error"
                            | "warn"
                            | "info"
                            | "debug"
                            | "trace";
                            sync: boolean;
                            mkdir: boolean;
                        }
                        | {
                            type: "otel";
                            endpoint: string;
                            level?: "fatal"
                            | "error"
                            | "warn"
                            | "info"
                            | "debug"
                            | "trace";
                            exportIntervalMillis: number;
                        }
                        | {
                            type: "memory";
                            name?: string;
                            maxSize: number;
                            level?: "fatal"
                            | "error"
                            | "warn"
                            | "info"
                            | "debug"
                            | "trace";
                        }
                    )[];
                    plugins: { traceContext: boolean; morganStream: boolean };
                };
                otel: {
                    enabled: boolean;
                    tracing: {
                        enabled: boolean;
                        exporter: "console"
                        | "otlp"
                        | "jaeger"
                        | "none";
                        endpoint?: string;
                        sampleRate: number;
                    };
                    metrics: {
                        enabled: boolean;
                        exporters: (
                            | { type: "prometheus"; port: number }
                            | { type: "otlp"; endpoint: string; exportIntervalMillis: number }
                        )[];
                        exportIntervalMillis: number;
                    };
                    instrumentation: { auto: boolean; http: boolean };
                };
                _configDir?: string;
            },
        >;
    }

    Type Declaration

    • createLogger: (options: LoggerOptions) => Logger
    • createConsoleTransport: (options?: ConsoleTransportOptions) => StreamEntry
    • createAlignedConsoleTransport: (options?: AlignedConsoleTransportOptions) => StreamEntry
    • createFileTransport: (options?: FileTransportOptions) => StreamEntry
    • createOtelTransport: (options: OtelTransportOptions) => StreamEntry
    • createMemoryTransport: (options?: MemoryTransportOptions) => StreamEntry
    • withTraceContext: (logger: Logger) => Logger
    • createMorganStream: (
          logger: Logger,
          level?: "error" | "warn" | "info" | "debug" | "trace",
      ) => MorganStream
    • createTelemetry: (options: TelemetryOptions) => TelemetrySDK
    • withSpan: <T>(name: string, fn: () => Promise<T>, tracerName?: string) => Promise<T>
    • createLoggerFromConfig: (options?: CreateLoggerFromConfigOptions) => Logger
    • createTelemetryFromConfig: (options?: CreateTelemetryFromConfigOptions) => TelemetrySDK
    • loadConfig: (
          options?: { configPath?: string; required?: boolean },
      ) => ConfigResult<
          {
              service: { name: string; version: string; environment: string };
              logger: {
                  enabled: boolean;
                  level: "fatal" | "error" | "warn" | "info" | "debug" | "trace" | "silent";
                  redact: string[];
                  transports: (
                      | {
                          type: "console";
                          level?: "fatal"
                          | "error"
                          | "warn"
                          | "info"
                          | "debug"
                          | "trace";
                          variant?: "pretty" | "json" | "minimal" | "aligned";
                          prettyOptions?: {
                              colorize?: (...) | (...) | (...);
                              translateTime?: (...) | (...);
                              ignore?: (...) | (...);
                              singleLine?: (...) | (...) | (...);
                              hideObject?: (...) | (...) | (...);
                          };
                          minimalOptions?: { colorize?: (...)
                          | (...)
                          | (...) };
                          alignedOptions?: {
                              colorize?: (...) | (...) | (...);
                              showTimestamp?: (...) | (...) | (...);
                              timestampFormat?: (...) | (...) | (...);
                              dataFormat?: (...) | (...) | (...) | (...);
                              excludeFields?: (...) | (...);
                          };
                          pretty?: boolean;
                      }
                      | {
                          type: "file";
                          dir: string;
                          fileName: string;
                          level?: "fatal"
                          | "error"
                          | "warn"
                          | "info"
                          | "debug"
                          | "trace";
                          sync: boolean;
                          mkdir: boolean;
                      }
                      | {
                          type: "otel";
                          endpoint: string;
                          level?: "fatal"
                          | "error"
                          | "warn"
                          | "info"
                          | "debug"
                          | "trace";
                          exportIntervalMillis: number;
                      }
                      | {
                          type: "memory";
                          name?: string;
                          maxSize: number;
                          level?: "fatal"
                          | "error"
                          | "warn"
                          | "info"
                          | "debug"
                          | "trace";
                      }
                  )[];
                  plugins: { traceContext: boolean; morganStream: boolean };
              };
              otel: {
                  enabled: boolean;
                  tracing: {
                      enabled: boolean;
                      exporter: "console"
                      | "otlp"
                      | "jaeger"
                      | "none";
                      endpoint?: string;
                      sampleRate: number;
                  };
                  metrics: {
                      enabled: boolean;
                      exporters: (
                          | { type: "prometheus"; port: number }
                          | { type: "otlp"; endpoint: string; exportIntervalMillis: number }
                      )[];
                      exportIntervalMillis: number;
                  };
                  instrumentation: { auto: boolean; http: boolean };
              };
              _configDir?: string;
          },
      >