Performance Monitoring 會收集追蹤記錄,協助您監控應用程式的效能。追蹤記錄是指在應用程式中兩個時間點之間擷取的效能資料報表。
您可以自行建立追蹤記錄,監控與 的特定程式碼透過自訂程式碼追蹤記錄,您可以評估 應用程式完成特定工作或一組工作所需的時間 載入一組圖片或查詢資料庫的範例。
自訂程式碼追蹤記錄的預設指標為「時間長度」(從 追蹤記錄的起點和停止點),但您可以新增 自訂指標。
在您的程式碼中,您可以使用 Performance Monitoring SDK 提供的 API。 建立自訂程式碼追蹤記錄後,隨時都能啟用, 如何確保執行緒安全
由於這些追蹤記錄的預設指標是「持續時間」,因此不會 有時也稱為「時間長度追蹤記錄」。
您可以在追蹤記錄表的「自訂追蹤記錄」子分頁中查看這些追蹤記錄的資料,該子分頁位於「效能」資訊主頁的底部 (請參閱本頁後續的使用主控台相關說明)。
預設屬性、自訂屬性和自訂指標
針對自訂程式碼追蹤,Performance Monitoring 會自動記錄預設屬性 (常見中繼資料,例如應用程式版本、國家/地區、裝置等),方便您在 Firebase 主控台中篩選追蹤資料。個人中心 您也可以新增及監控自訂屬性 例如遊戲關卡或使用者屬性。您可以進一步設定自訂程式碼追蹤,為在追蹤範圍內發生的效能相關事件記錄自訂指標。舉例來說,您可以建立自訂指標 快取命中和失敗的次數,或 UI 產生 在明顯的時段內沒有回應。
Firebase 控制台會顯示自訂屬性和自訂指標 追蹤記錄的預設屬性和預設指標。
新增自訂程式碼追蹤記錄
使用 Performance Monitoring Trace API (Swift | Obj-C) 來新增自訂程式碼追蹤記錄,以監控特定的應用程式程式碼。
注意事項:
- 一個應用程式可以有多個自訂程式碼追蹤記錄。
- 您可以同時執行多個自訂程式碼追蹤記錄。
- 自訂程式碼追蹤的名稱必須符合下列規定:
開頭或結尾沒有空白、無前置底線 (
_
) 字元, 長度上限為 100 個半形字元 - 自訂程式碼追蹤記錄支援新增自訂指標和 自訂屬性。
如要啟動及停止自訂程式碼追蹤,請使用類似以下的程式碼行包裝要追蹤的程式碼:
Swift
// Add the Performance Monitoring module to your header import FirebasePerformance let trace = Performance.startTrace(name: "CUSTOM_TRACE_NAME") // code that you want to trace trace.stop()
Objective-C
// Add the Performance Monitoring module to your header @import FirebasePerformance; FIRTrace *trace = [FIRPerformance startTraceWithName:@"CUSTOM_TRACE_NAME"]; // code that you want to trace [trace stop];
在自訂程式碼追蹤記錄中新增自訂指標
使用 Performance Monitoring Trace API (Swift | Obj-C) 即可在自訂程式碼追蹤記錄中加入自訂指標。
注意事項:
- 自訂指標的名稱必須符合下列規定:
開頭或結尾沒有空白、無前置底線 (
_
) 字元, 長度上限為 100 個半形字元 - 每個自訂程式碼追蹤記錄最多可記錄 32 個指標 (包括預設指標) Duration 指標)。
如要新增自訂指標,每次新增一行類似下方的程式碼 事件發生的時間舉例來說,這個自訂指標會計算應用程式中發生的效能相關事件,例如快取命中或重試。
Swift
let trace = Performance.startTrace(name: "CUSTOM_TRACE_NAME") trace.incrementMetric(named:"EVENT_NAME", by: 1) // code that you want to trace (and log custom metrics) trace.stop()
Objective-C
FIRTrace *trace = [FIRPerformance startTraceWithName:@"CUSTOM_TRACE_NAME"]; [trace incrementMetric:@"EVENT_NAME" byInt:1]; // code that you want to trace (and log custom metrics) [trace stop];
建立自訂程式碼追蹤記錄的自訂屬性
使用 Performance Monitoring Trace API (Swift | Obj-C) 新增自訂屬性至自訂程式碼追蹤記錄。
如要使用自訂屬性,請在應用程式中加入用來定義該屬性的程式碼 會將其與特定自訂程式碼追蹤記錄建立關聯。您可以在追蹤開始和停止之間的任何時間設定自訂屬性。
注意事項:
自訂屬性名稱必須符合下列規定:
- 開頭或結尾無空白,無前置底線 (
_
) 字元 - 不能有空格
- 長度上限為 32 個半形字元
- 名稱可使用的字元包括
A-Z
、a-z
和_
。
- 開頭或結尾無空白,無前置底線 (
每個自訂程式碼追蹤記錄最多可記錄 5 個自訂屬性。
請確認自訂屬性未包含 則代表 Google 會識別個人身分。
進一步瞭解這項規範
Swift
let trace = Performance.startTrace(name: "CUSTOM_TRACE_NAME") trace.setValue("A", forAttribute: "experiment") // Update scenario. trace.setValue("B", forAttribute: "experiment") // Reading scenario. let experimentValue:String? = trace.valueForAttribute("experiment") // Delete scenario. trace.removeAttribute("experiment") // Read attributes. let attributes:[String, String] = trace.attributes;
Objective-C
FIRTrace *trace = [FIRPerformance startTraceWithName:@"CUSTOM_TRACE_NAME"]; [trace setValue:@"A" forAttribute:@"experiment"]; // Update scenario. [trace setValue:@"B" forAttribute:@"experiment"]; // Reading scenario. NSString *experimentValue = [trace valueForAttribute:@"experiment"]; // Delete scenario. [trace removeAttribute:@"experiment"]; // Read attributes. NSDictionary <NSString *, NSString *> *attributes = [trace attributes];
追蹤、查看及篩選成效資料
在資訊主頁中追蹤特定指標
如要瞭解主要指標的變化趨勢,請將這些指標新增至頁面頂端 效能資訊主頁。您可查看逐週變化,快速找出迴歸問題 變更,或確認程式碼近期的變更是否改善成效。
Firebase Performance Monitoring 資訊主頁/>如要在指標板中新增指標,請按照下列步驟操作:
- 前往 Firebase 控制台中的「效能」資訊主頁。
- 按一下空白指標資訊卡,然後選取要加入資訊主面板的現有指標。
- 在已填入資料的指標資訊卡上按一下 ,即可查看更多選項,例如取代或移除指標。
指標面板會以圖表形式顯示一段時間內收集到的指標資料 數值百分比的變化
進一步瞭解如何使用資訊主頁。
查看追蹤記錄和相關資料
如要查看追蹤記錄,請前往 「效能」資訊主頁 在 Firebase 控制台中,向下捲動至追蹤記錄表格,然後按一下適當的子標籤。 這份表格會顯示每筆追蹤記錄的一些熱門指標,您甚至可以依照 百分比的變化
Performance Monitoring 在 Firebase 控制台中提供疑難排解頁面,醒目顯示指標變化,方便您快速解決問題,並盡量減少效能問題對應用程式和使用者的影響。如要瞭解潛在商機,請利用疑難排解頁面 效能問題,如下列情況:
- 您選取資訊主頁上的相關指標,並發現差異很大。
- 在追蹤記錄表格中,頂端的差異值最大,且 百分比呈現顯著變化
- 您會在出現成效問題時收到電子郵件快訊,
您可以透過下列方式存取疑難排解頁面:
- 在指標資訊主頁中,按一下「查看指標詳細資料」按鈕。
- 在任何指標資訊卡上,依序選取
。「疑難排解」頁面會顯示指標相關資訊 這個虛擬機器 =>「查看詳細資料」 - 在追蹤記錄表格中,按一下追蹤記錄名稱或該資料列中的任何指標值 追蹤記錄。
- 按一下電子郵件快訊中的「立即調查」。
只要點選追蹤記錄表格中的追蹤記錄名稱,您就能進一步查看
興趣。按一下「Filter」
- 依「應用程式版本」篩選,查看過去或最新版本的資料
- 依「裝置」篩選,瞭解舊版裝置如何處理您的應用程式
- 依「國家/地區」篩選,確認資料庫位置不會影響特定區域
進一步瞭解 查看您的資料 追蹤記錄。
後續步驟
進一步瞭解如何使用屬性檢查成效資料。
進一步瞭解如何 追蹤成效問題的 Firebase 控制台。
設定快訊,以因應成效下滑的程式碼變更 應用程式的效能舉例來說,您可以設定 修正特定自訂程式碼追蹤記錄的時間長度超過 門檻值
- 查看有關使用者工作階段的詳細報表 您可以查看在時間軸上,查看在相同時間收集到的其他追蹤記錄 會很有幫助