設置性能問題警報

如果程式碼變更或網路請求降低應用程式的效能,請使用效能監控警報來通知專案成員。

您可以為應用程式設定和自訂警報,當事件的效能超過設定閾值時,系統會通知您。

什麼會觸發警報?

當您的應用程式的指標超過您在 Firebase 控制台中為指定百分位(如果適用)定義的閾值時,就會觸發警報。只有當您的應用程式使用即時相容的 SDK 版本時才會觸發警報。

應用程式啟動時間

當您配置應用程式啟動時間警報時,如果滿足以下所有條件,則會觸發警報:

  • Firebase 在過去一小時內記錄了您應用最新版本的至少 100 個_app_start追蹤樣本
  • _app_start追蹤的持續時間在過去一小時和配置的百分位數內超出了應用程式定義的閾值。
  • 在您的應用程式的最新版本中,之前沒有針對相同閾值發出警報。

自訂程式碼痕跡

當您為自訂程式碼追蹤指標配置警報時,如果滿足以下所有條件,則會觸發警報:

  • Firebase 在過去一小時內記錄了至少100 個最新版本應用的自訂程式碼追蹤範例
  • 追蹤的持續時間在過去一小時內超過了應用程式定義的閾值以及配置的百分位數。
  • (僅適用於 iOS+ 和 Android)您的應用程式的最新版本中之前沒有針對相同閾值發出警報。
  • (僅適用於網路)過去3 天內沒有針對相同閾值發出警報。

網路請求

當您為網路請求指標配置警報時,如果滿足以下所有條件,則會觸發警報:

  • Firebase 在過去一小時內記錄了至少100 個與您應用的所有版本中的網址模式相符的樣本
  • 指標的聚合值在過去一小時內超過了定義的閾值:
    • 回應時間:聚合值超出了配置百分位的設定閾值
    • 成功率:(僅適用於 iOS+/Android)所有使用者的總和值低於設定閾值
  • 過去3 天內沒有針對相同閾值發出警報。

螢幕渲染

當您為螢幕渲染指標配置警報時,如果滿足以下所有條件,則會觸發警報:

  • Firebase 在過去一小時內為最新版本的應用程式記錄了至少100 個螢幕渲染樣本。
  • 指標的聚合值在過去一小時內超過了定義的閾值:
    • 凍結幀:聚合值超出設定閾值
    • 慢幀:聚合值超過設定閾值
  • 在您的應用程式的最新版本中,之前沒有針對相同閾值發出警報。

頁面載入

當您為頁面載入指標配置警報時,如果滿足以下所有條件,則會觸發警報:

  • Firebase 在過去一小時內至少記錄了您的應用程式的100 個頁面載入樣本
  • 指標的聚合值在過去一小時內和配置的百分位數內超過了定義的閾值:
    • 第一個輸入延遲:聚合值超出設定的閾值和配置的百分位
    • 第一個內容豐富的油漆:聚合值超過設定的閾值和配置的百分位
    • 第一次繪製:聚合值超出設定的閾值和配置的百分位
  • 過去3 天內沒有針對相同閾值發出警報。

了解有關配置警報預設百分位數以及為特定類型的追蹤和指標設定警報的最佳實踐的更多資訊。

其他效能指標或與SlackJiraPagerDuty的內建 Firebase 整合的警報不適用於效能監控警報。

接收提醒

取得預設警報

預設情況下,Firebase 可以透過電子郵件發送效能監控警報。

若要透過此預設機制接收效能監控警報,您必須具有firebaseperformance.config.update權限。預設情況下,以下角色包含此必要的權限:

警報及其設定是專案範圍內的。這意味著,預設情況下,每個專案成員(不是電子郵件群組且具有接收警報所需的權限)都會在觸發效能警報時收到一封電子郵件。

開啟/關閉您自己帳戶的提醒

對於您自己的帳戶,您可以開啟/關閉效能監控警報,而不會影響其他專案成員。請注意,您仍然需要所需的權限才能接收警報。

若要開啟或關閉效能監控警報,請執行下列步驟:

  1. 在 Firebase 控制台的右上角,前往 Firebase 警報
  2. 然後,前往設定並設定效能監控警報的帳戶首選項。

設定對第三方服務的進階警報

您也可以使用 Cloud Functions for Firebase 將效能監控警報傳送到團隊的首選通知管道。例如,您可以編寫一個函數來捕捉應用程式啟動時間緩慢的警報事件,並將警報資訊發佈到第三方服務,例如 Discord、Slack 或 Jira。

