Quando sviluppi qualsiasi tipo di app, registra le informazioni per diagnosticare i guasti durante lo sviluppo, identificare e diagnosticare i problemi dei clienti e per altri scopi.
Google Apps Script fornisce tre meccanismi diversi per la registrazione:
Il log di esecuzione di Apps Script integrato. Questo log è leggero e viene trasmesso in streaming in tempo reale, ma persiste solo per un breve periodo di tempo.
L'interfaccia Cloud Logging nella console di sviluppo, che fornisce log che persistono per molti giorni dopo la loro creazione.
L'interfaccia Error Reporting nella console di sviluppo, che raccoglie e registra gli errori che si verificano durante l'esecuzione dello script.
Questi sono descritti nelle sezioni seguenti. Oltre a questi meccanismi, crea il tuo codice logger che, ad esempio, scrive informazioni in un foglio di lavoro di logging Spreadsheet o database JDBC.
Utilizzare il log di esecuzione di Apps Script
Un approccio di base alla registrazione in Apps Script consiste nell'utilizzare il log di esecuzione integrato. Per visualizzare questi log, fai clic su Log di esecuzione nella parte superiore dell'editor. Quando esegui una funzione o utilizzi il debugger, i log vengono trasmessi in streaming in tempo reale.
Utilizza i servizi di logging Logger o
console nel
log di esecuzione integrato.
Questi log sono destinati ai controlli durante lo sviluppo e il debug e non persistono a lungo.
Ad esempio, considera questa funzione:
Quando questo script viene eseguito con gli input "2" e "john@example.com", vengono scritti i seguenti log:
> [16-09-12 13:50:42:193 PDT] Emailing data row 2 to john@example.com
> [16-09-12 13:50:42:271 PDT] Row 2 data: Cost 103.24
Cloud Logging
Apps Script fornisce anche l'accesso parziale al servizio Google Cloud Cloud Logging. Quando hai bisogno di log che persistono per diversi giorni o di una soluzione di logging più complessa per un ambiente di produzione multiutente, Cloud Logging è la scelta preferita. Consulta le quote e i limiti di Cloud Logging per la conservazione dei dati e altri dettagli sulle quote.
Per richiedere una quota di logging maggiore, invia una richiesta di quota di Google Cloud. Per farlo, devi avere accesso al progetto della piattaforma Google Cloud utilizzato dallo script.
Cloud Logging fornisce una serie di servizi oltre all'archiviazione dei log, come avvisi e metriche. Questi servizi non sono disponibili da Apps Script.
Utilizzare Cloud Logging
I log di Cloud sono collegati al progetto Google Cloud associato ad Apps Script. Visualizza una versione semplificata di questi log nella dashboard di Apps Script.
Per sfruttare appieno Cloud Logging e le sue funzionalità, utilizza un progetto Google Cloud standard con il progetto dello script. In questo modo puoi accedere ai log di Cloud direttamente nella console Google Cloud e avere a disposizione più opzioni di visualizzazione e filtro.
Se utilizzi il runtime Rhino, Cloud Logging non supporta il servizio di Apps Script
Logger. Utilizza invece il
console servizio.
Quando esegui la registrazione, è una buona prassi per la privacy evitare di registrare informazioni personali sull'utente, come gli indirizzi email. I log di Cloud vengono etichettati automaticamente con le chiavi utente attive per individuare i messaggi di log di un utente specifico, se necessario.
Registra stringhe, stringhe formattate e persino oggetti JSON utilizzando le funzioni
fornite dal servizio
console di Apps Script.
L'esempio seguente mostra come utilizzare il
console servizio per registrare le informazioni in
Cloud Operations.
Chiavi utente attive
Le chiavi utente attive temporanee forniscono un modo pratico per individuare gli utenti univoci nelle voci dei log di Cloud senza rivelare le loro identità. Le chiavi sono per script e cambiano circa una volta al mese per fornire una maggiore sicurezza nel caso in cui un utente riveli la propria identità a uno sviluppatore, ad esempio durante la segnalazione di un problema.
Le chiavi utente attive temporanee sono migliori degli identificatori di logging come gli indirizzi email perché:
- Non devi aggiungere nulla al logging, sono già presenti.
- Non richiedono l'autorizzazione dell'utente.
- Proteggono la privacy degli utenti.
Per trovare le chiavi utente attive temporanee nelle voci dei log di Cloud, visualizza i log di Cloud nella console Google Cloud. Esegui questa operazione solo se il progetto dello script utilizza un progetto Google Cloud standard a cui hai accesso. Dopo aver aperto il progetto Google Cloud nella console, seleziona una voce di log di interesse ed espandila per visualizzare metadati > etichette > script.googleapis.com/user_key.
Per ottenere la chiave utente attiva temporanea, chiama
Session.getTemporaryActiveUserKey
nello script. Un modo per utilizzare questo metodo è mostrare la chiave all'utente mentre esegue lo script. Gli utenti possono quindi scegliere di includere le proprie chiavi quando segnalano problemi per aiutarti a identificare i log pertinenti.
Registrazione delle eccezioni
La registrazione delle eccezioni invia le eccezioni non gestite nel codice del progetto dello script a Cloud Logging, insieme a un'analisi dello stack.
Per visualizzare i log delle eccezioni:
- Apri il progetto Apps Script.
- A sinistra, fai clic su Esecuzioni .
- In alto, fai clic su Aggiungi un filtro > Stato.
- Seleziona le caselle di controllo Non riuscito e Timeout.
Visualizza le eccezioni registrate nella console Google Cloud se il progetto dello script utilizza un progetto Google Cloud standard a cui hai accesso.
Attivare la registrazione delle eccezioni
La registrazione delle eccezioni è attivata per impostazione predefinita per i nuovi progetti. Per attivare la registrazione delle eccezioni per i progetti precedenti:
- Apri il progetto dello script.
- A sinistra, fai clic su Impostazioni progetto .
- Seleziona la casella di controllo Registra eccezioni non rilevate in Cloud Operations.
Error Reporting
La registrazione delle eccezioni si integra automaticamente con Cloud Error
Reporting, un servizio che
aggrega e visualizza gli errori prodotti nello script. Visualizza i report degli errori di Cloud nella console Google Cloud. Non devi configurare manualmente Error Reporting o creare voci di traccia. Apps Script compila automaticamente i campi obbligatori quando viene generata un'eccezione o quando utilizzi console.error con un oggetto Error. Se ti viene chiesto di "Configurare Error Reporting", significa che lo script non ha ancora registrato eccezioni. Non è necessaria alcuna configurazione oltre all'attivazione della registrazione delle eccezioni.
Requisiti di logging
Non esistono requisiti per l'utilizzo del log di esecuzione integrato.
Visualizza una versione semplificata dei log di Cloud nella dashboard di Apps Script. Tuttavia, per sfruttare al meglio Cloud Logging e Error Reporting, devi avere accesso al progetto cloud Google Cloud dello script. Questo è possibile solo se il progetto dello script utilizza un progetto Google Cloud standard.