Lihat, telusuri, dan filter log permintaan web situs Anda dengan Cloud Logging

Anda dapat menautkan proyek Firebase ke Cloud Logging untuk melihat, menelusuri, dan memfilter log permintaan web untuk setiap situs Hosting Anda. Log ini berasal dari CDN yang disediakan secara otomatis oleh Firebase, sehingga setiap permintaan ke situs Anda dan data permintaan terkait dicatat.

Berikut adalah beberapa hal yang Anda lakukan dengan log Cloud Logging. Kunjungi setiap bagian halaman ini untuk mempelajari detailnya.

  • Lebih memahami situs Anda — Pelajari dari mana dan kapan Anda mengunjungi situs Anda, status respons situs Anda, latensi permintaan pengguna akhir, dan banyak lagi.

  • Filter log Anda dengan kueri — Manfaatkan data yang dikumpulkan secara otomatis untuk memfilter dan memplot data yang terkait dengan setiap permintaan atau situs Anda.

  • Gunakan metrik berbasis log — Buat diagram Cloud Monitoring dan kebijakan peringatan dari metrik sistem yang telah ditentukan sebelumnya atau metrik yang ditentukan pengguna.

  • Ekspor log ke alat Google Cloud lainnya — Gunakan data log di alat lain (seperti BigQuery dan Data Studio) untuk analisis dan korelasi yang lebih andal.

Jika Anda memiliki beberapa situs Hosting dalam proyek Anda, Anda dapat memilih situs Hosting mana yang akan mengekspor log. Anda kemudian dapat memfilter dan melihat data log Anda berdasarkan situs Hosting dan bahkan berdasarkan domain. Dengan memilih situs Hosting tertentu untuk mengekspor log, Anda juga dapat mengontrol jumlah data yang diproses untuk proyek Anda.

  1. Klik Tautan di kartu integrasi Cloud Logging di Firebase console.

    Untuk menautkan atau membatalkan tautan Cloud Logging, Anda memerlukan izin yang digabungkan ke dalam salah satu peran berikut: Pemilik proyek atau Editor atau Firebase Develop Admin .

  2. 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 perkiraan tingkat penggunaan data untuk log dari setiap situs Hosting Anda. Nilai ini diperkirakan dari 30 hari terakhir.

Setelah menautkan ke Cloud Logging, log untuk setiap permintaan baru ke situs Hosting Anda biasanya akan muncul dalam waktu 30 menit sejak permintaan dibuat.

Anda juga dapat membatalkan tautan Firebase Hosting dari Cloud Logging, yang menghentikan ekspor log permintaan web ke Cloud Logging.

Pantau penggunaan data Anda untuk log

Setelah menautkan ke Cloud Logging, Anda dapat melihat tingkat penggunaan data untuk log dari situs Hosting Anda:

Lebih memahami situs Anda

Antarmuka Logs Viewer di Google Cloud Console menawarkan alat untuk melihat log dan data spesifik Anda menggunakan kueri dan filter bawaan serta panel data. Pelajari lebih lanjut tentang memfilter log Anda dengan kueri di bagian berikutnya di bawah.

  • Dari mana lalu lintas situs Anda berasal 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 wawasan tentang puncak dan penurunan normal penggunaan aplikasi Anda, serta mengungkapkan lonjakan lalu lintas yang tidak terduga.

  • Apa distribusi status untuk permintaan pengguna akhir?
    Anda dapat melihat status untuk setiap permintaan dan bahkan mendiagnosis permintaan yang menerima kesalahan. Anda dapat memfilter log berdasarkan Critical , Error , atau Warning .

  • Berapa lama waktu yang dibutuhkan situs Anda untuk menanggapi permintaan?
    Anda dapat melihat latensi situs Anda untuk setiap permintaan menggunakan nilai latency yang diambil di setiap log.

  • Apakah situs Anda memanfaatkan caching konten?
    Setiap log berisi bidang cacheHit untuk memberi tahu Anda apakah sumber daya situs Anda disajikan dengan cepat dari cache CDN Hosting, atau jika harus melakukan perjalanan penuh ke backend Hosting. Ini dapat membantu Anda meningkatkan kinerja situs web dengan memanfaatkan CDN global Firebase secara maksimal. Misalnya, Anda dapat menggunakan data untuk menyempurnakan kebiasaan penyimpanan dalam cache aset statis dan konten dinamis .

  • Bagaimana distribusi lalu lintas ke berbagai domain Anda?
    Jika Anda memiliki beberapa domain atau situs Hosting, Anda dapat memfilter log berdasarkan domain atau situs. Ini memungkinkan Anda untuk melihat bagaimana lalu lintas Anda didistribusikan. Saat memfilter menurut domain, Anda dapat melacak domain mana yang paling sering dikunjungi.

