Loading

Erfassen von Debug-Protokollen für die Fehlerbehebung

Veröffentlichungsdatum: Jan 21, 2025
Beschreibung

Manchmal ist es notwendig, bei der Fehlerbehebung im Zusammenhang mit Automatisierungen oder bei dem Versuch, herauszufinden, warum etwas anders als normal funktioniert, Debug-Protokolle auszuführen. Mit Debug-Protokollen können Sie genau sehen, was passiert, wenn Salesforce Ihre Geschäftslogik ausführt. Dieser Leitfaden hilft Ihnen, ein Debug-Protokoll zur Analyse zu erfassen.

Lösung

Aktivieren von Debug-Protokollen
 

1. Öffnen Sie Salesforce-Setup
2. Suchen Sie in der Schnellsuche nach Debug.
3. Wählen Sie Debug-Protokolle aus.
4. Erstellen Sie eine neue Debugebene.
a.) Geben Sie einen Namen ein, z. B.: Acme_Automation_Debug
b.)  Legen Sie die Ebene basierend auf dem Problem fest, das Sie beheben möchten. 
 i.) Legen Sie für Flows und den Prozessgenerator Workflow auf Feiner fest. 
ii.) Legen Sie für Apex und Auslöser Apex-Code auf Feinste fest. 
c.)  Klicken Sie auf Speichern

12.png

1. Aktivieren Sie ein Protokoll für einen Benutzer und wählen Sie die erstellte Debugebene aus. 
a.) Typ der verfolgten Einheit: Benutzer
b.) Name der verfolgten Einheit: Benutzer, der die zu testende Aktion ausführt 
c.) Startdatum: Aktuelles Datum und aktuelle Uhrzeit 
d.) Debugebene: Verwenden Sie den zuvor erstellten Namen der Debugebene. 
Debug Logs.png
Reproduzieren Sie das Problem.
 
1. Führen Sie die Aktion aus, bei der Sie eine Fehlerbehebung vornehmen möchten. 
a.) Durch Datensatz ausgelöster Flow: Erstellen, aktualisieren oder löschen Sie einen Datensatz, der den Flow auslöst. 
b.) Bildschirm-Flow: Starten Sie den Bildschirm-Flow wie gewohnt.
c.) Auslöser: Erstellen, aktualisieren oder löschen Sie einen Datensatz auf der Grundlage des Apex-Auslösers.
2. Gehen Sie zurück zu den Debug-Protokollen unter "Setup". Dort sehen Sie die aufgezeichneten Protokolle. 
a.) Suchen Sie nach größeren Protokollen. In der Regel beziehen sich die Protokolle mit mehr Inhalt auf das, was Sie getestet haben. 
b.) Sie können die Protokolle herunterladen und mit einem Texteditor anzeigen oder an die Trailblazer Community oder den Entwickler weitergeben, um sich bei der Fehlerbehebung helfen zu lassen. 
 

Logs.png

Lesen des Debug-Protokolls

Im Debug-Protokoll können Sie herausfinden, was gerade passiert, aber es kann auch schwer zu verstehen sein, wenn es sehr viele Informationen enthält. Im Folgenden finden Sie eine Liste typischer Punkte, auf die Sie achten sollten, und deren Interpretation. 
 

ENTERING_MANAGED_PKG: Dies bedeutet, dass der Code Logik aus einem verwalteten Paket von AppExchange ausführt. Es gibt keine Möglichkeit, genau zu sehen, was passiert, da der Code geschützt ist.

LIMIT_USAGE_FOR_NS: Danach folgen in der Regel die Obergrenzen, an denen sich die Transaktion derzeit für den jeweiligen Namespace befindet. Dies kann nützlich sein, um festzustellen, ob es Probleme mit dem Überschreiten von Obergrenzen gibt.

SOQL_EXECUTE_BEGIN: Dies wird angezeigt, wenn eine SOQL-Abfrage durch den Code ausgeführt wird. Sie können hier sehen, wie die genaue Abfrage lautet, um zu prüfen, ob sie richtig geformt ist.

