Introduzione
In questo documento viene descritto come mostrare il traceback dei Python e lo stack di errori nell'attività "Esegui stack Python".
Problema
Quando si tenta di utilizzare un blocco "Esegui script Python", l'operazione non riesce. Viene visualizzato il messaggio di errore "Il valore non può essere nullo" che non consente di risolvere il problema.
Soluzione
Per inviare l'errore alla GUI, è necessario usare la libreria di traceback in python. È necessario provare, ad eccezione dei blocchi intorno al codice che si ritiene presentino problemi, quindi utilizzare la funzione traceback.print_exc.
In questo esempio, è possibile provare a importare la libreria crittografica nel caso in cui non sia installata. Normalmente il codice è:
from Crypto.Hash import SHA256
Se l'operazione non riesce, è possibile utilizzare questo codice per ottenere l'errore effettivo:
import sys,traceback
try:
from Crypto.Hash import SHA256
except:
traceback.print_exc(file=sys.stdout)
Questo è il tipo di output che verrà visualizzato in Cisco Process Orchestrator (CPO):