Utilizzo di Logging

Cloud Logging ti consente di archiviare, cercare, analizzare, monitorare e creare avvisi su dati di log ed eventi di Google Cloud e Amazon Web Services. Questa pagina mostra come gestire Logging utilizzando PowerShell. Offre un semplice esempio di creazione di log, sink di log e metriche di log.

Per saperne di più sui cmdlet di Logging, consulta il riferimento sul Cmdlet di Cloud Tools for PowerShell. Per saperne di più su Logging in generale, leggi la guida Panoramica di Logging.

Creazione di log e voci di log

Un log è una raccolta denominata di voci di log all'interno del progetto. Una voce di log registra lo stato o un evento. La voce potrebbe essere creata da servizi Google Cloud, servizi AWS, applicazioni di terze parti o applicazioni personali. Il "messaggio" trasportato dalla voce di log è chiamato payload e può essere una semplice stringa o dati strutturati. Ogni voce di log indica la sua provenienza includendo il nome di una risorsa monitorata.

Il cmdlet New‑GcLogEntry può essere utilizzato per creare una voce di log. Devi specificare il log a cui appartiene la voce (se il log non esiste, verrà creato). Per associare il log a una risorsa monitorata, puoi utilizzare il parametro -MonitoredResource. Per impostazione predefinita, la voce di log è associata alla risorsa "global". Per creare una risorsa monitorata, utilizza il cmdlet New‑GcLogMonitoredResource.

# Creates a log entry in the log "my-log".
New-GcLogEntry -LogName "my-log" -TextPayload "This is a log entry."

# Creates a log entry associated with a Cloud SQL monitored resource
$resource = New-GcLogMonitoredResource -ResourceType "cloudsql_database" `
                                       -Labels @{"project_id" = "my-project";
                                                 "database_id" = "id"}
New-GcLogEntry -LogName "my-log" `
               -TextPayload "This is a log entry." `
               -MonitoredResource $resource

Puoi recuperare le voci di log con il cmdlet Get‑GcLogEntry.

# Gets all entries from log "my-log"
Get-GcLogEntry -LogName "my-log"

# Gets all entries associated with Compute Engine instances
Get-GcLogEntry -ResourceName "gce_instance"

Creazione dei sink di log

Per esportare le voci di log, puoi creare sink di log con il cmdlet New‑GcLogSink. Stackdriver Logging abbinerà le voci di log in entrata ai sink e tutte le voci di log corrispondenti a ciascun sink verranno copiate nella destinazione associata. Le voci di log esistenti prima della creazione del sink non verranno esportate.

Le destinazioni per i log esportati possono essere bucket Cloud Storage, set di dati BigQuery o argomenti Pub/Sub.

# Creates a log sink for log entries in the default project.
# The entries will be sent to the Cloud Storage bucket "my-bucket"
New-GcLogSink -Sink "my-sink" -GcsBucketDestination "my-bucket"

# Creates a log sink for log entries in log "my-log".
# The entries will be sent to the BigQuery data set "my_dataset"
New-GcLogSink -Sink "my-sink" `
              -LogName "my-log" `
              -BigQueryDataSetDestination "my_dataset"

# Creates a log sink for log entries that match the filter.
# The entries will be sent to the Pub/Sub topic "my-topic".
New-GcLogSink -Sink "my-sink" `
              -Filter "textPayload = `"Testing`"" `
              -PubSubTopicDestination "my-topic"

Creazione delle metriche di log

Con il Cmdlet New‑GcLogMetric puoi creare metriche di log che conteggiano il numero di voci di log corrispondenti a determinati criteri. Queste metriche possono essere utilizzate per creare grafici e criteri di avviso in Stackdriver Monitoring.

# Creates a metric for entries in log "my-log".
New-GcLogMetric -Metric "my-metric" -LogName "my-log"

# Creates a metric for entries associated with Compute Engine instances
New-GcLogMetric -Metric "my-metric" -ResourceType "gce_instance"

# Creates a metric for entries that match the filter.
New-GcLogMetric -Metric "my-metric" -Filter "textPayload = `"Testing`""