Ringkasan v1.logs

Dokumen ini menjelaskan cara data log yang dikirim ke your Google Cloud project menggunakan Telemetry (OTLP) API dipetakan ke struktur Cloud Logging. API ini mengimplementasikan Protokol OTLP OpenTelemetry. Anda dapat mengirim data ke API ini saat menginstrumentasikan aplikasi dengan pengekspor otlphttp dan OpenTelemetry Collector, atau saat menggunakan OpenTelemetry SDK.

OpenTelemetry adalah project open source yang didukung Google Clouddengan Google Cloud teknisi yang ditugaskan untuk memastikan dukungan dalam menyerap dan memvisualisasikan telemetri Anda.

Struktur umum data log berformat OTLP

Saat data log dikirim ke Google Cloud yourproject menggunakan Telemetry API, data ini harus dalam format yang konsisten dengan OTLP. Struktur umum untuk data ini adalah sebagai berikut:

"resourceLogs": [
    {
      "resource": {
        "attributes": [...]
      },
      "scopeLogs": [
        {
          "logRecords": [...]
        }
      ]
    }
]

Perhatikan bahwa OpenTelemetry mengelompokkan log individual, yang masing-masing direpresentasikan oleh struktur logRecord, dengan informasi tentang sumber log tersebut, yang direpresentasikan oleh struktur resource.

Saat menerima objek resourceLogs, Google Cloud Observability akan membuat satu LogEntry untuk setiap logRecord. Tidak seperti OTLP yang mengelompokkan informasi sumber dengan kumpulan log individual, setiap struktur LogEntry berisi informasi tentang sumber log dan log itu sendiri.

Untuk mempelajari lebih lanjut struktur data log berformat OTLP, lihat logs.proto OpenTelemetry.

Cara data log berformat OTLP diproses

Saat Anda mengirim struktur resourceLogs OTLP ke Telemetry API, Google Cloud Observability akan melakukan tindakan berikut:

  1. Untuk setiap logRecord, sistem akan membuat LogEntry.

    Dokumen berikut menjelaskan cara sistem mengisi LogEntry dari data log OTLP:

    Karena setiap LogEntry berisi informasi tentang jenis resource Cloud Logging yang sesuai, setiap LogEntry mungkin lebih besar daripada logRecord OTLP yang sesuai.

    Konversi dari struktur resourceLogs OTLP ke serangkaian struktur LogEntry mungkin mengalami kehilangan data. Artinya, Anda mungkin tidak dapat mengonversi dari struktur LogEntry ke kolom resource dan logRecord asli.

  2. LogEntry dirutekan oleh sink gabungan dalam hierarki project dan oleh sink dalam project, dengan cara yang sama persis seperti jika entri log dikirim ke project Anda menggunakan Cloud Logging API.

Praktik terbaik

Saat menginstrumentasikan aplikasi untuk mengirim data pelacakan ke Google Cloud project Anda, sebaiknya gunakan pengekspor yang menulis data berformat OTLP ke Collector, yang kemudian mengirim data pelacakan Anda ke Telemetry API. Di pengumpul, tentukan hanya URL root:

exporters:
  otlphttp:
    encoding: proto
    endpoint: https://telemetry.googleapis.com

OpenTelemetry mendeteksi jenis data dan otomatis menambahkan /v1/traces, /v1/metrics, atau /v1/logs sebagaimana mestinya. Untuk mengetahui informasi selengkapnya, lihat Permintaan OTLP/HTTP.

Untuk contoh yang mengekspor data pelacakan atau metrik ke Telemetry API, lihat dokumen berikut:

Jika tidak dapat menggunakan pengumpul, Anda dapat menggunakan library OpenTelemetry yang berisi pengekspor OTLP dalam proses untuk mengirim telemetri ke Telemetry API. Untuk mempelajari cara mengekspor data pelacakan secara langsung, lihat Pengekspor Cloud Trace ke endpoint OTLP.

Autentikasi

