Skip to content

Instantly share code, notes, and snippets.

@fdn
Last active August 29, 2015 14:01
Show Gist options
  • Save fdn/85563337ca5cd815ca6e to your computer and use it in GitHub Desktop.
Save fdn/85563337ca5cd815ca6e to your computer and use it in GitHub Desktop.
Simple fork of console.log with call location to add grouping. Grouping helps cut down on the visual noise in the log.
/**
* Console.log with call location and grouping to reduce log noise.
* Apply directly to code once.
*
* Original: http://remysharp.com/2014/05/23/where-is-that-console-log/
*/
var groupable = typeof console.groupCollapsed !== 'undefined';
['log', 'warn'].forEach(function(method) {
var old = console[method];
console[method] = function() {
var stack = (new Error()).stack.split(/\n/);
// Chrome includes a single "Error" line, FF doesn't.
if (stack[0].indexOf('Error') === 0) {
stack = stack.slice(1);
}
var args = [].slice.apply(arguments).concat([stack[1].trim()]);
if (groupable) {
console.groupCollapsed.apply(console, arguments);
var ret = old.call(console, stack[1].trim());
console.groupEnd();
return ret;
} else {
return old.apply(console, args);
}
};
@kjellski
Copy link

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment