UNPKG

@eagleoutice/flowr-dev

Version:

Static Dataflow Analyzer and Program Slicer for the R Programming Language

39 lines (38 loc) 1.54 kB
import { type ILogObj, type ISettingsParam, Logger } from 'tslog'; import type { Options } from 'rotating-file-stream'; export declare const expensiveTrace: (log: Logger<ILogObj> | undefined, supplier: () => string) => void; export declare class FlowrLogger extends Logger<ILogObj> { /** by keeping track of all children we can propagate updates of the settings (e.g., in tests) */ private readonly childLoggers; getSubLogger(settings?: ISettingsParam<ILogObj>, logObj?: ILogObj): Logger<ILogObj>; updateSettings(updater: (logger: Logger<ILogObj>) => void): void; /** * make the logger log to a file as well * * Rotation needs the optional `rotating-file-stream` dependency. Without it (the slim runtime images install with * `--omit=optional`) the log is appended to a single file instead. */ logToFile(filename?: string, options?: Options): void; } export declare const enum LogLevel { Silly = 0, Trace = 1, Debug = 2, Info = 3, Warn = 4, Error = 5, Fatal = 6 } export declare const LogLevelNames: { readonly silly: LogLevel.Silly; readonly trace: LogLevel.Trace; readonly debug: LogLevel.Debug; readonly info: LogLevel.Info; readonly warn: LogLevel.Warn; readonly error: LogLevel.Error; readonly fatal: LogLevel.Fatal; }; export type LogLevelName = keyof typeof LogLevelNames; /** Set the global minimum log level by name. */ export declare function setLogLevel(level: LogLevelName): void; export declare const log: FlowrLogger;