Cloud Logging ile sitenizin web isteği günlüklerini görüntüleyin, arayın ve filtreleyin

Hosting sitelerinizin her biri için web istek günlüklerinizi görüntülemek, aramak ve filtrelemek üzere Firebase projenizi Cloud Logging'e bağlayabilirsiniz. Bu günlükler, Firebase tarafından otomatik olarak sağlanan CDN'den gelir. Bu nedenle, sitenize yapılan her istek ve ilişkili istek verileri günlüklenir.

Cloud Logging günlükleriyle yapabileceğiniz bazı işlemler aşağıda açıklanmıştır. Ayrıntılı bilgi edinmek için bu sayfanın her bölümünü ziyaret edin.

Projenizde birden fazla Hosting siteniz varsa hangi Hosting sitelerinizin günlükleri dışa aktaracağını seçebilirsiniz. Ardından, günlük verilerinizi Hosting siteye ve hatta alana göre filtreleyip görüntüleyebilirsiniz. Günlükleri dışa aktarmak için belirli Hosting sitelerini seçerek projeniz için işlenen veri miktarını da kontrol edebilirsiniz.

  1. Firebase konsolundaki Cloud Logging entegrasyon kartında Bağlan'ı tıklayın.

    Cloud Logging'ü bağlamak veya bağlantısını kaldırmak için aşağıdaki rollerden herhangi birinde bulunan izinlere sahip olmanız gerekir: Proje Sahibi veya Düzenleyici ya da Firebase Geliştirme Yöneticisi.

  2. Hosting sitelerinizden hangilerinin günlüklerini Cloud Logging'a aktaracağını seçmek için ekrandaki talimatları uygulayın.

    Bir veya daha fazla etkin Hosting siteniz varsa bağlantı oluşturma iş akışında, Hosting sitelerinizin her birindeki günlükler için tahmini bir veri kullanımı seviyesi gösterilir. Bu değer son 30 güne göre tahmin edilir.

Cloud Logging'e bağlandıktan sonra, Hosting sitelerinize yapılan yeni isteklerin günlükleri genellikle istek gönderildikten sonraki 30 dakika içinde gösterilir.

Ayrıca Cloud Logging ile Firebase Hosting arasındaki bağlantıyı kaldırarak web isteği günlüklerinin Cloud Logging'a aktarılmasını durdurabilirsiniz.

Günlükler için veri kullanımınızı izleme

Cloud Logging'e bağlandıktan sonra, Hosting sitelerinizdeki günlüklerin veri kullanımı düzeyini görüntüleyebilirsiniz:

Sitenizi daha iyi anlama

Google Cloud konsolundaki Logs Viewer arayüzü, sorguları, yerleşik filtreleri ve veri panellerini kullanarak belirli günlüklerinizi ve verilerinizi görüntülemenizi sağlayan araçlar sunar. Günlüklerinizi sorgularla filtreleme hakkında daha fazla bilgiyi aşağıdaki bölümde bulabilirsiniz.

  • Sitenizin trafiği ayrıntılı düzeyde nereden geliyor?
    Kaynak IP, yönlendiren, şehir ve durum dahil olmak üzere her istekle ilgili bilgileri görüntüleyebilirsiniz.

  • Kullanıcılar sitenizi ne zaman ziyaret ediyor?
    Belirli zaman aralıklarına göre dağılımı görmek için Histogram panelini kullanabilirsiniz. Bu sayede, uygulamanızın kullanımındaki normal artış ve düşüşler hakkında bilgi edinebilir, ayrıca trafikte beklenmedik artışları tespit edebilirsiniz.

  • Son kullanıcı isteklerinin durum dağılımı nedir?
    Her isteğin durumunu görüntüleyebilir ve hatta hata alan istekleri teşhis edebilirsiniz. Günlüklerinizi Critical, Error veya Warning'ye göre filtreleyebilirsiniz.

  • Sitenizin bir isteği yanıtlaması ne kadar sürüyor?
    Her günlükte yakalanan latency değerini kullanarak sitenizin her istek için gecikmesini görüntüleyebilirsiniz.

  • Siteniz içerik önbelleğe alma özelliğinden yararlanıyor mu?
    Her günlük, sitenizin kaynağının Hosting'nin CDN önbelleğinden hızlı bir şekilde mi yoksa Hosting arka ucuna kadar tüm yolu mu kattığını belirten bir cacheHit alanı içerir. Bu sayede, Firebase'ın global CDN'sinden en iyi şekilde yararlanarak web sitenizin performansını artırabilirsiniz. Örneğin, statik öğelerinizin ve dinamik içeriğinizin önbelleğe alma alışkanlıklarını hassaslaştırmak için bu verilerden yararlanabilirsiniz.

  • Çeşitli alanlarınıza gelen trafiğin dağılımı nedir?
    Birden fazla alanınız veya Hosting siteniz varsa günlüklerinizi alana ya da siteye göre filtreleyebilirsiniz. Bu sayede trafiğinizin nasıl dağıtıldığını görebilirsiniz. Alana göre filtreleme yaptığınızda en sık ziyaret edilen alanı izleyebilirsiniz.

Günlüklerinizi sorgularla filtreleme

