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 il logging utilizzando PowerShell. Illustra un semplice esempio di creazione di log, sink dei log e metriche dei log.

Leggi la documentazione di riferimento dei cmdlet di Cloud Tools for PowerShell per scoprire di più sui cmdlet di logging. Per scoprire di più su Logging in generale, consulta 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 stata creata da servizi Google Cloud, servizi AWS, applicazioni di terze parti o dalle tue applicazioni. Il "messaggio" contenuto voce di log si chiama payload e può essere una semplice stringa o dati strutturati. Ogni voce di log indica la sua origine includendo il nome di una risorsa monitorata.

Il cmdlet New‑GcLogEntry può essere utilizzato per creare una voce di log. Dovrai 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 "globale". 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 di sink di log

Per esportare le voci di log, puoi creare destinazioni dei log con il cmdlet New‑GcLogSink. Stackdriver Logging assocerà le voci di log in arrivo ai tuoi 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 di metriche dei log

Puoi creare metriche dei log che conteggiano il numero di voci di log che corrispondono a determinati criteri con il cmdlet New‑GcLogMetric. 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`""