Node.js 有没有办法知道在nodejs中从哪个文件调用函数?

Node.js 有没有办法知道在nodejs中从哪个文件调用函数?,node.js,Node.js,我正在为记录器编写一个模块,希望它在每次调用函数dlog()时都添加一个前缀,并使用调用该函数的文件名。现在我每次都要这样称呼它: dlog(__filename + " log text"); 是否有一种方法可以检测调用函数的文件名,而不使用此方法?来自: }来自: } function _getCallerFile() { try { var err = new Error(); var callerfile; var curre

我正在为记录器编写一个模块,希望它在每次调用函数
dlog()
时都添加一个前缀,并使用调用该函数的文件名。现在我每次都要这样称呼它:

dlog(__filename + " log text");
是否有一种方法可以检测调用函数的文件名,而不使用此方法?

来自:


}

来自:


}

function _getCallerFile() { try { var err = new Error(); var callerfile; var currentfile;

    Error.prepareStackTrace = function (err, stack) { return stack; };

    currentfile = err.stack.shift().getFileName();

    while (err.stack.length) {
        callerfile = err.stack.shift().getFileName();

        if(currentfile !== callerfile) return callerfile;
    }
} catch (err) {}
return undefined;