Günlüklerinizi sorgularla nasıl filtreleyeceğiniz hakkında bilgi edinmek için Günlük Görüntüleyici'yi kullanarak örnek sorgular ve Günlük sorguları oluşturma başlıklı makaleleri inceleyin. Aşağıdaki tabloda bu sorgular için kullanılabilen alanlar açıklanmaktadır.

Hosting için bir sorgudaki ilk filtrelerden bazıları şunlardır:

  • Kaynak (resource.type) — firebase_domain (Firebase Hosting Site Alanı)
  • Günlük adı (logName) — webrequests (Firebase Hosting)

Her günlük girişinin önceden tanımlanmış bir yapısı ve sorgulanabilir alanları vardır (LogEntry bölümüne bakın). Hosting için bazı alanlar bir HTTP isteği için standarttır ancak Hosting'ın her istek üzerinde yaptığı işlemden gelen başka alan değerleri de vardır.

Alan Açıklama
Firebase Hosting, aşağıdaki alanları günlük girişinin httpRequest nesnesine kaydeder.
Bu alanlar HTTP spesifikasyonunda tanımlanır.
cacheHit Hosting CDN'nin önbellekte yanıtın kaynağına sahip olup olmadığı
latency s son eki ile saniye cinsinden istek süresi (örneğin, 1.256s)
protocol İstek için kullanılan protokol (örneğin, HTTP/1.1, HTTP/2, websocket)
referer Şu anda istenen sayfanın bağlantısının takip edildiği önceki web sayfasının adresi (varsa)
remoteIp İsteğin kaynak istemci IP'si
requestMethod İstek yöntemi (GET, POST, PUT vb.)
requestSize İsteğin bayt cinsinden boyutu
requestUrl İsteğin tam URL'si (örneğin,
https://foo.web.app/bar veya https://custom.domain.com?query=param)
responseSize HTTP yanıtının bayt cinsinden boyutu
serverIp not populated
status HTTP yanıt durumu (ör. 200 veya 404)
userAgent İsteğin User-Agent başlığı
Firebase Hosting, günlük girişinin jsonPayload nesnesine ek alanlar depolar.
acceptEncoding (HTTP isteğinden) İstemcinin desteklediği içerik kodlaması (genellikle bir sıkıştırma algoritması) (örneğin, gzip veya compress)
billable Projenizin istek için faturalandırılıp faturalandırılmadığı
customDomain İsteğin özel bir alan için gönderilip gönderilmediği
hostname İsteğin gönderildiği ana makine adı
remoteIpCountry İsteğin gönderildiği ülke
remoteIpCity İsteğin gönderildiği şehir

Günlük tabanlı metrikleri kullanma

Günlüklere dayalı metrikleri görüntüleyip oluşturabilir, ardından grafik ve uyarı politikası oluşturmak için bu metrikleri Cloud Monitoring'de kullanabilirsiniz.

  • Belirli bir dönemde gerçekleşen günlük kaydı etkinliklerinin sayısı gibi otomatik olarak kaydedilen önceden tanımlanmış sistem metriklerinden yararlanın.

  • Projeniz için kullanıcı tanımlı metrikler oluşturun. Belirli bir sorguyla eşleşen günlük girişlerinin sayısını sayabilir veya eşleşen günlük girişleriyle belirli değerlerin kaydını tutabilirsiniz. Normal ifadeleri kullanarak filtreleme yapabilirsiniz.

  • Belirli mesajlar içeren günlük girişlerinin sayısını kaydetmek veya günlük girişlerinde bildirilen gecikme bilgilerini ayıklamak için Cloud Monitoring değerini kullanın. Ardından bu metrikleri grafiklerde ve uyarı politikalarında kullanabilirsiniz.

Firebase Hosting, Hosting'a özel aşağıdaki günlük kaydı metriklerini de oluşturur. Bu metrikler bir günlük girişine değil, belirli bir Hosting sitesinin tamamına özgüdür.

  • log_bytes: Her site için toplam veri kullanımı bayt sayısı

  • response_count: Site için yazılan yanıtların toplam sayısı

    Bu metrik, HTTP durumu alanını içerir. Böylece HTTP yanıtlarını duruma göre (örnek olarak) noktayla gösterebilirsiniz.

Günlükleri diğer Google Cloud araçlarına aktarma

Sitenizin günlüklerini Cloud Monitoring veya BigQuery gibi diğer Google Cloud araçlarına da aktarabilirsiniz. Örneğin:

  • Cloud Monitoring'i kullanarak grafiklerde ve uyarı politikalarında kullanabileceğiniz günlük tabanlı metrikler oluşturabilirsiniz.

  • BigQuery'yi kullanarak aşağıdakilerden herhangi birini yapabilirsiniz:

    • Hosting verilerinizin kontrol panellerini oluşturmak için Data Studio'yu kullanın.
    • İstekleriniz hakkında daha fazla bilgi edinmek için sorgular çalıştırın (ortalama yanıt boyutu, önbelleğe isabet ve isabetsizlik vb.).
    • Kullanıcılarınızın gerçekten hangi URL'leri istediğini öğrenin.
    • Hosting verilerinizi BigQuery'ye aktardığınız diğer Firebase verileriyle birleştirin ve yeni yöntemlerle sorgulayın.