Filter log Anda dengan kueri

Untuk mempelajari tentang cara memfilter log Anda dengan kueri, kunjungi Kueri sampel menggunakan Penampil Log dan Kueri log pembuatan . Tabel di bawah menjelaskan bidang yang tersedia untuk kueri tersebut.

Untuk Hosting, berikut adalah beberapa filter awal untuk kueri:

  • Sumber daya ( resource.type ) — firebase_domain (Domain Situs Hosting Firebase)
  • Nama log ( logName ) — webrequests (Firebase Hosting)

Setiap entri log memiliki struktur yang telah ditentukan sebelumnya dan bidang yang dapat dikueri (lihat LogEntry ). Untuk Hosting, beberapa bidang adalah standar untuk permintaan HTTP, tetapi ada nilai bidang lain yang berasal dari pemrosesan yang dijalankan Hosting pada setiap permintaan.

Bidang Keterangan
Firebase Hosting menyimpan bidang berikut di objek httpRequest dari entri log.
Bidang ini ditentukan dalam spesifikasi HTTP.
cacheHit Apakah CDN Hosting memiliki sumber daya respons dalam cache atau tidak
latency Durasi permintaan, dalam detik dengan s postfix (misalnya, 1.256s )
protocol Protokol yang digunakan untuk permintaan (misalnya, HTTP/1.1 , HTTP/2 , websocket )
referer Alamat halaman web sebelumnya dari mana tautan ke halaman yang diminta saat ini diikuti (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 berpenduduk
status Status respons HTTP (misalnya, 200 atau 404 )
userAgent Header Agen-pengguna dari permintaan
Firebase Hosting menyimpan bidang tambahan di objek jsonPayload dari entri log.
acceptEncoding (dari permintaan HTTP) Pengkodean konten mana, biasanya algoritme kompresi, yang didukung klien (misalnya, gzip atau compress )
billable Apakah proyek Anda ditagih untuk permintaan tersebut atau tidak
customDomain Apakah permintaan dibuat terhadap domain khusus atau tidak
hostname Nama host yang menjadi tujuan permintaan itu
remoteIpCountry Negara asal permintaan
remoteIpCity Kota asal permintaan

Gunakan metrik berbasis log

Anda dapat melihat dan membuat metrik berbasis log , lalu menggunakan metrik ini di Cloud Monitoring untuk membuat diagram dan kebijakan pemberitahuan.

  • Manfaatkan metrik sistem yang telah ditentukan sebelumnya yang direkam secara otomatis, seperti jumlah peristiwa logging yang terjadi dalam jangka waktu tertentu.

  • Buat metrik yang ditentukan pengguna untuk proyek 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. Anda kemudian dapat menggunakan metrik ini dalam diagram dan kebijakan pemberitahuan.

Firebase Hosting juga menghasilkan metrik logging khusus Hosting berikut. Metrik ini tidak spesifik untuk entri log melainkan untuk situs Hosting tertentu secara keseluruhan.

  • log_bytes : Total byte penggunaan data untuk setiap situs

  • response_count : Jumlah total tanggapan yang ditulis untuk situs

    Metrik ini mencakup bidang status HTTP, sehingga Anda dapat memplot respons HTTP berdasarkan status (sebagai contoh).

Ekspor log ke alat Google Cloud lainnya

Anda juga dapat mengekspor log situs Anda 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 salah satu hal berikut:

    • Gunakan Data Studio untuk membuat dasbor data Hosting Anda.
    • Jalankan kueri untuk mendapatkan lebih banyak wawasan tentang permintaan Anda (ukuran respons rata-rata, cache hit vs misses, dll.).
    • Pelajari URL mana yang sebenarnya diminta oleh pengguna Anda.
    • Gabungkan data Hosting Anda dengan data Firebase lain yang Anda ekspor ke BigQuery dan buat kueri dengan cara baru.