@forgerock/sdk-logger
v1.3.0
Published
A flexible and configurable logging utility for the Ping Identity JavaScript SDK.
Downloads
465
Keywords
Readme
Logger
A flexible and configurable logging utility for the Ping Identity JavaScript SDK.
Features
- Multiple log levels (
error,warn,info,debug,none) - Ability to change log level at runtime
- Support for multiple arguments in log messages
- TypeScript support with proper type definitions
Installation
npm install @ping-identity/effects-loggerUsage
import { logger } from '@ping-identity/effects-logger';
// Initialize the logger with a specific log level
const log = logger({ level: 'info' });
// Basic usage
log.info('Application started');
log.error('An error occurred:', new Error('Something went wrong'));
// Multiple arguments
log.debug('User data:', { id: '123', name: 'John Doe' });
// Change log level at runtime
log.changeLevel('debug'); // Enable debug logs
log.debug('Debug information is now visible');
log.changeLevel('none'); // Disable all logs
log.error('This error will not be logged');Log Levels
The logger supports the following log levels (in order of severity):
error- Critical errors that may cause the application to failwarn- Warnings that don't interrupt application flow but require attentioninfo- General information about application flowdebug- Detailed information for debugging purposesnone- No logs will be output
When a log level is set, only messages of that level or higher severity will be displayed.
API Reference
logger({ level })
Initializes a new logger instance.
Parameters:
level: The initial log level ('error','warn','info','debug', or'none')
Returns: A logger instance with the following methods:
error(...args): Log an error messagewarn(...args): Log a warning messageinfo(...args): Log an informational messagedebug(...args): Log a debug messagechangeLevel(level): Change the current log level
Building
Run nx build logger to build the library.
Running unit tests
Run nx test @forgerock/sdk-logger to execute the unit tests via Vitest.