SOQL_EXECUTE_END: Dies wird im Allgemeinen nach SOQL_EXECUTE_BEGIN angezeigt und gibt die Anzahl der von der SOQL-Abfrage zurückgegebenen Zeilen an. Wenn die Anzahl der Zeilen 0 ist, bedeutet dies, dass keine Datensätze gefunden wurden.

FLOW_CREATE_INTERVIEW_BEGIN: Dies wird zu Beginn eines Flows verwendet und kann helfen, den Beginn der Flow-Interaktion zu identifizieren.

FLOW_INTERVIEW_FINISHED_LIMIT_USAGE: Bei der Fehlerbehebung im Zusammenhang mit den Obergrenzen für durch einen Datensatz ausgelöste Flows kann dieses Ereignis aufschlussreich sein, um herauszufinden, wie hoch die Obergrenzen am Ende einer Flow-Transaktion waren.

FATAL_ERROR: Dies kann zahlreiche Ursachen haben, aber wenn dieser Fehler angezeigt wird, deutet dies im Allgemeinen darauf hin, dass ein vorangegangenes Ereignis im Debug-Protokoll den Fehler verursacht hat.

DML_BEGIN: Dies bedeutet, dass Datensätze eingefügt oder aktualisiert werden. Es gibt eine Kennung, die den ausgeführten DML-Vorgang angibt.
 
In den Debug-Protokollen werden noch viele weitere Ereignisse angezeigt. Eine vollständige Liste finden Sie hier: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_debugging_system_log_console.htm
_______________________________________________________

Verfasst von: Andrew Russo | Salesforce Answers Leader
Andrew Russo ist Accidental Archa-Admin-Eloper-Analyst bei BACA Systems. Er gehört dem Salesforce-Ökosystem seit 2017 an und verfügt über immense Plattformkenntnisse. Er unterstützt Trailblazer dabei, Salesforce noch kompetenter zu nutzen. 


Die Übermittlungen spiegeln nur die Meinungen des Benutzers wider, der die Übermittlung zur Verfügung gestellt hat, und nicht die Meinung von Salesforce, unabhängig davon, ob der Benutzer mit Salesforce verbunden ist, und können Produkte, Services, Informationen, Daten, Inhalte und andere Materialien enthalten oder darstellen, die von oder im Namen von Dritten zur Verfügung gestellt werden ("Materialien von Dritten").  Salesforce kontrolliert und befürwortet keine Materialien von Dritten und ist auch nicht für diese verantwortlich, einschließlich ihrer Genauigkeit, Gültigkeit, Aktualität, Vollständigkeit, Zuverlässigkeit, Integrität, Qualität, Rechtmäßigkeit, Nützlichkeit oder Sicherheit sowie der anwendbaren geistigen Eigentumsrechte. Jegliche Übermittlung, die über eine Nachrichtenseite oder ein Forum als Antwort auf gepostete Fragen zur Verfügung gestellt wird oder die anderweitig den Anschein erweckt, Fragen zu beantworten, einschließlich Fragen zu Salesforce oder Programmen, wird nur zu Ihrer allgemeinen Kenntnis zur Verfügung gestellt und sollte niemals als alleinige Antwort auf Ihre spezifischen Fragen verwendet werden (selbst wenn eine Antwort als "beste Antwort" oder Ähnliches gekennzeichnet ist). Sie sollten sich immer an den Salesforce-Support wenden, um Antworten auf Ihre spezifischen Fragen zu erhalten. Salesforce hat keine Kontrolle über Übermittlungen und ist nicht verantwortlich für die Nutzung oder den Missbrauch (einschließlich der Verbreitung) von Übermittlungen durch Dritte.

Wenn Sie Fragen haben, können Sie hier auf das Wissen der gesamten Trailblazer Community zurückgreifen:
https://trailhead.salesforce.com/trailblazer-community/feed
Nummer des Knowledge-Artikels

000392579

 
Laden
Salesforce Help | Article