Logger
If there is no need to have a prefix before the logs, you can use Logger.
Logger object provides logging functionality for client and server.
import { Logger } from '@archibald/log';
// Log a message
Logger.error('Error message.');
Logger.warn('Warn message.');
Logger.info('Info message.');
Logger.debug('Debug message.');
Logger.trace('Trace message.');
// Check if a log level is enabled
const isErrorEnabled = Logger.isErrorEnabled();
const isWarnEnabled = Logger.isWarnEnabled();
const isInfoEnabled = Logger.isInfoEnabled();
const isDebugEnabled = Logger.isDebugEnabled();
const isTraceEnabled = Logger.isTraceEnabled();
Available methods
| Method | Parameters | Return value | Description |
|---|---|---|---|
| error | args: LogArgument[] | This method logs a message as error. | |
| info | args: LogArgument[] | This method logs a message as info. | |
| warn | args: LogArgument[] | This method logs a message as warning. | |
| debug | args: LogArgument[] | This method logs a message as debug. | |
| trace | args: LogArgument[] | This method logs a message as trace. | |
| log | args: LogArgument[] | This method is a classic log as an escape hatch from formats. | |
| setLogLevel | requestedLevel: error|warn|info|debug|trace | string | This method changes the log level and return the current log level. |
| isErrorEnabled | This method return true/false if Error is enabled. | ||
| isWarnEnabled | This method return true/false if Warning is enabled. | ||
| isInfoEnabled | This method return true/false if Info is enabled. | ||
| isDebugEnabled | This method return true/false if Debug is enabled. | ||
| isTraceEnabled | This method return true/false if Trace is enabled. |
Use Logger
If there is no need to have a prefix before the logs, you can use Logger.
Logger can be used in both client and server side.
Using Logger object
//import Logger
import { Logger } from '@archibald/log';
// Log a message
Logger.error('Error message.');
Logger.warn('Warn message.');
Logger.info('Info message.');
Logger.debug('Debug message.');
Logger.trace('Trace message.');
Using Logger function inside a component
//import Logger
import { Logger } from '@archibald/log';
function MyLogger() {
return (
<>
<Button
onClick={() => {
Logger.info('info message.');
}}
>
Log info
</Button>
<Button
onClick={() => {
Logger.warn('warning message.');
}}
>
Log warn
</Button>
<Button
onClick={() => {
Logger.error('error message.');
}}
>
Log error
</Button>
<Button
onClick={() => {
Logger.debug('debug message.');
}}
>
Log debug
</Button>
<Button
onClick={() => {
Logger.trace('trace message.');
}}
>
Log trace
</Button>
</>
);
}
setLogLevel
This method sets the current log level. Following log levels are supported:
- error (0)
- warn (1)
- info (2)
- debug (3)
- trace (4)
import { Logger, LogLevel } from '@archibald/log';
const logLevel = Logger.setLogLevel(PARAMETERS);
// Examples
const logLevel = Logger.setLogLevel('debug'); // string
const logLevel = Logger.setLogLevel(LogLevel.DEBUG); // LogLevel
const logLevel = Logger.setLogLevel(0); // numberd
Parameters
| Name | Type | Description |
|---|---|---|
| requestedLevel | LogLevel | string | number | A log level that the logger should change to. |
Using Logger function & set Log level inside a component
//import Logger
import { Logger } from '@archibald/log';
function MyLogger() {
return (
<>
<Button
onClick={() => {
Logger.setLogLevel('info');
}}
>
Info log level
</Button>
<Button
onClick={() => {
Logger.setLogLevel('debug');
}}
>
Debug log level
</Button>
<Button
onClick={() => {
Logger.setLogLevel('error');
}}
>
Error log level
</Button>
<Button
onClick={() => {
Logger.setLogLevel('warning');
}}
>
Warning log level
</Button>
<Button
onClick={() => {
Logger.setLogLevel('trace');
}}
>
Trace log level
</Button>
</>
);
}