如何使用Ember.Logger获取与console.log相同的输出?

时间:2014-11-01 02:30:39

标签: javascript google-chrome logging ember.js console

我试图理解为什么要使用Ember.Logger而不是直接使用console.log。问题是,无论我从哪里登录(从任何文件),输出都显示日志来自:

ember.js?body=1:15359

然而,如果我使用console.log,我会得到一个更有用的日志位置,包括记录的文件和文件中的位置:

application.js?body=1:9

有没有办法使用Ember.Logger来显示位置和信息?文档表明,应该" [o]以此来提供更强大的日志功能。"我是否应该假设这应该是为了覆盖并制作一些非常奇特的东西而不只是用于控制台的基本日志?

1 个答案:

答案 0 :(得分:1)

要直接回答您的问题,不,我不认为有办法让Ember记录器报告正确的行号。登录到控制台只是一个常用的API,it's not a Javascript standard。因此,浏览器会自动确定日志语句的来源,并且几乎不可能在其周围包含一层间接。可能会有一些聪明的嘀嗒声,但我不知道。

但更重要的是,我不认为Ember的记录器真正意味着第三方消费。它主要由Ember内部使用,因此您覆盖它的主要原因是将Ember的日志记录重定向到其他位置。在我看来,处理自己的应用程序日志记录似乎是一种相当差的方法。