Menangani Logging

Dengan Cloud Logging, Anda dapat menyimpan, menelusuri, menganalisis, memantau, dan membuat pemberitahuan terkait data log dan peristiwa dari Google Cloud serta Amazon Web Services. Halaman ini menunjukkan cara mengelola Logging menggunakan PowerShell. Bagian ini memberikan contoh sederhana tentang pembuatan log, sink log, dan metrik log.

Baca referensi cmdlet Cloud Tools for PowerShell untuk mempelajari cmdlet Logging lebih lanjut. Untuk mempelajari lebih lanjut Logging secara umum, baca panduan Ringkasan Logging.

Membuat log dan entri log

Log adalah kumpulan entri log bernama dalam proyek. Entri log mencatat status atau suatu peristiwa. Entri tersebut mungkin dibuat oleh layanan Google Cloud, layanan AWS, aplikasi pihak ketiga, atau aplikasi Anda sendiri. "Pesan" yang dibawa entri log disebut payload, dan bisa berupa string sederhana atau data terstruktur. Setiap entri log menunjukkan dari mana asalnya dengan menyertakan nama resource yang dipantau.

Cmdlet New‑GcLogEntry dapat digunakan untuk membuat entri log. Anda harus menentukan log yang mencakup entri tersebut (jika tidak ada, log akan dibuat). Untuk mengaitkan log dengan resource yang dimonitor, Anda dapat menggunakan parameter -MonitoredResource. Secara default, entri log dikaitkan dengan resource "global". Untuk membuat resource yang dimonitor, gunakan 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

Anda dapat mengambil entri log dengan 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"

Membuat sink log

Untuk mengekspor entri log, Anda dapat membuat sink log dengan cmdlet New‑GcLogSink. Stackdriver Logging akan mencocokkan entri log yang masuk dengan sink Anda, dan semua entri log yang cocok dengan setiap sink akan disalin ke tujuan terkait. Entri log yang ada sebelum sink dibuat tidak akan diekspor.

Tujuan untuk log yang diekspor dapat berupa Bucket Cloud Storage, Set Data BigQuery, atau Topik 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"

Membuat metrik log

Anda dapat membuat metrik log yang menghitung jumlah entri log yang cocok dengan kriteria tertentu dengan cmdlet New‑GcLogMetric. Metrik ini dapat digunakan untuk membuat diagram dan kebijakan pemberitahuan di 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`""