npm.io
1.0.5 • Published 5 months ago

micro-logs

Licence
ISC
Version
1.0.5
Deps
0
Size
38 kB
Vulns
0
Weekly
0

micro-logs

A minimal, console-only logging utility that behaves exactly like logs-gateway console logging, with optional fail-fast error throwing.

Features

  • Console-only: Zero support for files, transports, or complex routing.
  • Environment-driven: Configuration via environment variables.
  • Logs-gateway parity: Identical log-level semantics and behavior.
  • Fail-fast: Error logs throw by default (configurable).
  • Zero dependencies: Lightweight and predictable.

Installation

npm install micro-logs

Usage

import { Logger } from 'micro-logs';

const logger = new Logger({
  packageName: 'my-service',
  debugNamespace: 'api:v1' // Optional
});

logger.info('Server started');
logger.debug('Processing request'); // Suppressed by default
logger.error('Database connection failed'); // Throws by default

Configuration

Log Levels

Logs are filtered based on a minimum threshold. Supported levels (ordered):

  1. verbose
  2. debug
  3. info (default)
  4. warn
  5. error

Configure via: {ENV_PREFIX}_LOG_LEVEL (e.g., LOG_LEVEL=debug).

DEBUG Namespace

Enable verbose and debug logs for specific namespaces without lowering the global level.

Configure via: DEBUG (e.g., DEBUG=api:*,auth).

Error Throwing

By default, calling logger.error() will throw an Error.

Configure via: {ENV_PREFIX}_THROW_ERROR (values: true | false).

License

ISC