Dokumen ini menjelaskan beberapa atribut set data BigQuery yang dibuat saat sink mengekspor rekaman aktivitas dari Cloud Trace ke BigQuery.
Skema
Skema untuk tabel yang menyimpan data rekaman aktivitas ditentukan oleh definisi Trace V2 API untuk Span.
Trace melacak kolom tabel Anda dan memperbaiki tabel saat rentang baru berisi kolom yang tidak dapat disimpan dalam tabel yang ada. Operasi patch diperlukan saat rentang yang tiba berisi entri yang belum dilihat sebelumnya. Misalnya, jika rentang yang masuk berisi Attribute baru, tabel akan di-patch.
Retensi data
Anda mengonfigurasi kebijakan retensi data tabel BigQuery. Untuk mengetahui informasi tentang cara mengelola tabel dan data tabel, lihat Bekerja dengan tabel.
Jenis tabel
Jika Anda mengonfigurasi sink untuk mengekspor rekaman aktivitas ke BigQuery, Trace akan mengonfigurasi tabel berpartisi berdasarkan waktu penyerapan. Untuk mengetahui informasi mendetail tentang tabel berpartisi, termasuk cara membuat, mengelola, membuat kueri, dan menghapus tabel ini, lihat Bekerja dengan tabel berpartisi.
Sampel kueri
Dalam kueri berikut, DATASET adalah nama set data BigQuery, dan MY_TABLE adalah nama tabel dalam set data tersebut.
Untuk menampilkan semua kolom dalam tabel untuk tanggal 20 November 2019 sekaligus membatasi hasil hingga 10 baris, jalankan kueri:
SELECT * FROM `DATASET.MY_TABLE` WHERE DATE(_PARTITIONTIME) = "2019-11-20" LIMIT 10
Untuk menampilkan semua partisi yang tersedia dalam tabel, jalankan kueri:
SELECT _PARTITIONTIME as pt FROM `DATASET.MY_TABLE` GROUP BY 1
Kueri HipsterShop
HipsterShop adalah aplikasi demo yang tersedia di GitHub.
Berikut adalah contoh kueri yang menggambarkan cara Anda dapat menggunakan kueri BigQuery untuk mengumpulkan informasi yang tidak tersedia dengan mudah menggunakan antarmuka Trace.
Kueri dalam menemukan semua rentang yang cocok dengan ekspresi reguler yang ditentukan yang diterima pada 2 Desember 2019. Kueri luar memilih hal berikut untuk ditampilkan:
- nama
- jumlah rentang yang cocok
- jumlah ID rekaman aktivitas yang berbeda
- Kuantil ke-50, ke-90, dan ke-99
- Jalur HTTP
- Pesan error
dan menampilkan hasil yang diurutkan berdasarkan jumlah rekaman aktivitas:
SELECT t0.span.displayName.value, count(t0.span.spanId) as spanCount, count(distinct traceId) as traceCount, APPROX_QUANTILES(milliseconds, 100)[OFFSET(50)] as p50, APPROX_QUANTILES(milliseconds, 100)[OFFSET(95)] as p95, APPROX_QUANTILES(milliseconds, 100)[OFFSET(99)] as p99, t0.span.attributes.attributeMap._http_path, t0.span.attributes.attributeMap._error_message FROM ( SELECT *, REGEXP_EXTRACT(span.name, r"./traces/([a-f0-9]+).") as traceId, TIMESTAMP_DIFF(span.endTime,span.startTime, MILLISECOND) as milliseconds FROM `hipstershop-demo.Hipstershop_trace_export.cloud_trace` WHERE DATE(_PARTITIONTIME) = "2019-12-02") AS t0 WHERE t0.span.parentSpanId is NULL GROUP by t0.span.displayName.value, t0.span.attributes.attributeMap._http_path,t0.span.attributes.attributeMap._error_message ORDER BY traceCount DESC LIMIT 1000
Untuk satu penginstalan aplikasi ini, hasil kuerinya adalah sebagai berikut:
Melihat data rekaman aktivitas
Untuk melihat data rekaman aktivitas menggunakan antarmuka BigQuery, pilih tabel dengan rekaman aktivitas yang diekspor.