Absturzberichte

Was die Station behält, wenn sie unerwartet beendet wird, was sie sendet und wann sie fragt, und die beiden Diagnosebefehle, die ein Entwicklungsstand trägt.

Als Markdown ansehen

Absturzberichte ist die eine Zeile der Gruppe DIAGNOSE auf der Seite Einstellungen. Ein Absturz wird nie gesendet, während die Anwendung heruntergeht: er wird in eine Datei aufgenommen, und der nächste Start sendet ihn entweder oder zeigt ihn Ihnen und fragt. Dieser Abschnitt hält den einen Schalter, der darüber entscheidet. Die Seite braucht die Berechtigung Einstellungen ändern.

Absturzberichte automatisch senden

Feld Was es ist Werte / Vorgabe Wirkung
Absturzberichte automatisch senden "Wenn die Anwendung abstürzt, den Bericht beim nächsten Start ohne Nachfrage senden. Aus: der Bericht wird Ihnen gezeigt und Sie werden zuerst gefragt." Ein oder aus. Aus als Vorgabe. Ein: der nächste Start sendet den aufgenommenen Bericht still und löscht ihn, sobald der Server ihn angenommen hat. Aus: der nächste sichtbare Start öffnet den Dialog zur Einwilligung.

Solange die Runtime gestoppt ist, wird diese Seite gar nicht gezeichnet (siehe Einstellungen). Dieselbe Einwilligung wird im Dialog selbst angeboten, als Kontrollkästchen "Absturzberichte immer automatisch senden", und es dort zu setzen schaltet diesen Schalter ein. Unter dem Schalter sagt die Karte: "Um einen Fehler zu melden, eine Verbesserung vorzuschlagen oder einen Treiber anzufragen, nutzen Sie die Seite Konto." Dieses Formular ist Rückmeldungen, denn es sendet mit dem Ganter-Konto.

Was ein Bericht enthält

Wenn ein unbehandelter Fehler die Anwendung zu Fall bringt, schreiben die globalen Behandlungen eine Datei, crash\pending-crash.json unter der Datenwurzel der Station, und halten nur den jüngsten Absturz. Sie enthält:

  • die Version der Anwendung und die Version von Windows;
  • wo der Fehler gefangen wurde (Dispatcher, AppDomain, TaskScheduler oder Startup bei einem Start, der nicht fertig wurde);
  • den Typ der Ausnahme, ihre Nachricht und den vollständigen Text des Stapels, innere Ausnahmen eingeschlossen;
  • die letzten 60 Zeilen der neuesten Protokolldatei, als Zusammenhang, der zum Fehler führt;
  • den Zeitpunkt, an dem es geschah.

Bevor sie geschrieben wird, werden der Windows-Benutzername und der Profilpfad überall durch <user> und <userprofile> ersetzt. Diese Bereinigung ist ein Auffangnetz, keine Zusicherung: frei geschriebene Protokollzeilen können andere Namen tragen, und genau deshalb zeigt der Dialog den ganzen Inhalt, bevor etwas die Station verlässt.

Bei ausgeschaltetem Schalter öffnet der erste sichtbare Start nach einem Absturz Absturzbericht senden? über der Anwendung: "Ganter Lab wurde beim letzten Mal unerwartet beendet. Das Senden dieses Berichts hilft uns, die Ursache zu beheben. Er enthält den Fehler und einen kurzen Ausschnitt des jüngsten Protokolls. Prüfen Sie ihn unten, bevor Sie ihn senden." Das Feld Einzelheiten zum Absturz zeigt genau das, was gesendet würde, mit einer Schaltfläche Kopieren, die denselben Text in die Zwischenablage legt (für einen Moment "Kopiert"), damit Sie ihn durchsuchen oder dem Support geben können. Verweigert die Zwischenablage, sagt die Schaltfläche stattdessen "Kopieren nicht möglich", damit ein Kopiervorgang, der nicht stattgefunden hat, nicht für einen gelungenen gehalten wird; der Text bleibt am Bildschirm und lässt sich von Hand markieren.

Befehl Was er tut Ausgegraut, wenn (Situation) Nicht gezeichnet, wenn (Rolle)
Absturzberichte immer automatisch senden (Kontrollkästchen) Schaltet den Schalter darüber ein, sobald der Dialog schließt, ob Sie diesen Bericht senden oder nicht. Solange die Runtime gestoppt ist (Tooltip "Runtime gestoppt"). Der Dialog gehört der Anwendung, er wird also auch gezeichnet, wenn diese Seite es nicht ist. Nie.
Nicht senden Verwirft diesen Bericht und löscht die Datei; Sie werden dazu nicht erneut gefragt. Nie. Nie.
Bericht senden Sendet ihn. "Absturzbericht gesendet" als Benachrichtigung bei Erfolg; "Absturzbericht nicht gesendet" mit dem Grund, wenn der Server nicht erreichbar war, dann bleibt die Datei und Sie können jetzt senden oder werden beim nächsten Start erneut gefragt. Nie. Nie.

Ein im Infobereich verborgener Start (Mit Windows starten oder ein Start mit --tray) zeigt keinen Dialog; der Bericht wartet auf den nächsten sichtbaren Start. Bei eingeschaltetem Schalter geschieht das Senden im Hintergrund ohne Dialog, und eine Station, die offline war, behält die Datei und versucht es beim nächsten Start erneut.

Der Bericht geht an den Endpunkt für Rückmeldungen des Ganter-Servers. Er wird dem Ganter-Konto zugeordnet, das auf der Seite Konto angemeldet ist, sofern es eines gibt, und sonst ohne Konto angenommen. Sonst verlässt nichts die Station: eine Nutzungstelemetrie gibt es nicht.

Die Diagnosebefehle

Ein Entwicklungsstand der Anwendung trägt zwei Schaltflächen unter dem Schalter; eine installierte Version hat keine davon.

Befehl Was er tut Ausgegraut, wenn (Situation) Nicht gezeichnet, wenn (Rolle)
Absturz simulieren (Debug) Wirft einen unbehandelten Fehler im Strang der Oberfläche, damit der Weg der Aufnahme eine echte Absturzdatei schreibt und der nächste Start den Ablauf der Einwilligung durchspielt. Nie. Nicht in einer Release-Version.
Bildschirmfoto aufnehmen (Debug) Führt dieselbe Aufnahme aus, die die Werkzeuge des Agenten für die Oberfläche nutzen, im selben Prozess, und schreibt das Ergebnis unter die Schaltfläche: "Gespeichert: <Pfad>" oder "Aufnahme fehlgeschlagen: <Grund>". Auf einem Host ohne Fenster sagt das Ergebnis, dass die Aufnahme nicht verfügbar ist. Nie. Nicht in einer Release-Version.

Was dieser Abschnitt nicht tut

Einen Betrachter für Protokolle gibt es hier nicht: das Journal wohnt auf Ereignisse, auf der Registerkarte Konsole, zusammen mit der Diagnoseaufnahme und dem Supportpaket. Meldungen zu Fehlern und Wünsche stehen unter Rückmeldungen. Die Absturzdatei lässt sich aus der Anwendung nicht bearbeiten, und die Anwendung sendet nie etwas ohne den Schalter oder das Senden im Dialog.