2012-08-25 12 views
8

Necesito una forma de registrar todos los errores de Javascript que pueden ocurrir en un documento. Obviamente, una llamada de Ajax a la secuencia de comandos de inicio de sesión no es un problema, pero el evento window.onerror no se activa por errores dentro de las funciones o en otros casos en que el navegador o la barra de herramientas del desarrollador web informan un error.Informes de errores de todo el documento de Javascript

Prefiero no usar try/catch porque hay muchos códigos en muchos lugares y me gustaría una solución para todo el documento que informe todos los errores de Javascript.

¿Esto es posible? Veo muchos sitios de alto perfil con errores de Javascript, por lo que obviamente a muchos desarrolladores no les importa o no conocen los errores.

+0

¿Puede hacer este navegador por navegador? por ejemplo, ¿el objeto de la consola en cromo podría darle una lista? –

+0

¿Qué quiere decir navegador por navegador? ¿Cómo accedería a los errores en el objeto de la consola en Chrome? – DMIL

+0

http://getfirebug.com/wiki/index.php/Console_API#console.exception.28error-object.5B.2C_object.2C_....5D.29 - aunque parece que no hace lo que usted desea. No estoy seguro de que sea posible –

Respuesta

1

Primero, lo siento si he entendido mal su pregunta y sus calificaciones.

Parece que no eres familiar con DeveloperTools, y será mejor que tengas que:) Por ejemplo, en Chrome puedes abrir DeveloperTools presionando F12 o Ctrl + Shift + J. Todos sus errores de JavaScript anteriores y futuros se mostrarán en la pestaña Consola a medida que ocurran.

+0

Sí, has entendido mal. :) Quiero que la página informe los errores de Javascript que pueden ocurrirle a los visitantes del sitio; luego la página detecta el error, lo envía a través de Ajax a un script y el script me envía un correo electrónico diciéndome "Un visitante acaba de tener un error de Javascript 'someerror' en la página 'someurl' en línea #someline "junto con su agente de usuario. Realmente hice todo eso, y funciona en algunos errores de Javascript, pero no en la mayoría (por ejemplo, en las funciones internas) porque window.onerror no detecta esos errores. – DMIL

1

En realidad es posible hacer algunos inserción automática try-catch, de una manera en la que no necesita modificar su código. No es fácil.

Puede probar mi proyecto Muscula, que logs JavaScript errors con la inserción try-catch y vuelve a onerror cuando no es posible.

Cuestiones relacionadas