Workflows genera automaticamente log di esecuzione per le esecuzioni dei flussi di lavoro in Cloud Logging.
Puoi anche attivare il logging delle chiamate. In alternativa, puoi creare log personalizzati che utilizzano
la funzione sys.log
nell'origine. Il logging delle chiamate e i log personalizzati consentono di controllare quando i log vengono inviati a Logging durante l'esecuzione di un flusso di lavoro e possono essere particolarmente utili durante il debug del flusso di lavoro.
Per maggiori dettagli, inclusi i proto file di logging engine_call
e executions_system
, consulta questo repository di GitHub.
Log di esecuzione
Ogni esecuzione di flusso di lavoro attiva automaticamente almeno due log di esecuzione: uno all'inizio di un'esecuzione e uno alla fine.
Per ulteriori informazioni sui log della piattaforma Workflows disponibili in Logging, consulta Log della piattaforma Google Cloud.
Registrazione chiamate
Puoi impostare un flag in modo che ogni passaggio di chiamata venga registrato durante l'esecuzione del flusso di lavoro e che vengano restituiti nomi dei passaggi, nomi di funzioni, argomenti di funzione e risposte alle chiamate. In alternativa, puoi registrare eventuali eccezioni rilevate o che interrompono una chiamata.
Vengono registrati solo i passaggi di chiamata espliciti, ad esempio le chiamate ai flussi di lavoro secondari o alle funzioni di libreria. Le chiamate dall'interno delle espressioni o dalle funzioni di libreria standard (ad esempio http.post
in sys.log
) e dai connettori interni non vengono registrate.
Le intestazioni delle richieste HTTP Authorization
vengono oscurate nei log per le chiamate HTTP.
Quando applichi il logging delle chiamate a una definizione del flusso di lavoro o all'esecuzione di un flusso di lavoro, puoi specificare il livello di logging richiesto. Il livello di log dell'esecuzione ha la precedenza su qualsiasi livello di log del flusso di lavoro, a meno che non sia specificato il livello di log dell'esecuzione (valore predefinito); in questo caso, viene applicato il livello di log del flusso di lavoro.
Tieni presente che il limite di dimensione delle voci di log impostato da Cloud Logging si applica anche al logging delle chiamate.
Log personalizzati
Per creare una voce di log in Logging durante l'esecuzione di un flusso di lavoro, definisci un passaggio del flusso di lavoro che effettui una chiamata alla funzione sys.log
della libreria standard:
YAML
- step1: assign: - varA: "Hello" - varB: "World" - logStep: call: sys.log args: text: TEXT severity: SEVERITY - step2: return: ${varA + " " + varB}
JSON
[ { "step1": { "assign": [ { "varA": "Hello" }, { "varB": "World" } ] } }, { "logStep": { "call": "sys.log", "args": { "text": "TEXT", "severity": "SEVERITY" } } }, { "step2": { "return": "${varA + " " + varB}" } } ]
Quando crei una voce di log, definisci quanto segue:
TEXT
: obbligatorio. Il testo da registrare. Se devi registrare i valori di una mappa, utilizza${json.encode_to_string(myMap)}
.SEVERITY
: facoltativo. Il livello di gravità della voce di log. Ad esempio,INFO
,WARNING
oCRITICAL
.
Per ulteriori informazioni, consulta la documentazione di riferimento delle funzioni sys.log
.
Autorizzazioni obbligatorie
Per applicare il logging delle chiamate o inviare log personalizzati a Logging, è necessario associare un flusso di lavoro a un account di servizio che includa l'autorizzazione logging.logEntries.create
(ad esempio il ruolo roles/logging.logWriter
). Se devi modificare l'account di servizio aggiornato in base al flusso di lavoro, consulta
Aggiornare un flusso di lavoro.
Per saperne di più sulla creazione di account di servizio e sull'assegnazione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Visualizza log del flusso di lavoro
Puoi visualizzare i log in Workflows o in Logging. Per visualizzare i log relativi a un singolo flusso di lavoro, utilizza la scheda Log in Workflows. Per ottenere una visualizzazione aggregata dei log di tutti i flussi di lavoro, utilizza la pagina Esplora log in Logging.
Visualizza i log in Workflows
Per visualizzare i log di un flusso di lavoro in Workflows:
Nella console Google Cloud, vai alla pagina Flussi di lavoro:
Per accedere ai log di un flusso di lavoro, fai clic sul nome del flusso di lavoro per andare alla relativa pagina Dettagli.
Per visualizzare i log, fai clic su Log.
Per filtrare i log in base alla gravità, nell'elenco Predefinito, seleziona il tipo di log da visualizzare. Per impostazione predefinita, vengono mostrati i log con tutti i livelli di gravità.
La scheda Log nella pagina Dettagli di un flusso di lavoro mostra i seguenti tipi di log:
Log inviati a Logging
Audit log relativi a qualsiasi operazione eseguita sul flusso di lavoro, ad esempio gli aggiornamenti alla definizione del flusso di lavoro
Visualizza i log in Logging
Per visualizzare i log in Logging, segui questi passaggi:
Nella console Google Cloud, vai alla pagina Esplora log:
In Query Builder, fai clic su Risorsa e inserisci
workflow
. Seleziona Flusso di lavoro cloud dall'elenco e fai clic su Aggiungi.Fai clic su Esegui query.
Per scoprire di più sulla visualizzazione dei log in Logging, consulta Utilizzare Esplora log.