您可以將 Firebase 專案連結至 Cloud Logging,查看、搜尋及篩選每個 Hosting 網站的網頁要求記錄。這些記錄來自 Firebase 自動提供的 CDN,因此系統會記錄您網站的每項要求和相關要求資料。
以下列舉 Cloud Logging 記錄的幾項用途。如要瞭解詳情,請前往這個頁面的各個部分。
- 更深入瞭解網站:瞭解網站的造訪時間和地點、網站的回應狀態、使用者要求的延遲時間等。 
- 使用查詢篩選記錄:運用自動收集的資料,篩選及繪製與各項要求或網站相關聯的資料。 
- 使用記錄指標:根據預先定義的系統指標或使用者定義的指標,建立 Cloud Monitoring 圖表和快訊政策。 
- 將記錄檔匯出至其他Google Cloud工具: 在其他工具 (例如 BigQuery 和 Data Studio) 中使用記錄檔資料,進行更強大的分析和關聯性研究。 
如果專案中有多個Hosting網站,您可以選取要匯出記錄的Hosting網站。然後,您可以依Hosting網站,甚至是網域,篩選及查看記錄資料。選取要匯出記錄的特定Hosting 網站,即可控管專案處理的資料量。
連結至 Cloud Logging 並監控資料用量
連結至 Cloud Logging 並匯出網路要求記錄
- 在 Firebase 控制台的「Cloud Logging 整合」資訊卡中,按一下「連結」。 - 如要連結或取消連結 Cloud Logging,您需要下列任一角色所含的權限:專案擁有者或編輯者,或是 Firebase 開發管理員。 
- 按照畫面上的指示,選取要將記錄檔匯出至 Cloud Logging 的Hosting網站。 - 如果您已有一或多個有效 Hosting 網站,連結工作流程會顯示每個 Hosting 網站記錄的預估資料用量。這個值是根據過去 30 天的資料估算而得。 
連結至 Cloud Logging 後,新要求傳送至 Hosting 網站的記錄通常會在要求提出後 30 分鐘內顯示。
您也可以取消連結 Firebase Hosting Cloud Logging,停止將網頁要求記錄匯出至 Cloud Logging。
監控記錄檔的資料用量
連結至 Cloud Logging 後,您就能查看 Hosting 網站的記錄檔資料用量等級:
- Firebase 控制台中的Cloud Logging整合卡片 
- 在 Google Cloud 控制台的Logs Viewer介面 ( - log_bytes指標)
進一步瞭解您的網站
Google Cloud 控制台中的Logs Viewer介面提供多種工具,可讓您使用查詢、內建篩選器和資料面板,查看特定記錄和資料。如要進一步瞭解如何使用查詢篩選記錄,請參閱下節。
- 網站流量的精細來源為何? 
 您可以查看每項要求的相關資訊,包括來源 IP、參照網址、城市和狀態。
- 使用者會在哪些時段造訪您的網站? 
 您可以使用直方圖面板,查看特定時間範圍內的分布情況。這有助於您瞭解應用程式使用情況的正常高峰和低谷,以及找出任何非預期的流量高峰。
- 使用者要求的狀態分布情形為何? 
 您可以查看每項要求的狀態,甚至診斷收到錯誤的要求。您可以依- Critical、- Error或- Warning篩選記錄。
- 網站回應要求需要多久時間? 
 您可以查看每個記錄中擷取的值,瞭解網站的每個要求延遲時間。- latency
- 你的網站是否善用內容快取? 
 每則記錄都包含- cacheHit欄位,可判斷網站資源是否從 Hosting 的 CDN 快取快速提供,或是否必須完整傳輸至 Hosting 後端。這有助於充分運用 Firebase 的全球 CDN,提升網站效能。舉例來說,您可以運用這些資料,微調靜態資產和動態內容的快取習慣。
- 各網域的流量分配情形為何? 
 如果您有多個網域或Hosting網站,可以依網域或網站篩選記錄。方便您瞭解流量的分配情形。篩選網域後,即可追蹤最常造訪的網域。
