@arizeai/phoenix-client
Version:
A client for the Phoenix API
40 lines • 1.59 kB
TypeScript
export type LogLevel = "debug" | "info" | "warn" | "error" | "silent";
export type Logger = {
info: (message: string) => void;
warn: (message: string) => void;
error: (message: string) => void;
log: (message: string) => void;
debug: (message: string) => void;
table: (data: unknown) => void;
};
/**
* A logger that does nothing
*/
export declare const noopLogger: {
info: () => undefined;
warn: () => undefined;
error: () => undefined;
log: () => undefined;
debug: () => undefined;
table: () => undefined;
};
/**
* Creates a logger with the given log level, optionally wrapping a custom logger.
* If no level is provided, reads PHOENIX_LOG_LEVEL from the environment, defaulting to "info".
* If a custom logger is provided, it is used as the underlying output target instead of console.
*
* Log level hierarchy (lowest to highest): debug < info < warn < error < silent
* Messages below the configured level are suppressed.
*
* @example
* const logger = createLogger(); // uses PHOENIX_LOG_LEVEL env var, defaults to "info"
* const logger = createLogger({ level: "debug" }); // show all messages including progress
* const logger = createLogger({ level: "silent" }); // suppress all output
* const logger = createLogger({ logger: myWinstonLogger }); // wrap a custom logger
* const logger = createLogger({ level: "warn", logger: myWinstonLogger }); // custom + level filter
*/
export declare function createLogger({ level, logger, }?: {
level?: LogLevel;
logger?: Logger;
}): Logger;
//# sourceMappingURL=logger.d.ts.map