Installation â
bash
npm install --save logmojiUsage â
javascript
const logger = require("logmoji")({
timestamp: false,
disablePrefixText: false,
logSymbols: {
success: "ðĢïļ",
},
});
logger.success("You did it!");
// Output: ðĢïļ You did itAvailable Log Functions â
javascript
logger.success("You did it!");
// Output: â
You did it
logger.fail("You're suck!");
// Output: ð You're suck
logger.error("Oh crap!");
// Output: ðĻ Oh crap!
logger.warn("Oops!");
// Output: ð Oops!
logger.warning("Heads up!");
// Output: â ïļ Heads up!
logger.info("FYI");
// Output: ð Info: FYI
logger.log("Something happened");
// Output: ð Log: Something happened
logger.alert("Action required!");
// Output: ðĄ Alert: Action required!
logger.crit("System is down!");
// Output: ðą Crit: System is down!
logger.debug("x = 42");
// Output: ð ïļ Debug: x = 42
logger.silly("wheee");
// Output: ðĪŠ Silly: wheeeContext Logger â
Use createContext to create a child logger that prefixes every log with a context label. Useful for identifying which module or service a log comes from.
javascript
const authLogger = logger.createContext("Auth");
authLogger.info("User logged in");
// Output: ð Info: Auth User logged in
authLogger.error("Token expired");
// Output: ðĻ Error: Auth Token expiredNested contexts â
createContext can be chained to build hierarchical labels. Each level is joined with >.
javascript
const httpLogger = logger.createContext("HTTP");
const reqLogger = httpLogger.createContext("GET /users");
reqLogger.info("Request received");
// Output: ð Info: HTTP > GET /users Request received
reqLogger.error("Unauthorized");
// Output: ðĻ Error: HTTP > GET /users UnauthorizedFiltering by log level â
Use minLevel to suppress output below a certain severity:
javascript
const logger = require("logmoji")({ minLevel: "warn" });
logger.debug("ignored"); // suppressed
logger.info("also ignored"); // suppressed
logger.warn("shown"); // shown
logger.error("shown"); // shownLevel order (least â most severe): silly â debug â log â info â success â warn â warning â fail â alert â error â crit
Allowlist filtering â
Use levels to show only specific levels regardless of severity order:
javascript
const logger = require("logmoji")({ levels: ["debug", "error"] });
logger.debug("shown"); // shown
logger.info("hidden"); // hidden
logger.error("shown"); // shownIf both levels and minLevel are set, levels takes precedence.