@noego/logger
v0.0.2
Published
A flexible logging library for Node.js
Readme
@noego/logger
Lightweight logging for Node.js with:
- level filtering (
TRACEtoFATAL) - named loggers
- contextual metadata
- pluggable transports
- optional
@noego/iocintegration
Install
npm install @noego/loggerQuick Start
import { getLogger, configureLogging, LogLevel } from "@noego/logger";
configureLogging({
level: LogLevel.INFO,
serviceName: "my-service",
});
const logger = getLogger("api");
logger.info("Server started", { port: 3000 });
logger.error("Request failed", new Error("boom"));Context and Named Loggers
const base = getLogger("http").withContext({ requestId: "req_123" });
base.info("Incoming request");
base.named("auth").warn("Invalid token", { userId: "u_42" });IoC Integration
import { createContainer } from "@noego/ioc";
import { registerLoggerFactory } from "@noego/logger/ioc";
const container = createContainer();
registerLoggerFactory(container, Symbol.for("app:logger"), "app");API
getLogger(name)-> logger instanceconfigureLogging(options)-> configure global managershutdown()-> close all transportsConsoleTransport-> default console transport implementation
Environment Variables
LOG_LEVEL(default: inferred by library, typicallyINFO)SERVICE_NAME(default:noego)NODE_ENV(default:development)