若要使用 Cloud Functions for Firebase 設定進階警報功能,請依照下列步驟操作:

  1. 設定 Cloud Functions for Firebase ,其中包含下列任務:

    1. 設定 Node.js 或 Python 的開發環境。
    2. 安裝並登入 Firebase CLI。
    3. 使用 Firebase CLI 初始化 Cloud Functions for Firebase。
  2. 編寫並部署一個函數,用於從效能監控捕獲警報事件並處理事件負載(例如,在 Discord 上的消息中發布警報資訊)。

若要了解您可以擷取的所有效能警報事件,請前往效能監控警報的參考文件。

自動刪除無效警報

效能監控驗證警報以確保資料有效且警報處於有效使用狀態。如果滿足以下任一條件,則警報被視為有效:

  • 該警報是針對效能監控在過去 90 天內接收到資料的資源 ID 所建立的。
  • 該警報是最近針對自訂 URL 模式建立的。建立自訂 URL 模式並設定警報後,您有 90 天的時間發送該模式的資料。如果在 90 天內沒有發送任何數據,效能監控將刪除該警報。有關自訂 URL 模式的更多信息,請參閱客戶 URL 模式下的聚合資料

如果不符合其中任何一個條件,效能監控將刪除警報。

配置警報

若要設定效能監控警報,您必須具有firebaseperformance.config.update權限。預設情況下,下列角色包含此所需權限: Firebase Performance AdminFirebase Quality AdminFirebase Admin和 專案Owner 或 Editor

如果您尚未這樣做,請將最新的效能監控 SDK 新增至您的應用程式。有關更多信息,請參閱WebAndroidAppleFlutter平台的入門指南。

在每個註冊的應用程式中,使用追蹤表儀表板報告卡為您要監控的每個指標配置警報。每個應用程式都可以有一組不同的警報,每個警報都有不同的閾值(或根本沒有警報)。

在 Traces 表中配置警報

  1. 前往 Firebase 控制台中的「效能監控儀表板」選項卡,然後選擇要為其配置警報的應用程式。

  2. 向下捲動到螢幕底部的“軌跡”表。

  3. 選擇要為其設定警報的追蹤類型的選項卡,然後找到適用的行。

  4. 在該行的最右側,打開溢出選單 ( ) 並選擇警報設定

  5. 按照螢幕上的指示設定應用程式的警報閾值和百分位(如果適用),或開啟/關閉警報。 Android 和 iOS 的預設百分位數為 90,Web 的預設百分位數為 75。要了解有關預設百分位數的更多信息,請參閱追蹤儀表板中的關鍵指標

在儀表板報告卡中設定警報

  1. 前往 Firebase 控制台中的「效能監控儀表板」選項卡,然後選擇要為其配置警報的應用程式。

  2. 在報告卡標籤中,找到要為其配置警報的指標卡。

  3. 在所需的指標卡中,開啟溢出選單 ( ) 並選擇警報設定

  4. 按照螢幕上的指示設定應用程式的警報閾值和百分位(如果適用),或開啟/關閉警報。 Android 和 iOS 的預設百分位數為 90,Web 的預設百分位數為 75。要了解有關預設百分位數的更多信息,請參閱追蹤儀表板中的關鍵指標

設定性能警報的最佳實踐

網路請求

Firebase 根據 URL 模式聚合來自類似網路請求的數據,該模式可以是以下任一形式:

  • 使用者定義的模式,稱為自訂 URL 模式

  • Firebase 派生的模式,稱為自動 URL 模式
    這些模式可能會根據您應用程式的最新使用行為隨時間而變化。

為您的自訂 URL 模式設定警報

我們建議為您配置的任何自訂 URL 模式設定警報。由於 Firebase 首先嘗試將請求與自訂 URL 模式進行匹配,因此類似的請求會更一致地對應到相同的 URL 模式。這使得自訂 URL 模式的警報對您的團隊更有意義、更有效,因為您已經確定該特定請求模式對您的應用程式很重要。

設定自動 URL 模式警報

為自動 URL 模式設定警報時,請確保自動 URL 模式已穩定幾天。請記住,自動 URL 模式可能會隨著時間的推移而變化,警報配置不會延續到新的 URL 模式。這可能會導致您關心的模式的警報不正確或遺失。您也可以考慮建立自訂 URL 模式以確保該模式穩定。

網頁載入

若要了解衡量 Web 指標的建議閾值,請參閱Core Web Vitals文件。

螢幕效果圖

為了確保最佳的應用程式體驗,使用者會話不應出現緩慢和凍結的幀。效能監控建議您為超過 1% 的凍結幀設定警報,並為超過 5% 的慢速幀設定警報。您會發現這些值在效能警報配置期間會作為預設設定出現。若要詳細了解幀過慢或凍結以及其他應用效能最佳實踐,請參閱Google Play 指南