有人知道一种方法来保存控制台.log输出在Chrome到一个文件?或者如何从控制台复制文本?

假设你正在运行几个小时的功能测试,并且在Chrome中有数千行console.log输出。如何保存或导出?


当前回答

很多很好的答案,但为什么不只是使用JSON.stringify(your_variable) ?然后通过复制粘贴(删除外部引号)获取内容。我也在:如何将console.log(对象)的输出保存到文件中?

其他回答

使用下面的命令创建一个批处理文件,并将其保存为桌面中的ChromeDebug.bat。

启动chrome——enable-logging——v=1

关闭所有其他Chrome选项卡和窗口。 双击ChromeDebug.bat文件,将打开Chrome浏览器,并在任务栏中显示带有Chrome图标的命令提示符。 所有的web应用程序日志将存储在下面的路径。 在“运行命令”中输入以下路径,打开chrome日志文件

%LocalAppData%\Google\Chrome\User Data\chrome_debug.log

我找到了一个很好很简单的方法。

在控制台-右键单击控制台日志对象 点击“存储为全局变量” 查看新变量的名称-例如,它是variableName1 在控制台中输入:JSON.stringify(variableName1) 复制变量字符串内容:例如{"a":1,"b":2,"c":3}

使用JSON在线编辑器: 例如,https://jsoneditoronline.org/

我需要做同样的事情,这是我找到的解决方案:

从命令行使用标志启用日志记录: ——启用日志记录——v = 1

这将记录Chrome内部所做的一切,但它也记录所有console.log()消息以及。日志文件名为chrome_debug.log,位于用户数据目录,可以通过提供——User - Data -dir=PATH来覆盖。

过滤日志文件中包含CONSOLE(\d+)的行。

注意,控制台日志不会以——incognito显示。

在Linux上(至少),您可以在环境中设置CHROME_LOG_FILE,让chrome每次运行时都将控制台活动的日志写入命名文件。每次chrome启动时,日志都会被覆盖。这样,如果你有一个运行chrome的自动会话,你不需要改变chrome启动的方式,并且会话结束后日志就在那里。

出口CHROME_LOG_FILE = chrome.log

为了更好的日志文件(没有chrome调试的废话)使用:

--enable-logging --log-level=0

而不是 -v=1,信息量太大了。

它仍然会提供错误和警告,就像你通常在Chrome控制台中看到的那样。

2020年5月18日更新:实际上,我认为这不再是真的。无论日志级别是什么,我都找不到控制台消息。