2012-04-30 4 views
16

Ich möchte alle JS-Fehler in meinem Projekt während der Beta-Testzeit protokollieren. Jetzt mache ich es auf die folgende Weise:Log Javascript Fehler

window.onerror = myErrHandler; 

function myErrHandler(message, url, line) 
{ 
    $.ajax({ 
     cache: false, 
     type: "post", 
     data: {error:message, url:url, line:line, brouser:navigator.userAgent}, 
     url: "/Home/LogJavaScript/", 
     async: true 
    }); 
    return true; 
} 

Aber dieser Weg konnte nicht helfen, irgendwelche Informationen über Aufrufstapel zu erhalten. Informationen über Fehler in jQuery oder anderen äußeren Skripts konnten daher nicht viel helfen.

Gibt es eine Möglichkeit, diese Protokollierung zu verbessern?

+3

: Dieser Link würde helfen http://StackOverflow.com/Questions/147891/javascript-exception-stack-trace – dhinesh

Antwort

10

Werfen Sie einen Blick auf stacktrace.js, das sollte den Trick tun.

+0

Gibt es Beispiele, wo Sie den StackTrace in einem Datenspeicher (Ajax) speichern können? –

+2

'stacktrace.js' wird Ihnen nicht helfen mit' window.onerror'. Es gibt Ihnen den Stack des Onerror, nicht den eigentlichen Fehler. Wenn Sie den Stapel möchten, müssen Sie versuchen/fangen. https://github.com/eriwen/javascript-stacktrace/issues/26#issuecomment-2410664 – bendytree

0

Sie könnten auch ein Projekt namens Muscula anschauen, das logs your JavaScript errors Es ist einfach einzurichten, fügen Sie einfach ein Skript-Snippet und Sie protokollieren. Es ist kostenlos :-)

+2

benötigt ein besseres Website-Design. –

+0

Es ist nicht kostenlos. Es ist 14 $ pro Monat. – Rocklan

+0

Es wurde bezahlt nachdem ich gepostet habe. Auch ich habe es vor einem Jahr oder mehr verkauft. –

1

ExceptionHub ein weiterer guter Drop-in ist (gegen Entgelt) Dienst, die JS Fehler protokolliert, mit Stack-Traces, gruppiert sie usw.

0

einen Blick auf JsLog.me Service in Anspruch nehmen. Es fängt Fehler auf und sammelt ganze Client-Logs, die hilfreich sein können, um die Bug-Reproduktion während des Beta-Tests wiederherzustellen. Es funktioniert auch für Hybridanwendungen (PhoneGap/Cordova).

1

Sie könnten auch versuchen https://www.atatus.com/. Zusammen mit den Stack-Traces erfasst Atatus alle Aktionen Ihrer Besucher in einem klaren Bild, das zum Fehler führt. Neben der JavaScript-Fehlerverfolgung bietet Atatus auch Real User Monitoring, AJAX (XHR) Monitoring und Transaktionsüberwachung.