Was das Tool macht
Fügen Sie die Ausgabe von exception.ToString() ein, und das Tool teilt sie in eine Karte pro Exception auf: die äußere Exception, jede innere Exception nach ---> und jeden Eintrag einer AggregateException. Die innerste Exception wird als Ursache markiert, der erste Frame aus Ihrem eigenen Code als wahrscheinlicher Ursprung.
Funktionen
- Entwirrter async-Code: Aus
<GetOrderAsync>d__5.MoveNext()wirdasync OrderService.GetOrderAsync(), aus<>c__DisplayClass0_0.<Main>b__0ein benanntes Lambda, und lokale Funktionen erhalten ihren echten Namen. Frames vonTaskAwaiter,ExecutionContextundExceptionDispatchInfosowie die Markierungen--- End of stack trace from previous location ---werden ausgeblendet. Fahren Sie mit der Maus über einen Frame, um den Originaltext zu sehen. - Nur mein Code: Folgen von Framework-Frames werden zu aufklappbaren Gruppen „n Framework-Frames“ zusammengefasst. Die Präfixliste (
System.,Microsoft.,Npgsql.…) ist bearbeitbar. - Verträgt unsaubere Eingaben: Ausgaben von Serilog und Microsoft.Extensions.Logging, CLEF-/JSON-Logzeilen (
@x), Exception-JSON von Application Insights, Traces mit maskiertem\r\n, Text der ASP.NET Core Developer Exception Page sowie die Formate von .NET Framework und Mono. - Datei und Zeile für jeden Frame. Ein Klick kopiert
path:line. - Exportieren Sie den bereinigten Trace als Text oder als Markdown, fertig für ein GitHub- oder Azure-DevOps-Issue.
So verwenden Sie es
- Fügen Sie die Exception ein oder öffnen bzw. ziehen Sie eine Logdatei hinein.
- Lesen Sie zuerst den hervorgehobenen Ursprungs-Frame und klappen Sie Framework-Frames nur bei Bedarf auf.
- Kopieren Sie den bereinigten Text oder das Markdown in Ihr Ticket.
Datenschutz
Das Parsen findet in Ihrem Browser statt, nichts wird hochgeladen. Ihre letzte Eingabe und die Präfixliste werden im lokalen Speicher gehalten; Leeren entfernt die Eingabe.