Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Um Ihre Anwendung so zu konfigurieren, dass bei einem Absturz ein Speicherabbild erfasst wird, legen Sie bestimmte Umgebungsvariablen fest. Dies ist hilfreich, wenn Sie der Ursache eines Absturzes auf den Grund gehen möchten. Das Erfassen eines Speicherabbilds beim Auslösen einer Ausnahme kann Ihnen z. B. helfen, ein Problem zu erkennen, indem Sie den Zustand der App zum Zeitpunkt des Absturzes untersuchen.
In der folgenden Tabelle sind die Umgebungsvariablen aufgeführt, die Sie für die Erfassung von Speicherabbildern bei einem Absturz konfigurieren können.
Umgebungsvariable | Beschreibung | Standardwert |
---|---|---|
DOTNET_DbgEnableMiniDump |
Wenn die Variable auf 1 festgelegt ist, wird ein Kernspeicherabbild erstellt. | 0 |
DOTNET_DbgMiniDumpType |
Der Typ des zu erfassenden Speicherabbilds. Weitere Informationen finden Sie unter Arten von Minidumps. | 2 (Heap ) |
DOTNET_DbgMiniDumpName |
Pfad zu einer Datei, in die das Speicherabbild geschrieben werden soll Stellen Sie sicher, dass der Benutzer, unter dem der DotNet-Prozess ausgeführt wird, über Schreibberechtigungen für das angegebene Verzeichnis verfügt. | /tmp/coredump.<pid> |
DOTNET_CreateDumpDiagnostics |
Wenn die Variable auf 1 festgelegt ist, wird die Diagnoseprotokollierung des Speicherabbildprozesses aktiviert. | 0 |
DOTNET_EnableCrashReport |
(unter Windows nicht unterstützt.) Ist die Variable auf 1 festgelegt, generiert die Runtime einen JSON-formatierten Absturzbericht, der Informationen zu den Threads und Stapelrahmen der abstürzenden Anwendung enthält. Der Name des Absturzberichts ist der Pfad oder Name des Speicherabbilds, an den .crashreport.json angehängt wird. |
|
DOTNET_CreateDumpVerboseDiagnostics |
Wenn die Variable auf 1 festgelegt ist, wird die ausführliche Diagnoseprotokollierung des Speicherabbildprozesses aktiviert. | 0 |
DOTNET_CreateDumpLogToFile |
Der Pfad der Datei, in die die Diagnosemeldungen geschrieben werden sollen. | Wird die Variable nicht festgelegt, werden die Diagnosemeldungen in die Konsole der abstürzenden Anwendung geschrieben. |
Dateipfadvorlagen
Ab .NET 5 kann DOTNET_DbgMiniDumpName
auch Formatierungsvorlagenspezifikationen enthalten, die dynamisch ausgefüllt werden:
Bezeichner | value |
---|---|
%% | Einzelnes Prozentzeichen (%) |
%p | PID des gesicherten Prozesses |
%e | Der Dateiname des ausführbaren Prozesses |
%h | Der von gethostname() zurückgegebene Hostname |
%t | Zeit des Speicherabbilds, ausgedrückt als Sekunden seit der Epoche, 1970-01-01 00:00:00 +0000 (UTC) |
Arten von Minidumps
In der folgenden Tabelle sind die Werte aufgeführt, die Sie für DOTNET_DbgMiniDumpType
verwenden können. Wenn Sie DOTNET_DbgMiniDumpType
z. B. auf 1 festlegen, wird ein Speicherabbild des Typs Mini
bei einem Absturz erfasst.
value | Name | Beschreibung |
---|---|---|
1 | Mini |
Ein kleines Speicherabbild, das Modullisten, Threadlisten, Ausnahmeinformationen und alle Stapel enthält. |
2 | Heap |
Ein großes und relativ umfassendes Speicherabbild, das Modullisten, Threadlisten, alle Stapel, Ausnahmeinformationen, Handleinformationen und den gesamten Arbeitsspeicher mit Ausnahme von zugeordneten Images enthält. |
3 | Triage |
Identisch mit Mini , entfernt aber persönliche Benutzerinformationen, z. B. Pfade und Kennwörter. |
4 | Full |
Das größte Speicherabbild, das den gesamten Arbeitsspeicher einschließlich der Modulimages enthält |
Nur vollständige Dumps werden von den Einzeldatei- und nativen AOT-App-Modellen unterstützt.