credit-logger
v1.1.1
Published
A flexible logging utility for credit node projects
Maintainers
Readme
credit-logger
A flexible, structured logging utility for Credit Node.js projects based on Winston with context support.
Installation
npm install credit-loggerQuick Start
import { createLogger } from 'credit-logger';
// Create a logger instance
const logger = createLogger({
applicationName: 'my-service',
level: 'debug'
});
// Use the logger
logger.info('Application started');
logger.debug('Debug information', { key: 'value' });
logger.error('Error occurred', { error: 'details' });Detailed Usage
Basic Usage
import { createLogger } from '@credit/logger';
// Create a logger with default options
const logger = createLogger();
// Log messages with different levels
logger.info('This is an info message');
logger.error('This is an error message', { error: new Error('Something went wrong') });
logger.debug('This is a debug message', { user: { id: 123, name: 'John' } });Custom Configuration
import { createLogger } from '@credit/logger';
// Create a logger with custom options
const logger = createLogger({
level: 'debug',
format: 'pretty',
serviceName: 'user-service',
transports: ['console', 'file'],
fileOptions: {
directory: 'logs',
filename: 'app-%DATE%.log',
maxSize: '20m',
maxFiles: 30
}
});
logger.info('Server started', { port: 3000 });Configuration Options
| Option | Type | Default | Description | |--------|------|---------|-------------| | level | string | 'info' | Log level ('error', 'warn', 'info', 'http', 'verbose', 'debug', 'silly') | | format | string | 'json' | Log format ('json', 'simple', 'pretty') | | serviceName | string | 'service' | Service name to include in logs | | transports | string[] | ['console'] | Transports to use ('console', 'file') | | consoleOptions | object | {} | Console transport specific options | | fileOptions | object | {} | File transport specific options |
File Transport Options
| Option | Type | Default | Description | |--------|------|---------|-------------| | directory | string | 'logs' | Directory to store log files | | filename | string | '%DATE%.log' | Filename pattern | | maxSize | string | '10m' | Maximum file size before rotation | | maxFiles | number | 14 | Maximum number of files to keep |
License
ISC
