Catch up on highlights from Firebase at Google I/O 2023. Learn more

了解 HTTP/S 網絡請求性能數據(任何應用程序)

性能監控使用跟踪來收集有關應用程序中受監控進程的數據。跟踪是一份報告,其中包含在您的應用程序中的兩個時間點之間捕獲的數據。

對於所有應用類型,性能監控會自動為您的應用發出的每個網絡請求收集跟踪,稱為HTTP/S 網絡請求跟踪。這些跟踪記錄從您的應用程序向服務端點發出請求到該端點的響應完成之間的時間指標。對於您的應用向其發出請求的任何端點,性能監控會捕獲多個指標:

  • 響應時間——從發出請求到完全收到響應之間的時間

  • 響應負載大小——應用程序下載的網絡負載的字節大小

  • 請求負載大小——應用上傳的網絡負載的字節大小

  • 成功率——成功響應(響應代碼在 100 - 399 範圍內)佔總響應的百分比

您可以在跟踪表的網絡請求子選項卡中查看來自這些跟踪的數據,該子選項卡位於性能儀表板的底部(稍後將在本頁了解有關使用控制台的更多信息)。

自定義網絡請求數據聚合

除了網絡請求的開箱即用工具和數據聚合之外,性能監控還支持以下選項:

  • 手動檢測網絡請求跟踪:開箱即用的監控包括應用程序的大多數網絡請求。但是,某些請求可能不會被報告,或者您可能會使用不同的庫來發出網絡請求。在這些情況下,您可以使用 Performance Monitoring API 手動檢測自定義網絡請求跟踪
  • 在自定義 URL 模式下聚合數據:如果 Firebase 沒有使用其派生的自動 URL 模式匹配捕獲特定 URL,您可以創建自定義 URL 模式以隨著時間的推移監控一組特定的 URL。
  • 自定義成功率的計算方式:有時,某些 API 端點會出現錯誤代碼,或者已在您的應用程序中進行了處理。在這些情況下,您可以配置成功率的計算方式,並更準確地監控應用程序網絡調用的成功率。

URL 模式下的數據聚合

Firebase Performance Monitoring 會自動聚合類似網絡請求的數據,以幫助您了解網絡請求性能的趨勢。

對於每個請求,Firebase 檢查網絡請求的 URL 是否與 URL 模式匹配。如果請求 URL 與 URL 模式匹配,Firebase 會自動根據 URL 模式聚合請求的數據。 Firebase 在 Firebase 控制台性能儀表板網絡選項卡中顯示 URL 模式及其聚合數據。

什麼是 URL 模式?

