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

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


当前回答

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

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

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

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

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

其他回答

有一个开源的javascript插件可以做到这一点,但适用于任何浏览器- debugout.js

debug .js记录并保存控制台。日志,以便应用程序可以访问它们。坦白说,是我写的。它可以适当地格式化不同的类型,可以处理嵌套对象和数组,还可以在每个日志旁边添加时间戳。您还可以在一个地方切换实时日志记录,而不必删除所有日志记录语句。

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

出口CHROME_LOG_FILE = chrome.log

一个好消息

Chrome开发工具现在允许您将控制台输出保存到本地文件

打开控制台 右键单击 选择“另存为…”

Chrome开发者说明在这里。

如果在本地主机上运行Apache服务器(不要在生产服务器上执行此操作),还可以将结果发布到脚本中,而不是将其写入控制台。

所以,你可以这样写:

JSONP('http://localhost/save.php', {fn: 'filename.txt', data: json});

那么save。php就可以做到这一点

<?php

 $fn = $_REQUEST['fn'];
 $data = $_REQUEST['data'];

 file_put_contents("path/$fn", $data);

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

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

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