¿Alguien sabe de una manera de guardar la salida de console.log en Chrome en un archivo? ¿O cómo copiar el texto de la consola?
Digamos que está ejecutando algunas horas de pruebas funcionales y tiene miles de líneas de salida de console.log en Chrome. ¿Cómo se guarda o exporta?
google-chrome
console
logging
eeejay
fuente
fuente
Respuestas:
Necesitaba hacer lo mismo y esta es la solución que encontré:
Habilite el registro desde la línea de comando usando las banderas:
--enable-logging --v=1
Esto registra todo lo que Chrome hace internamente, pero también registra todos los
console.log()
mensajes. Se llama al archivo de registrochrome_debug.log
y se encuentra enUser Data Directory
.Filtra el archivo de registro que obtienes para las líneas
CONSOLE(\d+)
.Tenga en cuenta que los registros de la consola no aparecen con
--incognito
.fuente
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --enable-logging --v=1
con el registro guardado en~/Library/Application Support/Google/Chrome/chrome_debug.log
console.log()
líneas no están en ninguna parte de ese archivo. ¿Alguien tiene una solución para esto?Buenas noticias
Las herramientas de desarrollo de Chrome ahora le permiten guardar la salida de la consola en un archivo de forma nativa
Instrucciones para desarrolladores de Chrome aquí .
fuente
{a: 1, b: 2, c: 3, ...}
.Hay un complemento de JavaScript de código abierto que hace exactamente eso, pero para cualquier navegador: debugout.js
Debugout.js registra y guarda console.logs para que su aplicación pueda acceder a ellos. Revelación completa, lo escribí. Formatea diferentes tipos de manera apropiada, puede manejar objetos anidados y matrices, y opcionalmente puede colocar una marca de tiempo al lado de cada registro. También puede alternar el registro en vivo en un lugar y sin tener que eliminar todas las declaraciones de registro.
fuente
He encontrado una manera excelente y fácil para esto.
En la consola, haga clic derecho en el objeto registrado de la consola
Haga clic en 'Almacenar como variable global'
Vea el nombre de la nueva variable, por ejemplo, variableName1
Escriba en la consola: JSON.stringify (variableName1)
Copie el contenido de la cadena variable: por ejemplo, {"a": 1, "b": 2, "c": 3}
fuente
Para un mejor archivo de registro (sin las tonterías de depuración de Chrome) use:
en lugar de lo
--v=1
cual es demasiada información.Seguirá proporcionando los errores y advertencias que normalmente vería en la consola de Chrome.
actualización 18 de mayo de 2020: en realidad, creo que esto ya no es cierto. No pude encontrar los mensajes de la consola dentro de este nivel de registro.
fuente
Esto puede o no ser útil, pero en Windows puede leer el registro de la consola mediante el seguimiento de eventos para Windows
http://msdn.microsoft.com/en-us/library/ms751538.aspx
Nuestras pruebas de integración se ejecutan en .NET, así que utilizo este método para agregar el registro de la consola a nuestra salida de prueba. Hice un proyecto de consola de muestra para demostrar aquí: https://github.com/jkells/chrome-trace
--enable-logging --v = 1 no parece funcionar en la última versión de Chrome.
fuente
Muchas buenas respuestas, pero ¿por qué no usar JSON.stringify (your_variable)? Luego tome el contenido mediante copiar y pegar (eliminar comillas externas). Publiqué esta misma respuesta también en: ¿Cómo guardar la salida de un console.log (objeto) en un archivo?
fuente
Hay otra herramienta de código abierto que le permite guardar todos los
console.log
resultados en un archivo en su servidor: JS LogFlush (plug!).Manifestación
fuente
Si está ejecutando un servidor Apache en su host local (no haga esto en un servidor de producción), también puede publicar los resultados en un script en lugar de escribirlo en la consola.
Entonces, en lugar de
console.log
, puedes escribir:Entonces
save.php
puede hacer estofuente
En Linux (al menos) puede configurar CHROME_LOG_FILE en el entorno para que Chrome escriba un registro de la actividad de la Consola en el archivo nombrado cada vez que se ejecute. El registro se sobrescribe cada vez que se inicia Chrome. De esta manera, si tiene una sesión automatizada que ejecuta Chrome, no tiene que cambiar la forma en que se inicia Chrome, y el registro está allí después de que finaliza la sesión.
exportar CHROME_LOG_FILE = chrome.log
fuente
En estos días es muy fácil: haga clic con el botón derecho en cualquier elemento que se muestre en el registro de la consola y seleccione guardar como y guarde toda la salida del registro en un archivo en su computadora.
fuente
Las otras soluciones en este hilo no funcionaban en mi Mac. Aquí hay un registrador que guarda una representación de cadena intermitentemente usando ajax. usarlo en
console.save
lugar deconsole.log
dependiendo de lo que necesite, puede guardar esa cadena o simplemente
console.log
y copiar y pegar. Aquí hay un ajax para usted en caso de que quiera guardarlo:la
saveLog.php
debe anexar los datos a un archivo de registro en alguna parte. No necesitaba esa parte, así que no la incluiré aquí. :)https://www.google.com/search?q=php+append+to+log
fuente