backport of util.debuglog from node v0.11
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
LICENSE debuglog extracted from node v0.11 Jul 5, 2013

debuglog - backport of util.debuglog() from node v0.11

To facilitate using the util.debuglog() function that will be available when node v0.12 is released now, this is a copy extracted from the source.


Return util.debuglog, if it exists, otherwise it will return an internal copy of the implementation from node v0.11.


  • section {String} The section of the program to be debugged
  • Returns: {Function} The logging function

This is used to create a function which conditionally writes to stderr based on the existence of a NODE_DEBUG environment variable. If the section name appears in that environment variable, then the returned function will be similar to console.error(). If not, then the returned function is a no-op.

For example:

var debuglog = util.debuglog('foo');

var bar = 123;
debuglog('hello from foo [%d]', bar);

If this program is run with NODE_DEBUG=foo in the environment, then it will output something like:

FOO 3245: hello from foo [123]

where 3245 is the process id. If it is not run with that environment variable set, then it will not print anything.

You may separate multiple NODE_DEBUG environment variables with a comma. For example, NODE_DEBUG=fs,net,tls.