warn log imprimir error consola chrome javascript firefox debugging

log - Inicie sesión en Firefox Error Console desde JavaScript



imprimir en consola javascript (9)

AFAIK, no es posible. Pero si estás interesado en cómo las extensiones en Firefox interactúan con la consola de error, mira esto .

¿Es posible agregar mensajes a la consola de error incorporada de Firefox desde el código JavaScript que se ejecuta en las páginas web?

Sé que tengo Firebug, que proporciona un objeto de console y su propia consola de error, pero estaba buscando una solución rápida anteriormente y no pude encontrar nada.

Supongo que podría no ser posible en absoluto, para evitar que las páginas web maliciosas envíen spam al registro.


Esta función no requiere ninguna extensión ni biblioteca. Sin embargo, otorga privilegios completos al sitio web relevante. No te preocupes ya que eres quien lo está desarrollando, ¿verdad?

// Define mylog() function to log to Firefox'' error console if such a // thing exists function defineMyLog() { // Provide a useless but harmless fallback mylog = function(msg) { }; // return; // disable in production if (typeof(netscape) === "undefined") { // alert("Logging implemented only for Firefox"); return; } // The initial auth popup can be avoided by pre-setting some magic user_pref // ( "capability.principal.codebase.p0.granted", "UniversalXPConnect"), etc. try { netscape.security.PrivilegeManager.enablePrivilege(''UniversalXPConnect''); } catch (e) { // User has denied privileges // alert(e.name + ": " + e.message); return; } ffconsoleService = Components.classes["@mozilla.org/consoleservice;1"] .getService(Components.interfaces.nsIConsoleService); mylog = function (msg) { netscape.security.PrivilegeManager.enablePrivilege(''UniversalXPConnect''); ffconsoleService.logStringMessage(new Date().toLocaleTimeString() + ": " + msg); } mylog("Firefox logging function has been defined"); // window.open("javascript:"); // this URL does not work anymore? }


No puede escribir en la consola directamente desde JavaScript que no es de confianza (por ejemplo, scripts que provienen de una página). Sin embargo, incluso si la instalación de Firebug no le atrae, recomendaría revisar Firebug Lite , que no requiere instalación en el navegador (ni siquiera requiere Firefox). Es un script que puedes incluir en cualquier página web (incluso dinámicamente), que te dará algunas funciones básicas de Firebug (como console.log() ).


Sí, puedes = P

function log(param){ setTimeout(function(){ throw new Error("Debug: " + param) },0) } //Simple Test: alert(1) log(''This is my message to the error log -_-'') alert(2) log(''I can do this forever, does not break'') alert(3)

Actualización a una función real

Este es un truco simple, solo por diversión.


Si define una función global que verifica la existencia de window.console, puede usar Firebug para el seguimiento y aún así jugar bien con otros navegadores y / o si desactiva el seguimiento de la consola de Firebug:

debug = function (log_txt) { if (typeof window.console != ''undefined'') { console.log(log_txt); } } debug("foo!");


Si estás interesado, mira un script que escribí: es un reemplazo Firebug "barato" que no interfiere con ninguna consola normal (como Safari o Chrome) pero sí lo hace con casi todos los métodos de Firebug:

http://code.google.com/p/glentilities/

Mira debajo del capó y verás lo que quiero decir con "barato". :-)

Combínalo con los serializadores JSON de YUI o json.org para replicar console.dir.

Firebug y Firebug Lite son definitivamente mejores GUIs, pero utilizo mi propia computadora todo el tiempo para mantener el registro de forma segura incluso para el código de producción, sin comentarios constantes y sin comentarios.


Simplemente instalaría Firebug y usar console.log . Sin embargo, si no puedes hacer eso, siempre puedes lanzar un error:

throw "foobar"; throw new Error("bazquux");

Por supuesto, esto lo sacará del código que está ejecutando actualmente, por lo que no puede usarlo para el registro detallado, pero si puede evitarlo, creo que es la única manera de obtener algo cerrado de la caja .


Tuve un problema hoy y me di cuenta de que la consola en Firebug tiene pestañas diferentes, y la mía estaba en Información de depuración, y debes seleccionar la opción TODAS para que console.log funcione sin errores de trowing. Simple como este! ; ^)


window.console no está definido en Firefox 4 beta 6 incluso si Firebug 1.6X.0b1 está habilitado y abierto, probablemente debido a problemas de privilegios que otros debaten. Sin embargo, Firefox 4 tiene una nueva Herramienta> Consola web, y si está abierta tiene un objeto window.console y un código JavaScript que no es de confianza en la página puede usar console.log (). La Consola web está en constante cambio (consulte https://wiki.mozilla.org/Firefox/Projects/Console ), es posible que deba cambiar la configuración denominada devtools. * En about: config, YMMV.