2010-11-16 37 views
2

有没有JavaScript库可以在加载时执行网页计时?例如,客户呼叫出现性能问题。我们告诉他们打开一个“调试”复选框,它会将浏览器性能信息发送回网络服务器,然后网络服务器将会打电话回家。然后,我们可以看到他们的浏览器中发生了什么。用于收集浏览器端性能信息的JS库(如YSlow或FireBug“Net”?)

我对FireBug“Net”标签或YSlow产生的东西感兴趣,而不需要客户以任何方式安装任何东西或修改浏览器。它是否存在(商业软件是好的)?

回答

0

没有任何软件可以完成我所了解的任务。由于安全问题,我认为记录网络流量无法通过网页上的一般算法完成。事实上,Firebug有一个Bookmarklet version,它被称为网页的一部分,它具有除网络面板以外的大部分功能。

我的建议是网页的自我维护调试模式,因为它似乎是从网站收集数据的唯一方法。这个想法是设置一个简单的定时器并保存页面加载的关键事件,最后将其发送到服务器进行进一步处理。这可以是一个img的简单请求,例如_tracker.gif?onload=4.3&domload=3.21&e1=0.4&e2=1.3

倾听window.onloadDOM ready是相当普遍的任务,并且相对容易。与img.onload处理程序,记录自开始所经过的时间

  • 跟踪图像:

    其他自定义事件可以通过两种方式产生。这个想法是,每个追踪器图像代表页面加载期间的关键事件。

  • 将onload监听器添加到某些资源本身。像大脚本文件或图像一样。

在调试模式下还可能很重要的是捕捉可能的错误。这可以通过window.onerror事件侦听器获得,大多数浏览器都支持这种侦听器。

如果您想更详细地记录网络流量,您也可以将您的AJAX hanlder包装到支持日志记录的管理器对象中。