Trotz guter Tests kommt es immer wieder vor das ein Javascript beim Besucher nicht so ausgeführt wird wie erwartet. Das kann viele Ursachen haben wie z.B. nicht erwartete Eingaben des Users oder Browserplugins die bestimmte Aktionen blocken. Diese Fehler zu erkennen ist ohne Hilfsmittel unmöglich. Aus diesem Grund gibt es viele Error-Tracking Services für Javascript. Mit diesem Blogpost möchte ich kurz zeigen wie man Analytics von Google dafür nutzen kann.
Bevor man die Fehlerdaten allerdings überhaupt irgendwo hinschicken kann muss man erstmal mitbekommen das ein Fehler im Javascript überhaupt passiert ist. Dafür gibt es nützlicherweise die window.onerror Funktion.
window.onerror = function (msg, file, line) {}
Diese Funktion nimmt den Error mit einer Meldung, dem Dateinamen und der entsprechenden Codezeile entgegen. Das entspricht ungefähr der Fehlermeldung in der Konsole. So bekommt man auf einfachste Weise die nötigen Informationen zum Fehler. Jetzt nur noch als Event zu Analytics pushen.
window.onerror = function (msg, file, line) { _gaq.push([ '_trackEvent', 'JavaScript Exception', msg, file+ ': ' line, true ]); }
Davon ausgehen das Analytics korrekt auf der eigenen Seite eingebunden ist sendet dieses Snippet nun alle Javascript Fehler des Browser an Analytics. Dort kann man die Fehler auswerten und die Erkenntnisse nutzen um die eigenen Scripte besser zu machen.