Loading

Come acquisire i registri di debug per la risoluzione dei problemi

Data pubblicazione: Jan 21, 2025
Descrizione

Talvolta, quando si esegue la risoluzione dei problemi delle automazioni o si cerca di capire per quale motivo le cose funzionano in modo diverso dalla norma, è necessario eseguire dei registri debug. I registri debug consentono di capire esattamente cosa succede quando Salesforce esegue la logica di business. Questa guida spiega come acquisire un registro debug da analizzare.

Risoluzione

Attivazione dei registri di debug
 

1. Aprire Salesforce Imposta
2. Cercare Debug nella casella di ricerca veloce.
3. Selezionare Registri debug.
4. Creare un Nuovo livello debug.
a.) Impostare un nome, come: Acme_Automation_Debug
b.)  Impostare il livello in base al problema che si sta cercando di risolvere. 
 i.) Per Flussi e Process Builder, impostare "Flusso di lavoro" su Più specifico
ii.) Per Apex e Trigger impostare "Apex Code" su Avanzato
c.)  Fare clic su Salva

12.png

1. Attivare un registro per un utente e selezionare il livello debug appena creato. 
a.) Tipo di entità tracciata: utente
b.) Nome entità tracciata: utente che eseguirà l'azione da testare. 
c.) Data iniziale: data/ora attuali. 
d.) Livello debug: utilizzare il nome del livello di debug creato in precedenza. 
Debug Logs.png
Ricreare il problema.
 
1. Eseguire l'azione di risoluzione del problema. 
a.) Flusso innescato dal record: creare, aggiornare o eliminare un record che innesca il flusso. 
b.) Flusso della schermata: avviare il flusso della schermata come di consueto
c.) Trigger: creare, aggiornare o eliminare un record in base al trigger Apex.
2. Tornare ai registri di debug in Imposta;i registri sono stati memorizzati. 
a.) Cercare i registri di dimensioni maggiori, in genere quelli con più contenuto sono correlati agli elementi testati. 
b.) È possibile scaricarli e visualizzarli con un editor di testo o condividerli con il TBC o lo sviluppatore per contribuire alla risoluzione dei problemi. 
 

Logs.png

Lettura del registro di debug

La lettura del registro di debug può essere la chiave per capire cosa sta succedendo, ma può anche essere difficile da capire, soprattutto se contiene molti dati. Segue un elenco degli elementi più comuni da tenere in considerazione e le istruzioni utili per interpretarli, se necessario. 
 

ENTERING_MANAGED_PKG: significa che il codice sta eseguendo la logica di un pacchetto gestito da Appexchange. Non è possibile vedere esattamente cosa sta succedendo, perché il codice è protetto.

LIMIT_USAGE_FOR_NS: in genere è seguito dai limiti che la transazione sta raggiungendo per quel particolare spazio dei nomi. Può essere utile per vedere se ci sono problemi con il raggiungimento dei limiti del governor.

SOQL_EXECUTE_BEGIN: si presenta quando una query SOQL viene eseguita dal codice. Può mostrare esattamente la query, per verificare se non è formata correttamente.

SOQL_EXECUTE_END: si trova generalmente dopo l'avvio di un'esecuzione SOQL e mostra il numero di righe restituite dalla query SOQL. Se il numero di righe è 0, significa che non è stato trovato alcun record.

FLOW_CREATE_INTERVIEW_BEGIN: viene utilizzato all'inizio di un flusso e può aiutare a identificare l'inizio dell'interazione del flusso.

FLOW_INTERVIEW_FINISHED_LIMIT_USAGE: quando si risolvono i problemi dei limiti del governor relativi ai flussi attivati dai record, la ricerca di questo evento può essere utile per vedere quali erano i limiti alla fine di una transazione di flusso.

FATAL_ERROR: può essere causato da numerosi fattori, ma in genere la sua presenza indica che l'errore è stato causato da qualcosa che lo precede nel registro di debug.

DML_BEGIN: significa che è in corso un qualche tipo di inserimento o aggiornamento di record. Un identificatore specificherà l'operazione DML in corso.
 
Molti altri eventi vengono visualizzati nei registri di debug. L'elenco completo è disponibile qui: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_debugging_system_log_console.htm
_______________________________________________________

Scritto da: Andrew Russo | Leader nelle Risposte Salesforce
Andrew Russo è analista sviluppatore amministratore e architetto presso BACA Systems. Lavora nell'ecosistema Salesforce dal 2017 e ha una conoscenza immensa della piattaforma. Aiuta i Trailblazer a diventare più esperti nell'utilizzo di Salesforce. 


I materiali inviati riflettono esclusivamente le opinioni dell'utente che li ha resi disponibili e non le opinioni di Salesforce, indipendentemente dal fatto che l'utente sia affiliato a Salesforce, e possono contenere o costituire prodotti, servizi, informazioni, dati, contenuti e altri materiali resi disponibili da o per conto di terze parti ("Materiali di terze parti").  Salesforce non controlla né approva, né è responsabile per i materiali di terze parti, inclusa la loro accuratezza, validità, tempestività, completezza, affidabilità, integrità, qualità, legalità, utilità o sicurezza, o qualsiasi diritto di proprietà intellettuale applicabile. Tutti i materiali resi disponibili attraverso qualsiasi bacheca o forum in risposta a domande pubblicate, o che in altro modo pretendono di rispondere a qualsiasi domanda, comprese le domande su Salesforce o sui programmi, sono resi disponibili solo per conoscenza generale e non devono mai essere considerati come risposte a domande specifiche degli utenti (anche se una risposta è contrassegnata come risposta "migliore" o con qualifiche simili). È sempre consigliabile contattare l'assistenza Salesforce per ottenere risposte alle proprie domande specifiche. Salesforce non ha alcun controllo sui materiali inviati e non è responsabile di alcun uso o abuso (inclusa la distribuzione) da parte di terze parti di tali materiali.

In caso di domande, è possibile attingere al sapere dell'intera Trailblazer Community qui:
https://trailhead.salesforce.com/trailblazer-community/feed
Numero articolo Knowledge

000392579

 
Caricamento
Salesforce Help | Article