@xylabs/logger


XYLabs Logger Library
Reference
@xylabs/logger
Classes
| ConsoleLogger | A LevelLogger that delegates to the global console object. |
| IdLogger | A logger wrapper that prefixes every log message with a bracketed identifier. Useful for distinguishing log output from different components or instances. |
| LevelLogger | A logger that filters messages based on a configured log level. Methods for levels above the configured threshold return a no-op function. |
| SilentLogger | A logger that does not log anything. This is useful when you want to disable logging like when running unit tests or in silent mode. It implements the Logger interface but all methods are no-op functions. |
Interfaces
| Logger | Interface to handle overlap between Winston & console with as much congruency as possible. |
Type Aliases
| LogFunction | A generic logging function that accepts any number of arguments. |
| LogLevelKey | String key for a log level (e.g. 'error', 'warn', 'info'). |
| LogVerbosity | Alias for LogLevelKey, representing the verbosity setting as a string. |
| LogLevelValue | Numeric value of a log level (1 through 6). |
Variables
| LogLevel | Numeric log level values, from least verbose (error=1) to most verbose (trace=6). |
Functions
| NoOpLogFunction | A log function that silently discards all arguments. |
| getFunctionName | Retrieves the name of the calling function by inspecting the stack trace. |
classes
ConsoleLogger
@xylabs/logger
A LevelLogger that delegates to the global console object.
Extends
Constructors
Constructor
new ConsoleLogger(level?: LogLevelValue): ConsoleLogger;
Parameters
Returns
ConsoleLogger
Overrides
LevelLogger.constructor
Properties
Accessors
debug
Get Signature
get debug(): LogFunction;
Returns
LogFunction
Inherited from
LevelLogger.debug
error
Get Signature
get error(): LogFunction;
Returns
LogFunction
Inherited from
LevelLogger.error
info
Get Signature
get info(): LogFunction;
Returns
LogFunction
Inherited from
LevelLogger.info
log
Get Signature
get log(): LogFunction;
Returns
LogFunction
Inherited from
LevelLogger.log
trace
Get Signature
get trace(): LogFunction;
Returns
LogFunction
Inherited from
LevelLogger.trace
warn
Get Signature
get warn(): LogFunction;
Returns
LogFunction
Inherited from
LevelLogger.warn
IdLogger
@xylabs/logger
A logger wrapper that prefixes every log message with a bracketed identifier.
Useful for distinguishing log output from different components or instances.
Implements
Constructors
Constructor
new IdLogger(logger: Logger, id?: () => string): IdLogger;
Parameters
Returns
IdLogger
Accessors
id
Set Signature
set id(id: string): void;
Parameters
Returns
void
Methods
debug()
debug(...data: unknown[]): void;
Parameters
Returns
void
Implementation of
Logger.debug
error()
error(...data: unknown[]): void;
Parameters
Returns
void
Implementation of
Logger.error
info()
info(...data: unknown[]): void;
Parameters
Returns
void
Implementation of
Logger.info
log()
log(...data: unknown[]): void;
Parameters
Returns
void
Implementation of
Logger.log
trace()
trace(...data: unknown[]): void;
Parameters
Returns
void
Implementation of
Logger.trace
warn()
warn(...data: unknown[]): void;
Parameters
Returns
void
Implementation of
Logger.warn
LevelLogger
@xylabs/logger
A logger that filters messages based on a configured log level.
Methods for levels above the configured threshold return a no-op function.
Extended by
Implements
Constructors
Constructor
new LevelLogger(logger: Logger, level?: LogLevelValue): LevelLogger;
Parameters
Returns
LevelLogger
Properties
Accessors
debug
Get Signature
get debug(): LogFunction;
Returns
LogFunction
Implementation of
Logger.debug
error
Get Signature
get error(): LogFunction;
Returns
LogFunction
Implementation of
Logger.error
info
Get Signature
get info(): LogFunction;
Returns
LogFunction
Implementation of
Logger.info
log
Get Signature
get log(): LogFunction;
Returns
LogFunction
Implementation of
Logger.log
trace
Get Signature
get trace(): LogFunction;
Returns
LogFunction
Implementation of
Logger.trace
warn
Get Signature
get warn(): LogFunction;
Returns
LogFunction
Implementation of
Logger.warn
SilentLogger
@xylabs/logger
A logger that does not log anything.
This is useful when you want to disable logging
like when running unit tests or in silent mode.
It implements the Logger interface but all methods
are no-op functions.
Implements
Constructors
Constructor
new SilentLogger(): SilentLogger;
Returns
SilentLogger
Properties
debug | readonly | (..._data: unknown[]) => undefined | NoOpLogFunction |
error | readonly | (..._data: unknown[]) => undefined | NoOpLogFunction |
info | readonly | (..._data: unknown[]) => undefined | NoOpLogFunction |
log | readonly | (..._data: unknown[]) => undefined | NoOpLogFunction |
trace | readonly | (..._data: unknown[]) => undefined | NoOpLogFunction |
warn | readonly | (..._data: unknown[]) => undefined | NoOpLogFunction |
functions
NoOpLogFunction
@xylabs/logger
function NoOpLogFunction(..._data: unknown[]): undefined;
A log function that silently discards all arguments.
Parameters
Returns
undefined
getFunctionName
@xylabs/logger
function getFunctionName(depth?: number): string;
Retrieves the name of the calling function by inspecting the stack trace.
Parameters
depth | number | 2 | The stack frame depth to inspect (default: 2, the caller's caller). |
Returns
string
The function name, or '' if it cannot be determined.
interfaces
Logger
@xylabs/logger
Interface to handle overlap between Winston &
console with as much congruency as possible.
Properties
type-aliases
LogFunction
@xylabs/logger
type LogFunction = (...data: unknown[]) => void;
A generic logging function that accepts any number of arguments.
Parameters
Returns
void
LogLevelKey
@xylabs/logger
type LogLevelKey = EnumKey<typeof LogLevel>;
String key for a log level (e.g. 'error', 'warn', 'info').
LogLevelValue
@xylabs/logger
type LogLevelValue = EnumValue<typeof LogLevel>;
Numeric value of a log level (1 through 6).
LogVerbosity
@xylabs/logger
type LogVerbosity = LogLevelKey;
Alias for LogLevelKey, representing the verbosity setting as a string.
variables
LogLevel
@xylabs/logger
const LogLevel: Enum<{
error: 1;
warn: 2;
info: 3;
log: 4;
debug: 5;
trace: 6;
}>;
Numeric log level values, from least verbose (error=1) to most verbose (trace=6).
Part of sdk-js
Maintainers
License
See the LICENSE file for license details
Credits
Made with 🔥 and ❄️ by XYLabs