Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google chrome 从非技术用户的开发人员控制台获取错误的最简单方法_Google Chrome_Google Chrome Devtools_Qa - Fatal编程技术网

Google chrome 从非技术用户的开发人员控制台获取错误的最简单方法

Google chrome 从非技术用户的开发人员控制台获取错误的最简单方法,google-chrome,google-chrome-devtools,qa,Google Chrome,Google Chrome Devtools,Qa,我们目前正在对一组用户进行内部企业web应用程序(react/redux)的测试。当我尝试使用window.onerror将错误记录到服务器时,有一种情况是应用程序可能会在不记录的情况下崩溃(例如:网络/身份验证问题)。在这种情况下,我希望能够捕获devtools控制台输出的转储 组织中的每个人都在运行chrome,所以我可以提供打开devtools和复制/粘贴的说明(我担心有些用户可能无法理解),但我希望有一个更简单的方法,获取此信息的方式较少?我对您遇到的问题的理解是,当发生错误时,您可能没

我们目前正在对一组用户进行内部企业web应用程序(react/redux)的测试。当我尝试使用
window.onerror
将错误记录到服务器时,有一种情况是应用程序可能会在不记录的情况下崩溃(例如:网络/身份验证问题)。在这种情况下,我希望能够捕获devtools控制台输出的转储


组织中的每个人都在运行chrome,所以我可以提供打开devtools和复制/粘贴的说明(我担心有些用户可能无法理解),但我希望有一个更简单的方法,获取此信息的方式较少?

我对您遇到的问题的理解是,当发生错误时,您可能没有连接,因此您依赖于登录控制台作为备用

<>为了以更稳定的方式向服务器获取错误,可以考虑在发生错误时存储错误。如果您说应用程序可能会在不同时间崩溃,那么最好将错误存储在浏览器存储中,例如本地存储或IndexedDB

然后,您可以使用轮询功能检查浏览器存储中是否存在错误,并向日志服务器发出post请求。只有在响应成功时才应从存储中删除项目,否则将在下一次内部响应时重试

您可以决定是否在关闭选项卡(或新会话启动时)清除存储中的错误,例如会话存储,或重新启动轮询。或者,您可能会丢弃带有时间戳的错误,该时间戳对您来说太旧了,无法关心。无论哪种方式,您都可以选择在将来恢复错误


我只会在启用测试版功能切换时启用此功能,因为该应用程序可能会因轮询浏览器存储而受到性能影响

不确定这是否属于堆栈溢出。。。但它似乎不适合其他任何地方。似乎解决方案可能是过程、扩展或编程,可能会被否决而被遗忘。。。也许只需要制作一个一页的文档,其中包含一些解释按F12键的屏幕截图,单击控制台按钮并复制错误?您还可以设置另一台服务器(不受相同连接问题的影响,祈祷好运),该服务器只用于发送电子邮件,并将有错误的服务器ping到电子邮件。@JasonB可能是最好的路由(doc)。我希望在书签中加入像javascript这样的光滑的东西(不确定是否允许这样做),可以将所有内容复制到剪贴板上。似乎这是各地开发人员都必须解决的问题……这是一个很好的解决方案“理想”的解决方案。不幸的是,我运行的平台使得实现类似的东西非常具有挑战性(我无法控制cookie或会话管理)。不过,即使是这个错误处理代码也完全有可能抛出错误,在这种情况下,从console@NSjonas如果应用程序以匿名模式打开,它肯定会抛出错误,但如果不这样做,则假定写入浏览器存储没有问题,您应该得到和登录控制台相同的覆盖率。但无论如何,如果由于某些Chrome策略,您不能使用浏览器存储,那么这也没用。您始终可以通过Chrome扩展中的Chrome调试协议获取控制台消息,并将错误发送到另一个web服务器,但扩展可能也受到限制。