您可以將 Firebase 專案連結至 Cloud Logging,藉此查看、搜尋及篩選各個託管網站的網路要求記錄檔。這些記錄來自 Firebase 自動提供的 CDN,因此系統會記錄傳送至您網站的每個要求和相關聯的要求資料。
以下是 Cloud Logging 記錄檔的用途。詳情請參閱本頁各節的說明。
進一步瞭解網站:瞭解造訪您網站的位置與時間、網站的回應狀態,以及使用者要求的延遲時間等。
使用查詢篩選記錄 - 運用自動收集的資料來篩選及繪製與每個要求或網站相關聯的資料。
使用記錄指標:透過預先定義的系統指標或使用者定義指標建立 Cloud Monitoring 圖表和快訊政策。
將記錄檔匯出至其他 Google Cloud 工具:使用其他工具 (例如 BigQuery 和數據分析) 中的記錄檔資料,執行更有效的分析和關聯。
如果您的專案中有多個託管網站,則可以選取要匯出記錄的託管網站。然後可依託管網站,甚至是依網域篩選和查看記錄檔資料。透過選取要匯出記錄的特定託管網站,您也可以控管為專案處理的資料量。
連結至 Cloud Logging 並監控資料用量
點選這個連結,即可前往 Cloud Logging 匯出網路要求記錄檔
在 Firebase 控制台的 Cloud Logging 整合資訊卡中,按一下「Link」。
如要連結或取消連結 Cloud Logging,您需要具備下列任一角色的權限:專案擁有者或編輯者或 Firebase 開發管理員。
按照畫面上的指示,選取要將記錄檔匯出至 Cloud Logging 的託管網站。
如果您擁有一或多個有效的託管網站,連結工作流程會顯示每個託管網站的記錄檔預估資料用量等級。這個值是根據過去 30 天的資料估算而得。
連結到 Cloud Logging 後,向託管網站發出的任何「新」要求的記錄檔,通常會在提出要求後的 30 分鐘內顯示。
您也可以從 Cloud Logging 取消連結 Firebase 託管,讓系統停止將網路要求記錄檔匯出至 Cloud Logging。
監控資料用量記錄
連結至 Cloud Logging 之後,您可以從託管網站查看記錄檔的數據用量等級:
前往 Firebase 控制台的 「Cloud Logging」整合資訊卡
在 Google Cloud 控制台的記錄檢視器介面 (
log_bytes
指標) 中
進一步瞭解您的網站
Google Cloud 控制台的記錄檢視器介面提供工具,會使用查詢、內建篩選器和資料面板來查看特定記錄檔和資料。如要進一步瞭解如何使用查詢來篩選記錄檔,下一節會下一節。
網站流量的詳細來源為何?
您可以查看每個要求的相關資訊,包括來源 IP、參照網址、城市和狀態。使用者會在哪些情況下造訪您的網站?
您可以使用直方圖面板,依特定時間範圍查看分佈情形。如此一來,您就能深入瞭解應用程式用量的正常高峰和低點,並揭露任何非預期的流量高峰。使用者要求的狀態分佈情形為何?
您可以查看每項要求的狀態,甚至診斷收到錯誤的要求。你可以依Critical
、Error
或Warning
篩選記錄。網站需要多久時間才會回應要求?
您可以使用各項記錄擷取的latency
值,查看網站的每項要求延遲時間。網站是否使用內容快取功能?
每筆記錄都包含一個cacheHit
欄位,讓您瞭解網站的資源是快速從託管的 CDN 快取提供,還是必須完全前往託管後端。充分運用 Firebase 的全球 CDN,協助提升網站效能。例如,您可以使用這些資料微調靜態資產和動態內容的快取習慣。各個網域的流量分佈情形為何?
如果您有多個網域或託管網站,可以依網域或網站篩選記錄。讓您瞭解流量的分配方式。依網域篩選時,您可以追蹤最常造訪的網域。
使用查詢篩選記錄檔
如要瞭解如何使用查詢篩選記錄檔,請參閱使用記錄檢視器的查詢範例和建構記錄查詢。下表說明這些查詢的可用欄位。
在「託管」方面,以下是查詢的一些初始篩選條件:
- 資源 (
resource.type
) —firebase_domain
(Firebase 託管網站網域) - 記錄名稱 (
logName
) -webrequests
(Firebase 代管)
每個記錄項目都有預先定義的結構和可查詢的欄位 (請參閱 LogEntry)。對託管而言,部分欄位為 HTTP 要求的標準欄位,但主機對每個要求執行的處理也會來自其他欄位值。
欄位 | 說明 |
---|---|
Firebase 託管會將下列欄位儲存在記錄項目的 httpRequest 物件中。這些欄位是以 HTTP 規格定義。 |
|
cacheHit |
託管 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 |
要求的 user-Agent 標頭 |
Firebase 託管會將其他欄位儲存在記錄項目的 jsonPayload 物件中。 |
|
acceptEncoding |
(來自 HTTP 要求) 用戶端支援的內容編碼,通常是壓縮演算法 (例如 gzip 或 compress ) |
billable |
代表專案是否因要求而產生費用 |
customDomain |
要求是否針對自訂網域提出 |
hostname |
提出要求時使用的主機名稱 |
remoteIpCountry |
要求的來源國家/地區 |
remoteIpCity |
要求的來源城市 |
使用記錄指標
您可以查看及建構記錄指標,然後在 Cloud Monitoring 中使用這些指標來建立圖表和快訊政策。
利用系統自動記錄的預先定義的系統指標,例如在特定時間範圍內發生的記錄事件數量。
為您的專案建立使用者定義指標。您可以計算符合特定查詢的記錄項目數,或利用相符的記錄項目追蹤特定值。您可以使用規則運算式進行篩選。
使用 Cloud Monitoring 記錄包含特定訊息的記錄項目數量,或擷取記錄項目中回報的延遲資訊。然後,您可以在圖表與快訊政策中使用這些指標。
Firebase 託管也會產生下列託管專用的記錄指標。這些指標不會侷限於記錄項目,而會反映整個代管網站。
log_bytes
:每個網站的資料總用量 (位元組)response_count
:網站的回應總數這項指標包含 HTTP 狀態的欄位,因此您可以依照狀態繪製 HTTP 回應 (例如)。
將記錄檔匯出至其他 Google Cloud 工具
您也可以將網站記錄檔匯出至其他 Google Cloud 工具,例如 Cloud Monitoring 或 BigQuery,例如:
您可以使用 Cloud Monitoring 建立記錄指標,將指標用於圖表和快訊政策。
您可以透過 BigQuery 執行下列任一操作:
- 使用數據分析產生託管資料的資訊主頁。
- 執行查詢以深入瞭解要求 (平均回應大小、快取命中和失敗等)。
- 瞭解您的使用者實際要求哪些網址。
- 將託管資料與匯出至 BigQuery 的其他 Firebase 資料合併,並用新的方式查詢資料。