Anda dapat menautkan project Firebase ke Cloud Logging untuk melihat, menelusuri, dan memfilter log permintaan web untuk setiap situs Hosting Anda. Log ini berasal dari CDN yang secara otomatis disediakan oleh Firebase, sehingga setiap permintaan ke situs Anda dan data permintaan terkait akan dicatat ke dalam log.
Berikut adalah beberapa hal yang dapat Anda lakukan dengan log Cloud Logging. Buka setiap bagian halaman ini untuk mempelajari detailnya.
Memahami situs Anda dengan lebih baik — Pelajari dari mana dan kapan situs Anda dikunjungi, status respons situs, latensi permintaan pengguna akhir, dan lainnya.
Memfilter log dengan kueri — Manfaatkan data yang dikumpulkan secara otomatis untuk memfilter dan memetakan data yang terkait dengan setiap permintaan atau situs Anda.
Menggunakan metrik berbasis log — Buat diagram Cloud Monitoring dan kebijakan pemberitahuan dari metrik sistem yang telah ditentukan atau metrik yang ditentukan pengguna.
Mengekspor log ke alat Google Cloud lainnya — Gunakan data log di alat lainnya (seperti BigQuery dan Data Studio) untuk memperoleh analisis dan korelasi yang lebih efektif.
Jika memiliki beberapa situs Hosting dalam project, Anda dapat memilih situs Hosting mana yang akan mengekspor log. Selanjutnya, Anda dapat memfilter dan melihat data log menurut situs Hosting dan bahkan menurut domain. Dengan memilih situs Hosting tertentu untuk mengekspor log, Anda juga dapat mengontrol jumlah data yang diproses untuk project Anda.
Menautkan ke Cloud Logging dan memantau penggunaan data Anda
Menautkan ke Cloud Logging dan mengekspor log permintaan web
Klik Link di kartu integrasi Cloud Logging di Firebase console.
Untuk menautkan atau membatalkan tautan Cloud Logging, Anda memerlukan izin yang termasuk dalam salah satu peran berikut: Pemilik atau Editor project atau Admin Firebase Develop.
Ikuti petunjuk di layar untuk memilih situs Hosting mana yang harus mengekspor log ke Cloud Logging.
Jika Anda sudah memiliki satu atau beberapa situs Hosting aktif, alur kerja penautan menampilkan estimasi tingkat penggunaan data untuk log dari setiap situs Hosting Anda. Nilai ini merupakan estimasi dari 30 hari terakhir.
Setelah menautkan ke Cloud Logging, log untuk semua permintaan baru ke situs Hosting Anda biasanya akan muncul dalam waktu 30 menit setelah permintaan dibuat.
Anda juga dapat membatalkan tautan Firebase Hosting dari Cloud Logging, yang menghentikan ekspor log permintaan web ke Cloud Logging.
Memantau penggunaan data Anda untuk log
Setelah menautkan ke Cloud Logging, Anda dapat melihat tingkat penggunaan data untuk log dari situs Hosting Anda:
Di kartu integrasi Cloud Logging di Firebase console
Di antarmuka Logs Viewer di Google Cloud console (metrik
log_bytes
)
Memahami situs Anda dengan lebih baik
Antarmuka Logs Viewer di Google Cloud console menawarkan alat untuk melihat log dan data tertentu menggunakan kueri serta panel data dan filter bawaan. Pelajari lebih lanjut cara memfilter log dengan kueri di bagian berikutnya di bawah ini.
Dari mana asal traffic situs Anda pada tingkat yang terperinci?
Anda dapat melihat informasi tentang setiap permintaan, termasuk IP sumber, perujuk, kota, dan status.Kapan pengguna mengunjungi situs Anda?
Anda dapat menggunakan Panel histogram untuk melihat distribusi berdasarkan rentang waktu tertentu. Ini dapat memberi Anda insight tentang puncak dan penurunan normal dari penggunaan aplikasi Anda, serta mengungkap lonjakan yang tidak terduga dalam traffic.Bagaimana distribusi status untuk permintaan pengguna akhir?
Anda dapat melihat status untuk setiap permintaan dan bahkan mendiagnosis permintaan yang menerima error. Anda dapat memfilter log menurutCritical
,Error
, atauWarning
.Berapa lama waktu yang dibutuhkan situs Anda untuk merespons permintaan?
Anda dapat melihat latensi situs untuk setiap permintaan menggunakan nilailatency
yang dicatat di setiap log.Apakah situs Anda memanfaatkan penyimpanan konten ke dalam cache?
Setiap log berisi kolomcacheHit
untuk memberi tahu Anda apakah resource situs disalurkan dengan cepat dari cache CDN Hosting, atau apakah harus melakukan perjalanan penuh ke backend Hosting. Dengan begitu, Anda dapat meningkatkan performa situs dengan memaksimalkan CDN global Firebase. Misalnya, Anda dapat menggunakan data untuk mengatur kebiasaan penyimpanan aset statis dan konten dinamis ke dalam cache.Bagaimana distribusi traffic ke berbagai domain Anda?
Jika memiliki beberapa domain atau situs Hosting, Anda dapat memfilter log menurut domain atau situs. Hal ini memungkinkan Anda untuk melihat cara traffic didistribusikan. Saat memfilter menurut domain, Anda dapat melacak domain mana yang paling sering dikunjungi.
Memfilter log dengan kueri
Untuk mempelajari cara memfilter log dengan kueri, buka Contoh kueri menggunakan Logs Viewer dan Mem-build kueri log. Tabel di bawah ini menjelaskan kolom yang tersedia untuk kueri tersebut.
Untuk Hosting, berikut beberapa filter awal untuk kueri:
- Resource (
resource.type
) —firebase_domain
(Domain Situs Firebase Hosting) - Nama log (
logName
) —webrequests
(Firebase Hosting)
Setiap entri log memiliki struktur yang telah ditentukan dan kolom yang dapat dikueri (lihat LogEntry). Untuk Hosting, beberapa kolom merupakan standar untuk permintaan HTTP, tetapi ada nilai kolom lain yang berasal dari pemrosesan yang dijalankan oleh Hosting di setiap permintaan.
Kolom | Deskripsi |
---|---|
Firebase Hosting menyimpan kolom berikut di objek httpRequest entri log.Kolom ini ditentukan dalam spesifikasi HTTP. |
|
cacheHit |
Apakah CDN Hosting memiliki resource respons dalam cache atau tidak |
latency |
Durasi permintaan, dalam detik dengan akhiran s (misalnya, 1.256s ) |
protocol |
Protokol yang digunakan untuk permintaan (misalnya, HTTP/1.1 , HTTP/2 , websocket ) |
referer |
Alamat halaman web sebelumnya yang diikuti oleh link ke halaman yang diminta saat ini (jika ada) |
remoteIp |
IP klien asal untuk permintaan |
requestMethod |
Metode permintaan (GET , POST , PUT , dll.) |
requestSize |
Ukuran permintaan dalam byte |
requestUrl |
URL lengkap permintaan (misalnya,https://foo.web.app/bar atau https://custom.domain.com?query=param ) |
responseSize |
Ukuran respons HTTP dalam byte |
serverIp |
tidak diisi |
status |
Status respons HTTP (misalnya, 200 atau 404 ) |
userAgent |
Header user-Agent permintaan |
Firebase Hosting menyimpan kolom tambahan di objek jsonPayload entri log.
|
|
acceptEncoding |
(dari permintaan HTTP) Encoding konten mana, biasanya algoritme kompresi, yang didukung klien (misalnya, gzip atau compress ) |
billable |
Apakah project Anda ditagih untuk permintaan tersebut atau tidak |
customDomain |
Apakah permintaan dibuat untuk domain kustom atau tidak |
hostname |
Nama host tujuan permintaan |
remoteIpCountry |
Negara asal permintaan |
remoteIpCity |
Kota asal permintaan |
Menggunakan metrik berbasis log
Anda dapat melihat dan mem-build metrik berbasis log, lalu menggunakan metrik ini di Cloud Monitoring untuk membuat diagram dan kebijakan pemberitahuan.
Manfaatkan metrik sistem yang telah ditentukan yang direkam secara otomatis, seperti jumlah peristiwa logging yang terjadi dalam jangka waktu tertentu.
Buat metrik yang ditentukan pengguna untuk project Anda. Anda dapat menghitung jumlah entri log yang cocok dengan kueri tertentu atau melacak nilai tertentu dengan entri log yang cocok. Anda dapat memfilter menggunakan ekspresi reguler.
Gunakan Cloud Monitoring untuk mencatat jumlah entri log yang berisi pesan tertentu atau mengekstrak informasi latensi yang dilaporkan dalam entri log. Selanjutnya, Anda dapat menggunakan metrik ini dalam diagram dan kebijakan pemberitahuan.
Firebase Hosting juga menghasilkan metrik logging khusus Hosting berikut. Metrik ini tidak khusus untuk entri log, melainkan untuk situs Hosting tertentu secara keseluruhan.
log_bytes
: Total byte penggunaan data untuk setiap situsresponse_count
: Jumlah total respons yang ditulis untuk situsMetrik ini mencakup kolom status HTTP, sehingga Anda dapat memetakan respons HTTP menurut status (sebagai contoh).
Mengekspor log ke alat Google Cloud lainnya
Anda juga dapat mengekspor log situs ke alat Google Cloud lainnya, seperti Cloud Monitoring atau BigQuery, misalnya:
Dengan menggunakan Cloud Monitoring, Anda dapat membuat metrik berbasis log yang dapat digunakan dalam diagram dan kebijakan pemberitahuan.
Dengan menggunakan BigQuery, Anda dapat melakukan hal berikut:
- Menggunakan Data Studio untuk membuat dasbor data Hosting Anda.
- Menjalankan kueri untuk mendapatkan lebih banyak insight tentang permintaan Anda (ukuran respons rata-rata, cache yang ditemukan vs yang terlewat, dll.).
- Mempelajari URL mana yang benar-benar diminta pengguna.
- Menggabungkan data Hosting dengan data Firebase lain yang Anda ekspor ke BigQuery dan membuat kueri untuknya dengan cara baru.