Anda harus mengonfigurasi pengekspor dengan kredensial yang diperlukan untuk mengirim data ke your Google Cloud project. Misalnya, saat menggunakan pengumpul, biasanya Anda juga menggunakan ekstensi googleclientauth untuk melakukan autentikasi dengan kredensial Google.

Untuk contoh autentikasi saat menggunakan ekspor data pelacakan langsung, lihat Mengonfigurasi autentikasi. Contoh ini mengilustrasikan cara mengonfigurasi pengekspor dengan Google Cloud Kredensial Default Aplikasi (ADC) dan menambahkan Google Auth Library khusus bahasa ke aplikasi Anda.

Cloud Logging dan residensi data

Secara default, Cloud Logging merutekan entri log yang berasal dari project ke bucket log yang dibuat sistem. Bucket log adalah resource regional. Anda dapat memperbarui sink log default untuk mengirim entri log ke bucket log kustom yang berada di lokasi pilihan Anda. Untuk mempelajari lebih lanjut, lihat Melokalkan log Anda.

Cloud Logging menyediakan setelan yang dapat Anda konfigurasi untuk organisasi dan folder. Setelan ini menentukan lokasi bucket log yang dibuat sistem baru, apakah bucket log ini menggunakan kunci enkripsi yang dikelola pelanggan (CMEK), dan konfigurasi sink log default. Untuk mempelajari lebih lanjut, lihat Dukungan untuk organisasi dan folder.

Tempat melihat data yang diserap

Anda dapat melihat data log menggunakan halaman Logs Explorer dan Observability Analytics. Untuk mengetahui informasi selengkapnya, lihat:

Batasan

Bagian ini menjelaskan batasan. Bagian ini juga menjelaskan cara Google Cloud Observability menangani jenis data tertentu.

Batas

Deskripsi Nilai Catatan
Jumlah maksimum log per permintaan OTLP 8192 Mengacu pada jumlah maksimum logRecords dalam struktur OTLP resourceLogs. Batas.
Ukuran maksimum setiap permintaan 5 MiB Batas.
Ukuran maksimum LogEntry
yang dibuat dari catatan log OTLP
256 KiB Cloud Logging memangkas atau menghapus data dari catatan log OTLP jika diperlukan. Batas.
Panjang maksimum kunci atribut 512 B Kunci label yang terlalu besar akan dipangkas saat catatan log OTLP dikonversi menjadi LogEntry. Batas.
Panjang maksimum nilai atribut 64 KiB Nilai label yang terlalu besar saat catatan log OTLP dikonversi menjadi a LogEntry. Batas.
Kedalaman maksimum nesting atribut 5 Atribut yang melebihi batas ini akan dipangkas saat catatan log OTLP dikonversi menjadi LogEntry.
Jumlah maksimum byte penyerapan log per menit

2,4 GB untuk wilayah berikut: asia-east1, asia-northeast1, asia-southeast1, asia-south1, europe-west1, europe-west2, europe-west3, europe-west4, us-central1, us-east4, us-west1.

300 MB untuk semua wilayah lainnya.

Kuota.

Perilaku

  • Jika nomor tingkat keparahan OpenTelemetry dan teks tingkat keparahan ditetapkan, sistem akan menggunakan nomor tingkat keparahan untuk menentukan tingkat keparahan Cloud Logging. Jika catatan OTLP tidak berisi informasi tingkat keparahan, tingkat keparahan Cloud Logging akan ditetapkan ke DEFAULT.

  • Jika catatan OTLP berisi kunci atribut duplikat, sistem akan mempertahankan kunci pertama dan menghapus atribut dengan kunci duplikat.

  • Sistem mengonversi atribut yang dilampirkan ke catatan log menjadi string. Untuk contoh, lihat kolom Label.

  • Nama log harus aman untuk URL atau dienkode URL selama penyerapan. Untuk mengetahui informasi tentang cara nama log ditetapkan, lihat Cara kolom LogEntry ditetapkan.