This is a minimal logging framework for javascript. It implements a subset of the log4javascript API, which itself is inspired by log4j. Since log4javascript is huge (180kB) and our needs were small we wrote this 8kB replacement which still supports configurable log levels and hierarchical loggers.
logging can be used both standalone or as an AMD
module. If you do not use AMD
the logging API is accessible via a global logging object.
logging.info("Hello, world!");
});If you are using an AMD system such as RequireJS logging will registered as a module and no globals will be installed.
define(["logging"], function(logging) {
logging.info("Initialisating MyModule");
});To facilitate debugging you can change the default log level through the URL
query string by adding loglevel options.
-
http://www.example.com/?loglevel=DEBUGchanges the default log level toDEBUG. -
http://www.example.com/?loglevel-inject=DEBUGchanges the log level for just the inject pattern toDEBUG. -
http://www.example.com/?loglevel=ERROR&loglevel-inject=INFOchanges the standard log level error, but enables messages at theINFOlevel for the inject pattern.
This is an object which defines all available logging levels: DEBUG,
INFO, WARN, ERROR and FATAL.
-
enabled(boolean): flag indicating if logging should be enabled
This function disables or enables all logging functionality.
-
level: new logging level
Use this function to change the logging level. The default level is INFO. To change the level to DEBUG you can use this:
logging.setLevel(logging.Level.DEBUG);Please note that this only changes the root logging level. You can set a different logging for individual lggers as well:
var log = logging.getLogger("MyModule");
log.setLevel(logging.Level.DEBUG);-
name(string): name of the logger
Retrieve, and optionally create, a named logger instance.
The logging object (log in the code example) exposes several methods to log
information at various log levels:
-
debugis used to log debug messages. There are normally not shown. -
infois used to log informational messages. These are normally not shown. -
warnis used to log warnings. These are normally shown. -
erroris used to log errors. There are normally shown. -
fatalis used to log fatal errors. There are normally shown.
