Puoi scrivere i log in Cloud Logging dalle applicazioni Python mediante il gestore di logging Python standard oppure Libreria client API Cloud Logging per Python direttamente. Quando utilizza il gestore di logging Python standard, devi collegare Gestore Cloud Logging al gestore principale Python. Questo documento illustra questo approccio.
Prima di iniziare
- Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.
-
Enable the Cloud Logging API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.
-
Enable the Cloud Logging API.
- Prepara l'ambiente per lo sviluppo in Python.
Installa la libreria
Per installare la libreria Cloud Logging per Python, consulta Installa la libreria client per Python. Questa libreria consente di collegare un gestore Cloud Logging allo standard Gestore root Python. Puoi utilizzare questa libreria anche per inviare API richieste a Cloud Logging.
Per ulteriori informazioni sull'installazione, vedi documentazione relativa nella libreria Cloud Logging per Python. Puoi anche segnalare i problemi utilizzando il tracker dei problemi.
Scrivi i log con il gestore di logging Python standard
a inviare tutte le voci di log scritte con lo standard Gestore root Python in Cloud Logging, segui questi passaggi:
Collega il gestore Cloud Logging al logger root Python chiamando il metodo
setup_logging
:Per informazioni su come configurare il gestore di logging, consulta Integrazione con la libreria standard di logging.
Scrivi i dati di log utilizzando il logger principale di Python:
Per impostazione predefinita, tutti i log il cui livello di gravità è almeno
INFO
, ovvero scritto dalla tua applicazione viene inviato a Cloud Logging.Se i messaggi vengono registrati in Logging da App Engine o Google Kubernetes Engine, il gestore li invia all'ambiente rispettivamente tipi di risorse: In caso contrario, i log sono elencati nel log
python
nella sezione Tipo di risorsaGlobal
.
Scrivi i log con la libreria client di Cloud Logging
Per informazioni sull'utilizzo della libreria client di Cloud Logging per direttamente in Python, consulta Librerie client di Cloud Logging.
Esegui su Google Cloud
Affinché un'applicazione scriva log utilizzando la libreria Cloud Logging per Python, è necessario
l'account di servizio per la risorsa sottostante deve avere
Ruolo Autore log (roles/logging.logWriter
) IAM.
La maggior parte degli ambienti Google Cloud configura automaticamente
per avere questo ruolo.
App Engine
Cloud Logging è abilitato automaticamente per App Engine e l'account di servizio predefinito della tua app dispone per impostazione predefinita delle autorizzazioni IAM per scrivere le voci di log.
Per ulteriori informazioni, consulta la sezione Scrittura e visualizzazione degli log.
Google Kubernetes Engine (GKE)
GKE concede automaticamente all'account di servizio predefinito il ruolo IAM Scrittore di log (roles/logging.logWriter
).
Se utilizzi
Federazione delle identità dei carichi di lavoro per GKE
con questo account di servizio predefinito per consentire ai carichi di lavoro di accedere
API Google Cloud, non sono necessarie ulteriori configurazioni.
Tuttavia, se utilizzi la federazione delle identità per i carichi di lavoro per GKE
l'account di servizio IAM personalizzato, quindi assicurati che il servizio
ha il ruolo di Writer log (roles/logging.logWriter
).
Se necessario, puoi anche utilizzare il seguente comando per aggiungere l'ambito di accesso logging.write
durante la creazione del cluster:
gcloud container clusters create example-cluster-name \
--scopes https://www.googleapis.com/auth/logging.write
Compute Engine
Quando utilizzi istanze VM di Compute Engine, aggiungi cloud-platform
di ambito di accesso a ogni istanza. Quando crei una nuova istanza tramite
Console Google Cloud, puoi farlo nella sezione Identità e accesso API.
del riquadro Crea istanza. Usa il servizio predefinito di Compute Engine
o un altro account di servizio a tua scelta e seleziona
Consenti l'accesso completo a tutte le API Cloud in Identità e accesso API
. Qualunque servizio
l'account selezionato, accertati di aver ricevuto
Ruolo Writer log in IAM e Amministratore di
nella console Google Cloud.
Esegui localmente e altrove
Per utilizzare la libreria Cloud Logging per Python al di fuori di Google Cloud, compresa l'esecuzione della libreria sulla tua workstation, sul data center computer o sulle istanze VM di un altro cloud provider, fornisci l'ID progetto Google Cloud e i dati account di servizio e credenziali direttamente alla libreria Cloud Logging per Python.
Per gli account di servizio esistenti:
Concedi all'account di servizio l'accesso IAM Ruolo IAM Autore di log (
roles/logging.logWriter
). Per ulteriori informazioni su IAM vedi Controllo dell'accesso.
Se non hai un account di servizio, creane uno. Per informazioni su questo processo, vedi Creare account di servizio.
Per informazioni generali sui metodi che puoi utilizzare per l'autenticazione, vedi Terminologia: account di servizio.
Visualizza i log
Nella console Google Cloud, vai alla pagina Esplora log:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
In Esplora log devi specificare una o più risorse, ma la risorsa la selezione potrebbe non essere ovvia. Ecco alcuni suggerimenti per aiutarti a data di inizio:
Se esegui il deployment dell'applicazione in App Engine o utilizzi le librerie specifiche di App Engine, imposta la risorsa su App GAE.
Se stai eseguendo il deployment dell'applicazione su Compute Engine, imposta la risorsa su Istanzia VM GCE.
Se esegui il deployment della tua applicazione su Google Kubernetes Engine, configurazione di logging del cluster determina il tipo di risorsa del log le voci corrispondenti. Per una discussione dettagliata sulle soluzioni di monitoraggio Kubernetes di Google Cloud Observability precedenti e di Google Cloud Observability e su come queste opzioni influiscono sul tipo di risorsa, consulta Eseguire la migrazione a Google Cloud Observability Kubernetes Monitoring.
Se la tua applicazione utilizza direttamente l'API Cloud Logging, la risorsa dipende dall'API e dalla tua configurazione. Ad esempio, nella tua applicazione puoi specificare una risorsa o utilizzare una risorsa predefinita.
Se non vedi alcun log in Esplora log, per vedere tutte le voci di log, passare alla modalità di query avanzata e utilizzare una query vuota.
- Per passare alla modalità di query avanzata, fai clic su menu (▾) nella parte superiore di Esplora log e seleziona Converti in filtro avanzato.
- Cancella i contenuti visualizzati nella casella dei filtri.
- Fai clic su Invia filtro.
Puoi esaminare le singole voci per identificare le risorse.
Per ulteriori informazioni, consulta Utilizzo di Esplora log.