I log delle attività di Compute Engine non sono la stessa cosa degli audit log. I log di controllo contengono le stesse informazioni dei log attività legacy e altro ancora. Ti consigliamo di utilizzare i log di controllo anziché i log attività. Se utilizzi già i log delle attività, leggi Migrazione dai log delle attività agli audit log.
Compute Engine fornisce log attività che ti consentono di monitorare determinati eventi che interessano il tuo progetto, come chiamate API ed eventi di sistema. Nello specifico, i log delle attività forniscono informazioni su:
- Chiamate API Compute Engine: gli eventi
GCE_API_CALL
sono chiamate API che modificano lo stato di una risorsa. Ad esempio, le chiamate API per creare un disco, aggiornare i metadati dell'istanza, creare un gruppo di istanze o modificare un tipo di macchina vengono registrate nei log attività. Le chiamate API che non aggiornano una risorsa, come le richiesteget
elist
, non vengono registrate. - Log delle operazioni: gli eventi
GCE_OPERATION_DONE
vengono registrati quando una chiamata API modifica lo stato di una risorsa, Compute Engine restituisce un evento di operazione completata che viene registrato nei log attività. - Log di sistema: gli eventi
GCE_SYSTEM_EVENT
vengono registrati quando Compute Engine esegue un evento di sistema, che viene registrato nei log delle attività. Ad esempio, un evento di manutenzione trasparente verrà registrato come evento di sistema.
Ad esempio, con un evento API, un log attività fornisce dettagli come l'ora di inizio e di fine di una richiesta API, i dettagli del corpo della richiesta, l'utente autorizzato che ha effettuato la richiesta API e l'endpoint della richiesta. Puoi scaricare i log delle attività per cercare richieste API specifiche o per esaminare gli eventi di sistema avviati da Compute Engine.
I log attività non forniscono informazioni su fatturazione o utilizzo di un progetto, ad esempio per quanto tempo è stata in esecuzione un'istanza di macchina virtuale o quanto costa. Per i log di fatturazione, consulta la funzionalità di esportazione della fatturazione. Per i log di utilizzo, vedi Visualizzare i report sull'utilizzo.
I log attività vengono forniti nell'ambito del servizio Cloud Logging. Per saperne di più su Logging in generale, leggi la documentazione di Cloud Logging.
Prima di iniziare
- Avere familiarità con Cloud Logging.
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è
il processo mediante il quale la tua identità viene verificata per l'accesso ai Google Cloud servizi e alle API.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su
Compute Engine selezionando una delle seguenti opzioni:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
logging.logServiceIndexes.list
sul progettologging.logServices.list
sul progetto- Nella console Google Cloud , vai alla pagina Logging.
- In Esplora log, seleziona e filtra il tipo di risorsa dal primo elenco a discesa.
- Dall'elenco a discesa Tutti i log, seleziona compute.googleapis.com/activity_log per visualizzare i log delle attività di Compute Engine.
compute.googleapis.com/activity_log
come valore del campolog
metadata
, che descrive informazioni comuni come il timestampstructPayload
, che contiene i contenuti specifici della voce di logGCE_API_CALL
. Indica una chiamata API REST che ha aggiornato una risorsa.GCE_OPERATION_DONE
. Dopo il completamento di una richiesta API, indipendentemente dall'esito, questo tipo di evento viene registrato.GCE_SYSTEM_EVENT
. Un evento di sistema avviato da Compute Engine.
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Per saperne di più, consulta la sezione Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud .
Autorizzazioni richieste per questa attività
Per eseguire questa attività, devi disporre delle seguenti autorizzazioni:
Visualizzazione dei log
Il logging delle attività è abilitato per impostazione predefinita per tutti i progetti Compute Engine.
Puoi visualizzare i log attività del tuo progetto tramite Esplora log in Google Cloud console:
Log di routing
Per scoprire come esportare i log attività, leggi Configurare e gestire i sink nella documentazione di Cloud Logging.
Identificare i file di log
Quando esporti i log in Cloud Storage, i file di log vengono archiviati nella struttura descritta nella documentazione relativa agli oggetti voce di log.
I file di log di Compute Engine vengono archiviati con la seguente struttura di directory:
<bucket>/compute.googleapis.com/activity_log/<year>/<month>/<day>
Di seguito è riportato un esempio di nome file di log archiviato in un bucket Cloud Storage denominato
my-bucket
:my-bucket/compute.googleapis.com/activity_log/2014/10/31/20:00:00_20:59:59_S0.json
In BigQuery, i log attività vengono archiviati in un insieme di tabelle, una tabella per ogni tipo di log e giorno, e le tabelle vengono denominate utilizzando il seguente formato:
<dataset>.compute_googleapis_com_activity_log_YYYYMMDD
Per informazioni su come eseguire query sui log attività in BigQuery, vedi Voci di log in BigQuery.
Lettura dei log delle attività
I log attività sono strutturati come descritto nella documentazione relativa al tipo LogEntry.
I log attività di Compute Engine hanno:
Puoi trovare maggiori dettagli sui campi comuni forniti con ogni voce di log nella descrizione di LogEntry, ma i contenuti del payload delle voci di log attività sono specifici di Compute Engine e sono descritti di seguito.
Contenuti del payload
I contenuti di una voce di log vengono forniti in formato oggetto JSON e vengono memorizzati nel campo
structPayload
. Il campostructPayload
contiene le seguenti informazioni:Campo Tipo Descrizione actor
string Email dell'utente o del account di servizio che esegue l'operazione. Questo è lo stesso del user_id
.error
string Fornisce i dettagli di eventuali errori se si è verificato un errore durante questo evento. Questo campo viene omesso se non sono stati rilevati errori. In genere, gli errori impediscono il completamento di una richiesta. Puoi utilizzare questo campo per eseguire il debug di una richiesta non riuscita. event_subtype
string Descrive il sottotipo specifico come metodo API. Ad esempio, una richiesta per inserire una nuova istanza viene visualizzata come
compute.instances.insert
e una richiesta per eliminare una risorsa Address viene visualizzata comecompute.addresses.delete
.Consulta il riferimento API per un elenco completo dei metodi API.
event_timestamp_us
timestamp Il timestamp, in microsecondi, dell'evento registrato dal periodo standard. È uguale a metadata.timestamp
.event_type
string Descrive il tipo di evento generale. Può essere uno dei seguenti valori:
info
string Un campo facoltativo con informazioni aggiuntive, se applicabile. Questo campo viene omesso se non ci sono ulteriori informazioni da mostrare. operation
string Quando viene effettuata una richiesta API per aggiornare o modificare qualsiasi risorsa, viene creato un oggetto operazione corrispondente per monitorare la richiesta fino al completamento. Questa proprietà descrive l'oggetto dell'operazione per questo evento, fornendo informazioni come il nome dell'operazione, la zona o la regione dell'operazione e l'ID operazione. Le operazioni possono essere un'operazione a livello di zona, un'operazione a livello di regione o un'operazione globale, a seconda della risorsa che l'operazione sta modificando.
request
JSON Contiene il corpo della richiesta API originale. resource
JSON Descrive la risorsa specifica modificata da questo evento. Ad esempio, un'istanza di macchina virtuale (VM) è considerata una risorsa e una proprietà di risorsa di esempio per una VM ha il seguente aspetto: "resource": { "type": "instance", "name": "example-instance", "id": "0", "zone": "us-central1-f" }
Un elenco dei tipi di risorse è descritto in dettaglio nei riferimenti per le API.
Nota:se un'azione influisce su più risorse, potrebbero essere presenti più voci di log con lo stesso
trace_id
.trace_id
string Un ID traccia fornito dal sistema utilizzato per raggruppare i log correlati attivati da una singola azione. Ad esempio: trace_id: "operation-1442436581415-51fe3700bd85a-7fd317e3-f1a3555e"
user_agent
string Descrive il client che ha eseguito questa richiesta. Ad esempio, se hai utilizzato le librerie client Cloud per Java per effettuare una richiesta, lo user agent sarebbe Google-API-Java-Client
.version
string La versione corrente del formato dei log indica lo schema dei log di Compute Engine. La versione attuale è la 1.2. Nota:il controllo delle versioni dell'API Compute Engine è separato dal controllo delle versioni del formato dei log.
warning
string Fornisce eventuali dettagli di avviso se si sono verificati avvisi durante questo evento. Un avviso è informativo e non influisce sulla richiesta, a differenza degli errori. Voce di log di esempio
Ad esempio, una voce di log di esempio che descrive una richiesta API per creare una VM ha il seguente aspetto:
{ "log": "compute.googleapis.com/activity_log", "insertId": "2015-09-16|13:49:42.532185-07|10.106.9.208|335899593", "metadata": { "severity": "INFO", "projectId": "835469197146", "serviceName": "compute.googleapis.com", "zone": "us-central1-f", "labels":{ "compute.googleapis.com/resource_id":"0", "compute.googleapis.com/resource_name":"example-instance", "compute.googleapis.com/resource_type":"instance", "compute.googleapis.com/resource_zone":"us-central1-f" }, "timestamp": "2015-09-16T20:49:42.423637Z" }, "structPayload": { "version": "1.2", "trace_id": "operation-1442436581415-51fe3700bd85a-7fd317e3-f1a3555e", "event_timestamp_us": "1442436582423637", "event_type": "GCE_API_CALL", "event_subtype": "compute.instances.insert", "resource": { "type": "instance", "name": "example-instance", "id": "0", "zone": "us-central1-f" }, "actor": { "user": "user@example.com" }, "ip_address": "", "user_agent": "apitools-client/1.0", "request": { "url": "https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/instances", "body": "{ \"canIpForward\":false, \"description\":\"\", \"disks\":[{ \"autoDelete\":true, \"boot\":true, \"deviceName\":\"example-instance\", \"initializeParams\":{ \"diskSizeGb\":\"10\", \"diskType\":\"https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/diskTypes/pd-standard\", \"sourceImage\":\"https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-8-jessie-v20150818\" }, \"mode\":\"READ_WRITE\", \"type\":\"PERSISTENT\" }], \"machineType\":\"https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/machineTypes/n1-standard-1\", \"metadata\":{ \"items\":[] }, \"name\":\"example-instance\", \"networkInterfaces\":[{ \"accessConfigs\":[{ \"name\":\"External NAT\", \"type\":\"ONE_TO_ONE_NAT\" }], \"network\":\"https://www.googleapis.com/compute/v1/projects/myproject/global/networks/default\" }], \"scheduling\":{ \"automaticRestart\":true, \"onHostMaintenance\":\"MIGRATE\", \"preemptible\":false }, \"serviceAccounts\":[{ \"email\":\"default\", \"scopes\":[ \"https://www.googleapis.com/auth/devstorage.read_only\", \"https://www.googleapis.com/auth/logging.write\" ] }], \"tags\":{ \"items\":[] }, \"zone\":\"https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f\" }" }, "operation": { "type": "operation", "name": "operation-1442436581415-51fe3700bd85a-7fd317e3-f1a3555e", "id": "291347737657178184", "zone": "us-central1-f" } } }
Voci di log delle attività ritirate
Le seguenti voci del log attività verranno ritirate, senza sostituzione, il 1° giugno 2020:
Tipo di risorsa monitorata Event SubType gce_backend_service
BackendServiceConfigProgramming
gce_instance
RE_ENCRYPT_SSL_CERTIFICATE_FLOW
gce_instance
addFirewallRuleToSecurityPolicy
gce_instance
attachCloudLink
gce_instance
attachFirewallSecurityPolicy
gce_instance
compute.instanceGroupManagers.updateHealth
gce_instance
compute.instanceGroups.detachHealthCheck
gce_instance
compute.instanceNetworkConfig.updateName
gce_instance
compute.regionInstanceGroups.attachHealthCheck
gce_instance
compute.regionInstanceGroups.detachHealthCheck
gce_instance
createFirewallSecurityPolicy
gce_instance
deleteFirewallSecurityPolicy
gce_instance
detachFirewallSecurityPolicy
gce_instance
patchFirewallRuleInSecurityPolicy
gce_instance
removeCloudLink
gce_instance
removeFirewallRuleFromSecurityPolicy
gce_instance
updateFirewallSecurityPolicy
gce_instance
updateVpnTunnel
gce_instance_group
compute.instanceGroups.attachHealthCheck
gce_instance_group
compute.instanceGroups.attachNetworkInterfaces
gce_instance_group
compute.instanceGroups.detachHealthCheck
gce_instance_group
compute.regionInstanceGroups.attachHealthCheck
gce_instance_group
compute.regionInstanceGroups.detachHealthCheck
gce_instance_template
compute.zoneInstanceTemplates.insert
gce_network
compute.networks.switchLegacyToCustomMode
gce_project
compute.projects.moveProjectNetworking
gce_reserved_address
compute.addresses.insertDnsForwarding
gce_reserved_address
compute.addresses.insertNatAddress
gce_ssl_certificate
RE_ENCRYPT_SSL_CERTIFICATE_FLOW
gce_ssl_certificate
SslCertificateAddManagedCertificateChallenge
gce_ssl_certificate
SslCertificateProvisionManagedCertificate
gce_ssl_certificate
SslCertificateRemoveManagedCertificateChallenge
gce_subnetwork
compute.subnetworks.createOrUpdateVirtualSubnetwork
vpn_tunnel
updateVpnTunnel
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2025-07-11 UTC.
-