以编程方式保存chrome的控制台日志

有没有在javascript或nodejs的方式来编程取得所有在铬的控制台的一切,所以我可以将其保存到文件或数据库?

在执行你想要logging的代码之前,用一个将它引发到一个数组(或其他地方)的console.log

ECMAScript 6中的示例:

 var logs = []; var oldConsoleLog = console.log; console.log = function(...args) { logs.push(args); oldConsoleLog.call(this, args); } 

将你想观察的方法隐藏起来,并用他们的数据做一些事情,例如

 if (console) (function (obj, types, callback) { var slice = Array.prototype.slice, // slice used later to protect args from change i; function wrap(type, method, callback) { return function () { callback.call(this, type, slice.call(arguments), method); return method.apply(this, arguments); }; } for (i = 0; i < types.length; ++i) obj[types[i]] = wrap(types[i], obj[types[i]], callback); }( console, ['log', 'warn', 'error'], function (type, args, meth) { // this is the callback, do something with the data // **don't use console here unless you want an infinite loop ;) alert(type); } )); 

这里的IIFE是完全通用的,你可以用它来影射任何你想要的对象的方法

在这里,我把callback作为警报types,即将警报日志,如果您使用console.log然后它login到控制台

 // with callback defined above, console.log('foo'); // alerts "log" then logs "foo" 

在Chrome控制台中获取所有内容的另一种方法是使用http://www.consoleexport.com您input您的URL并提交&#x3002; 它将显示一个表格中的所有控制台条目,您可以复制并粘贴到电子表格中。 或者,您可以select将控制台条目导出为.txt(制表符分隔)或.xlsx格式的文件。