我想在日志语句中显示文件名

我想在日志语句中显示文件名,第1张

我想在日志语句中显示文件名

您可以使用附加到v8

Error
对象的堆栈跟踪信息来查找调用代码的文件/行。这种方法行之有效,但效果不佳。因此,如果在开发过程中使用它,则在生产时将要禁用它。

因此,您可以执行以下 *** 作:

  var logger_info_old = logger.info;  logger.info = function(msg) {    var fileAndLine = traceCaller(1);    return logger_info_old.call(this, fileAndLine + ":" + msg);  }    function traceCaller(n) {    if( isNaN(n) || n<0) n=1;    n+=1;    var s = (new Error()).stack      , a=s.indexOf('n',5);    while(n--) {      a=s.indexOf('n',a+1);      if( a<0 ) { a=s.lastIndexOf('n',s.length); break;}    }    b=s.indexOf('n',a+1); if( b<0 ) b=s.length;    a=Math.max(s.lastIndexOf(' ',b), s.lastIndexOf('/',b));    b=s.lastIndexOf(':',b);    s=s.substring(a+1,b);    return s;  }


欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/zaji/5173234.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-18
下一篇 2022-11-18

发表评论

登录后才能评论

评论列表(0条)

保存