使用查詢篩選記錄
如要瞭解如何使用查詢篩選記錄,請參閱「使用記錄檢視器查詢範例」和「建構記錄查詢」。下表說明這些查詢可用的欄位。
如果是 Hosting,以下是查詢的初始篩選器:
- 資源 (resource.type) —firebase_domain(Firebase Hosting 網站網域)
- 記錄名稱 (logName) -webrequests(Firebase Hosting)
每個記錄項目都有預先定義的結構和可查詢的欄位 (請參閱 LogEntry)。對於 Hosting,部分欄位是 HTTP 要求的標準欄位,但其他欄位值來自 Hosting 對每個要求執行的處理作業。
| 欄位 | 說明 | 
|---|---|
| Firebase Hosting 會在記錄項目的 httpRequest物件中儲存下列欄位。這些欄位是在 HTTP 規格中定義。 | |
| cacheHit | Hosting CDN 是否在快取中找到回應的資源 | 
| latency | 要求時間長度,以秒為單位,並加上 s後置字元 (例如1.256s) | 
| protocol | 要求使用的通訊協定 (例如 HTTP/1.1、HTTP/2、websocket) | 
| referer | 先前網頁的地址,使用者是從該網頁點選連結前往目前要求的網頁 (如有) | 
| remoteIp | 要求的來源用戶端 IP 位址 | 
| requestMethod | 要求方法 ( GET、POST、PUT等) | 
| requestSize | 要求大小 (以位元組為單位) | 
| requestUrl | 要求的完整網址 (例如 https://foo.web.app/bar或https://custom.domain.com?query=param) | 
| responseSize | HTTP 回應大小 (以位元組為單位) | 
| serverIp | 未填入 | 
| status | HTTP 回應狀態 (例如 200或404) | 
| userAgent | 要求的使用者代理程式標頭 | 
| Firebase Hosting 會在記錄項目的 jsonPayload物件中儲存其他欄位。 | |
| acceptEncoding | (來自 HTTP 要求) 用戶端支援的內容編碼 (通常是壓縮演算法),例如 gzip或compress。 | 
| billable | 專案是否已支付要求費用 | 
| customDomain | 要求是否是針對自訂網域提出 | 
| hostname | 發出要求的目標主機名稱 | 
| remoteIpCountry | 要求的來源國家/地區 | 
| remoteIpCity | 要求的來源城市 | 
使用記錄指標
您可以查看及建立記錄指標,然後在 Cloud Monitoring 中使用這些指標,建立圖表和快訊政策。
- 運用系統自動記錄的預先定義系統指標,例如特定時間範圍內發生的記錄事件數量。 
- 為專案建立使用者定義指標。您可以計算符合指定查詢的記錄項目數,或追蹤相符記錄項目內的特定值。您可以使用規則運算式進行篩選。 
- 使用 Cloud Monitoring 記錄含有特定訊息的記錄項目數量,或擷取記錄項目中回報的延遲時間資訊。接著,您就能在圖表和快訊政策中使用這些指標。 
Firebase Hosting 也會產生下列 Hosting 專屬的記錄指標。這些指標並非針對特定記錄項目,而是針對特定Hosting網站整體。
- log_bytes:每個網站的資料用量總位元組數
- response_count:為網站撰寫的回覆總數- 這項指標包含 HTTP 狀態欄位,因此您可以依狀態繪製 HTTP 回應圖表 (例如)。 
將記錄匯出至其他Google Cloud工具
您也可以將網站記錄匯出至其他Google Cloud工具,例如 Cloud Monitoring 或 BigQuery:
- 使用 Cloud Monitoring,您可以建立記錄指標,用於圖表和快訊政策。 
- 使用 BigQuery,您可以執行下列任一操作: - 使用數據分析產生 Hosting 資料的資訊主頁。
- 執行查詢,進一步瞭解要求 (平均回應大小、快取命中與未命中等)。
- 瞭解使用者實際要求的網址。
- 將 Hosting 資料與匯出至 BigQuery 的其他 Firebase 資料合併,並以新方式查詢。