CatTail
8/3/2016 - 4:37 AM

A little console wrapper to log with filename and line number (without console.log('xxxxx') anymore)

A little console wrapper to log with filename and line number (without console.log('xxxxx') anymore)

var isProduction = process.env.NODE_ENV === 'production'
var methods = ['log', 'info', 'warn', 'error']

if (!isProduction) {
    methods.forEach(function (method) {
        var original = console[method]
        console[method] = function() {
            var error = new Error()
            stack = error.stack.split('\n')
            var args = [].slice.call(arguments)
            args.unshift(stack[2].trim())
            original.apply(console, args)
        }
    })
}
require('./xxxx')

console.log('hello')

console.log('world')
$ node test.js
at Object.<anonymous> (/Users/cattail/workspace/upyun/choppe/test.js:3:9) hello
at Object.<anonymous> (/Users/cattail/workspace/upyun/choppe/test.js:5:9) world