一個 URL 模式包含一個域加上一個可以匹配 URL 路徑的模式,例如: example.com/*/animals/** /animals/**。

  • URL 模式可以包含以下路徑段:

    • 純文本——匹配一個精確的字符串
    • * — 匹配單個路徑段中的任何字符串
    • ** — 匹配任意路徑後綴
  • URL 模式可以是:

例如:以下任何 URL 請求都可以匹配 URL 模式example.com/*/animals/**

  • example.com/singapore/animals
  • example.com/australia/animals/spiders
  • example.com/australia/animals/marsupials/koala.png

URL 模式的域也可以包含*作為其第一部分,例如: *.example.com/*/fruits/**

Firebase 將每個請求映射到一個 URL 模式。如果您配置了任何自定義 URL 模式,Firebase 會首先嘗試將請求 URL 與這些模式相匹配。如果 Firebase 找不到匹配的自定義 URL 模式,則會將請求 URL 與最具代表性的自動 URL 模式進行匹配。在以下部分中了解有關自動和自定義 URL 模式的更多信息。

自動 URL 模式

在您不進行任何配置的情況下,性能監控會嘗試通過將您應用的請求與自動 URL 模式相匹配來反映您應用的最新使用行為。

自動 URL 模式匹配如何工作?

Firebase 將每個請求與它從您的應用程序發送的請求派生的最具代表性的自動 URL 模式進行匹配。但請注意,Firebase 首先會嘗試將請求 URL 與任何已配置的自定義 URL 模式進行匹配。

以下是一個基本示例,說明 Firebase 如何嘗試將請求與您應用的最具代表性的自動 URL 模式相匹配。

  1. 您的應用向 URL 發送許多請求,例如:

    • example.com/germany/animals/bears
    • example.com/germany/animals/birds
    • example.com/germany/cars

    Firebase 確定example.com/germany/**是您應用的常見請求模式,並將其作為自動 URL 模式添加到您的項目中。

    對於任何與此 URL 模式匹配的請求,Firebase 會在自動 URL 模式example.com/germany/**下聚合請求的數據。

  2. 一周後,您應用程序的大部分請求都是針對example.com/germany/animals/bearsexample.com/germany/animals/birds的。因此,Firebase 派生出更具代表性的 URL 模式example.com/germany/animals/**

    對於與此新 URL 模式的任何匹配請求,Firebase在新 URL 模式下聚合請求的數據。 Firebase 繼續為example.com/germany/**下的example.com/germany/cars請求聚合數據。

  3. 但是,在接下來的幾週內,您的應用對example.com/germany/animals/bearsexample.com/germany/animals/birds的請求大幅減少。 Firebase 確定example.com/germany/animals/**不代表您應用的最新使用行為,因此 Firebase 開始將這兩個請求匹配回example.com/germany/**

    Firebase 不會在example.com/germany/animals/**下聚合任何進一步的請求數據,因為它不再是最具代表性的自動 URL 模式。

由於自動 URL 模式匹配是動態的,因此請注意以下事項:

  • 來自先前請求的匹配和聚合數據不受新 URL 模式的影響。 Firebase 不會以追溯方式重新聚合請求數據。

  • 只有未來的請求會受到新 URL 模式的影響。 Firebase 將每個請求映射到最具代表性的自動 URL 模式。但請注意,Firebase 首先會嘗試將請求 URL 與任何已配置的自定義 URL 模式進行匹配。

查看自動 URL 模式及其數據

Firebase 在跟踪表的網絡請求子選項卡中顯示所有 URL 模式及其聚合數據,該表位於 Firebase 控制台性能儀表板的底部。

您可能會看到帶有未分類標籤的 URL 模式。這些是“廣泛的”自動 URL 模式,Firebase 可以在這些模式下聚合與任何更具體的 URL 模式不匹配的請求的數據。

當根據 URL 模式聚合的數據的數據保留期結束時,Firebase 會從 URL 模式中刪除該數據。如果自動 URL 模式下聚合的所有數據都過期,則 Firebase 會從 Firebase 控制台中刪除該 URL 模式。

自定義網址模式

您可以創建自定義 URL 模式來監控 Firebase 未使用其派生的自動 URL 模式匹配捕獲的特定 URL 模式。例如,您可以使用自定義 URL 模式對特定 URL 進行故障排除或隨著時間的推移監視一組特定的 URL。

訪問創建自定義 URL 模式以了解更多信息。

跟踪、查看和過濾性能數據

要查看實時性能數據,請確保您的應用使用與實時數據處理兼容的性能監控 SDK 版本。了解有關實時性能數據的更多信息

跟踪儀表板中的特定指標

要了解您的關鍵指標的趨勢,請將它們添加到績效儀表板頂部的指標板。您可以通過查看每週的更改或驗證代碼中最近的更改是否正在提高性能來快速識別回歸。

Firebase 性能監控儀表板中的指標板圖片

要將指標添加到指標板,請執行以下步驟:

  1. 轉到 Firebase 控制台中的性能儀表板
  2. 單擊一個空的指標卡,然後選擇一個現有指標以添加到您的看板。
  3. 單擊填充的指標卡上的以獲得更多選項,例如替換或刪除指標。

指標板以圖形形式和數字百分比變化顯示隨時間收集的指標數據。

了解有關使用儀表板的更多信息。

查看痕跡及其數據

要查看您的跟踪記錄,請轉到 Firebase 控制台中的性能儀表板,向下滾動到跟踪記錄表,然後單擊相應的子選項卡。該表顯示了每個跟踪的一些主要指標,您甚至可以按特定指標的百分比變化對列表進行排序。

Performance Monitoring 在 Firebase 控制台中提供了一個故障排除頁面,其中突出顯示了指標變化,使您可以輕鬆快速地解決性能問題並將其對您的應用和用戶的影響降至最低。當您了解潛在的性能問題時,例如在以下情況下,您可以使用故障排除頁面:

  • 您在儀表板上選擇相關指標,您會注意到一個大的增量。
  • 在跟踪表中,您排序以在頂部顯示最大的增量,並且您會看到顯著的百分比變化。
  • 您會收到一封電子郵件警報,通知您存在性能問題。

您可以通過以下方式訪問故障排除頁面:

  • 在指標儀表板上,單擊查看指標詳細信息按鈕。
  • 在任何指標卡上,選擇 => View details 。故障排除頁面顯示有關您選擇的指標的信息。
  • 在跟踪表中,單擊跟踪名稱或與該跟踪關聯的行中的任何指標值。
  • 在電子郵件警報中,單擊立即調查

當您單擊跟踪表中的跟踪名稱時,您可以深入了解感興趣的指標。單擊Filter 按鈕以按屬性過濾數據,例如:

按屬性過濾的 Firebase 性能監控數據的圖像
  • 應用程序版本過濾以查看有關過去版本或最新版本的數據
  • 設備過濾以了解舊設備如何處理您的應用程序
  • 按國家/地區過濾以確保您的數據庫位置不影響特定區域

了解有關查看跟踪數據的更多信息。

下一步

  • 了解有關使用屬性檢查性能數據的更多信息。

  • 詳細了解如何在 Firebase 控制台中跟踪性能問題

  • 為降低應用程序性能的網絡請求設置警報。例如,如果特定 URL 模式的響應時間超過您設置的閾值,您可以為您的團隊配置電子郵件警報。

  • 查看用戶會話的詳細報告,您可以在其中查看在同一會話期間收集的其他跟踪的時間線上下文中的特定跟踪。