Sie befinden sich hier:
Debug-Protokolle
Mit Debug-Protokollen können in Ihrer Organisation aufgetretene Ereignisse verfolgt werden. Debug-Protokolle werden generiert, wenn Sie über aktive benutzerbasierte Verfolgungskennzeichnungen verfügen, wenn Sie Apex-Tests ausführen und wenn der ausgeführte Code oder API-Anforderungen Debug-Parameter oder Header enthalten.
Erforderliche Editionen
| Verfügbarkeit: Salesforce Classic (nicht in allen Organisationen verfügbar) und Lightning Experience |
Verfügbarkeit: Performance, Unlimited, Developer, Enterprise und Database.com Edition Die Salesforce-Benutzeroberfläche, E-Mail-Services und Genehmigungen sind in Database.com nicht verfügbar. |
| Erforderliche Benutzerberechtigungen | |
|---|---|
| Anzeigen, Speichern und Löschen von Debug-Protokollen: | Alle Daten anzeigen |
Ein Debug-Protokoll kann Datenbankvorgänge, Systemprozesse und Fehler aufzeichnen, die beim Ausführen von Transaktionen oder Einheitentests auftreten. Debug-Protokolle können Informationen zu folgenden Punkten enthalten:
- Datenbankänderungen
- HTTP-Callouts
- Apex-Fehler
- Von Apex genutzte Ressourcen
- Automatisierte Workflow-Prozesse, wie:
- Workflow-Regeln
- Zuweisungsregeln
- Genehmigungsprozesse
- Validierungsregeln
Hinweis Das Debug-Protokoll enthält keine Informationen von Aktionen, die durch zeitbasierte Workflows ausgelöst wurden.
Das System generiert jedes Mal ein Debug-Protokoll, wenn eine Transaktion ausgeführt wird, die in den Filterkriterien enthalten ist.
Transaktionen können anhand Folgendem generiert werden:
- Salesforce-Benutzeroberfläche
- API
executeanonymous-Anrufe- Webservices
- E-Mail-Services
Durch die für den Benutzer festgelegten Filterkriterien, die Developer Console bzw. den API-Header wird bestimmt, was in das Debug-Protokoll aufgenommen wird.
Nachfolgend sind Anwendungsbeispiele für ein Debug-Protokoll aufgeführt.
- Sie erstellen in Ihrer Funktion als Entwickler eine benutzerdefinierte Anwendung und können das Debug-Protokoll nutzen, um bestimmte Verhaltensaspekte der Anwendung zu validieren. Sie können beispielsweise den Debug-Protokollfilter so festlegen, dass nach Callouts gesucht wird. Anschließend können Sie im Debug-Ergebnisprotokoll die Informationen über Erfolg und Dauer dieser Callouts ansehen.
- Als Administrator einer Organisation können Sie das Debug-Protokoll für die Fehlerbehebung verwenden, wenn ein Benutzer Schwierigkeiten meldet. Legen Sie die Verfolgungskennzeichnung für den Benutzer fest und bitten Sie den Benutzer, die problematische Transaktion schrittweise zu durchlaufen. Verwenden Sie anschließend das Debug-Protokoll zum Anzeigen der Systemdetails.
Beschränkungen von Debug-Protokollen
Für Debug-Protokolle gelten folgende Einschränkungen.
- Jedes Debug-Protokoll darf maximal 20 MB umfassen. Die Größe von Debug-Protokollen mit mehr als 20 MB wird reduziert, indem ältere Protokollzeilen, beispielsweise Protokollzeilen für frühere
System.debug-Anweisungen, entfernt werden. Die Protokollzeilen können von einem beliebigen Ort, nicht nur vom Beginn des Debug-Protokolls entfernt werden. - System-Debug-Protokolle werden 24 Stunden lang gespeichert. Überwachungs-Debug-Protokolle werden sieben Tage lang gespeichert.
- Wenn Sie mehr als 1.000 MB Debug-Protokolle innerhalb eines Zeitfensters von 15 Minuten erstellen, werden Ihre Verfolgungskennzeichnungen deaktiviert. Die Benutzer, die die Verfolgungskennzeichnungen zuletzt geändert haben, erhalten eine E-Mail, in der sie darüber informiert werden, dass sie die Verfolgungskennzeichnungen in 15 Minuten erneut aktivieren können.
ACHTUNG Wenn die Verfolgungskennzeichnung des Debug-Protokolls für eine häufig aufgerufene Apex-Klasse oder für einen Benutzer aktiviert ist, der häufig Anforderungen ausführt, kann die Anforderung unabhängig vom Zeitfenster und der Größe der Debug-Protokolle zu einem Fehler führen. - Wenn Ihre Organisation Protokolle mit einer Gesamtgröße von mehr als 1.000 MB angesammelt hat, können Benutzer in der Organisation keine Verfolgungskennzeichnungen mehr hinzufügen oder bearbeiten. Wenn Sie nach Erreichen der Obergrenze Verfolgungskennzeichnungen hinzufügen oder bearbeiten möchten, müssen Sie einige Debug-Protokolle löschen.
Abschneiden von Debug-Protokollen
Um die relevantesten Informationen bereitzustellen, werden Debug-Protokolle abgeschnitten, und zwar für gewöhnlich beginnend mit den älteren Protokolleinträgen. Die neuesten Protokolleinträge werden immer beibehalten. 200 KB des Debug-Protokolls werden gelöscht, wenn das Protokoll seine maximale Größe von 20 MB erreicht.
Die folgenden Ereignisse sind erforderlich für die Verarbeitung des Debug-Protokolls. Daher werden sie beim Abschneiden nicht gelöscht.
-
EXECUTION_STARTED -
EXECUTION_FINISHED -
CODE_UNIT_STARTED -
CODE_UNIT_FINISHED -
METHOD_ENTRY -
METHOD_EXIT -
CONSTRUCTOR_ENTRY -
CONSTRUCTOR_EXIT -
SOQL_EXECUTE_BEGIN -
SOQL_EXECUTE_END -
SOSL_EXECUTE_BEGIN -
SOSL_EXECUTE_END -
CALLOUT_REQUEST -
CALLOUT_RESPONSE -
FATAL_ERROR
Für das Verarbeiten des Debug-Protokolls erforderliche Protokolleinträge werden nicht abgeschnitten. Andere Protokollinformationen, die sich zwischen den Anfangs- und Endzeilen dieser Protokolleinträge befinden, werden jedoch beim Abschneiden des Protokolls entfernt.
- Details des Debug-Protokolls
Ein Debug-Protokoll besteht aus einer Kopfzeile, Ausführungseinheiten, Code-Einheiten, Protokollzeilen und weiteren Protokolldaten. - Rangfolge von Debug-Protokollen
Welche Ereignisse protokolliert werden, hängt von verschiedenen Faktoren ab. Zu diesen Faktoren gehören Ihre Verfolgungskennzeichnungen, die standardmäßigen Protokollierungsebenen, Ihre API-Kopfzeile, die benutzerbasierte Systemprotokollaktivierung und die durch Ihre Einstiegspunkte festgelegten Protokollierungsebenen. - Debug-Protokollierungsebenen
Um anzugeben, in welchem Umfang Informationen in Debug-Protokolle aufgenommen werden sollen, richten Sie Verfolgungskennzeichnungen und Debugebenen ein. Die Debugebenen, die den Verfolgungskennzeichnungen zugewiesen sind, legen die Art und die Menge von Informationen fest, die für verschiedene Ereignisse protokolliert werden. Überprüfen Sie die Debug-Ereignisse in den Debug-Protokollen nach Abschluss der Protokollierung. - Durchsuchen von Debug-Protokollen
Verwenden Sie zur Suche nach Text in einem Debug-Protokoll das Befehlszeilenfenster in der Developer Console. - Löschen von Debug-Protokollen
Wenn sich in Ihrer Organisation zu viele Debug-Protokolle angesammelt haben, löschen Sie einige oder alle Ihrer System- und Überwachungsprotokolle. Verwenden Sie den Abfrage-Editor der Developer Console, um die Protokolle mithilfe der Tooling-API zu finden und zu löschen. - Debug-Protokollfilter für Apex-Klassen und Apex-Auslöser
Mit Debug-Protokollfiltern kann die Ausführlichkeit von Protokollen auf Auslöser- und Klassenebene genauer bestimmt werden. - Einrichten von Apex-Klassen- und Auslöserverfolgungskennzeichnungen
Sie können im Salesforce-Setup, in der Developer Console oder durch Erstellen von Tooling-API-Objekten mit Salesforce CLI-Befehlen eine Apex-Klasse oder eine Auslöserverfolgungskennzeichnung einrichten. Diese Verfolgungskennzeichnungen weisen den Debug-Protokolltyp CLASS_TRACING auf und überschreiben die Debug-Protokollierungsebenen der Verfolgungskennzeichnungen USER_DEBUG und DEVELOPER_LOG.

