A flexible and configurable logging utility for the Ping Identity JavaScript SDK.
error, warn, info, debug, none)npm install @ping-identity/effects-logger
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');
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 outputWhen a log level is set, only messages of that level or higher severity will be displayed.
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 levelRun nx build logger to build the library.
Run nx test @forgerock/sdk-logger to execute the unit tests via Vitest.