PerfettoGenericPostProcessor

public class PerfettoGenericPostProcessor
extends BasePostProcessor

java.lang.Object
   ↳ com.android.tradefed.postprocessor.BasePostProcessor
     ↳ com.android.tradefed.postprocessor.PerfettoGenericPostProcessor


後續處理器:遞迴展開具有字串值的 proto 訊息和欄位,直到遇到具有數值的欄位為止,將文字/二進位指標 perfetto proto 檔案處理為鍵/值組合。建構鍵時,會將列舉和布林值視為字串值。

建構鍵時,如果出現重複項目,可選擇是否要為清單欄位建立索引。例如:

「perfetto-indexed-list-field」- perfetto.protos.AndroidStartupMetric.Startup

「perfetto-prefix-key-field」- perfetto.protos.ProcessRenderInfo.process_name

android_startup-startup#1-package_name-com.calculator-to_first_frame-dur_ns: 300620342 android_startup-startup#2-package_name-com.nexuslauncher-to_first_frame-dur_ns: 49257713 android_startup-startup#3-package_name-com.calculator-to_first_frame-dur_ns: 261382005

摘要

公用建構函式

PerfettoGenericPostProcessor()

公用方法

Map<String, MetricMeasurement.Metric.Builder> processRunMetricsAndLogs(HashMap<String, MetricMeasurement.Metric> rawMetrics, Map<String, LogFile> runLogs)

實作這個方法,即可從現有指標和記錄產生一組新指標。

Map<String, MetricMeasurement.Metric.Builder> processTestMetricsAndLogs(TestDescription testDescription, HashMap<String, MetricMeasurement.Metric> testMetrics, Map<String, LogFile> testLogs)

導入這個方法,即可後續處理各項測試的指標和記錄。

受保護的方法

MetricMeasurement.DataType getMetricType()

將指標類型設為原始指標。

公用建構函式

PerfettoGenericPostProcessor

public PerfettoGenericPostProcessor ()

公用方法

processRunMetricsAndLogs

public Map<String, MetricMeasurement.Metric.Builder> processRunMetricsAndLogs (HashMap<String, MetricMeasurement.Metric> rawMetrics, 
                Map<String, LogFile> runLogs)

請實作這個方法,從現有指標和記錄產生一組新指標。系統只會傳回新產生的指標,且金鑰名稱不得重複 (不得與現有金鑰發生衝突)。

參數
rawMetrics HashMap:可供執行作業使用的原始指標集。

runLogs Map:測試執行的記錄檔集。

傳回
Map<String, MetricMeasurement.Metric.Builder> 從執行指標產生的一組新指標。

processTestMetricsAndLogs

public Map<String, MetricMeasurement.Metric.Builder> processTestMetricsAndLogs (TestDescription testDescription, 
                HashMap<String, MetricMeasurement.Metric> testMetrics, 
                Map<String, LogFile> testLogs)

導入這個方法,即可後續處理各項測試的指標和記錄。系統只會傳回新產生的指標,且金鑰名稱不得重複 (不得與現有金鑰發生衝突)。

參數
testDescription TestDescription:描述測試的 TestDescription 物件。

testMetrics HashMap:測試中的指標集。

testLogs Map:測試期間記錄的一組檔案。

傳回
Map<String, MetricMeasurement.Metric.Builder> 從測試指標新產生的一組指標。

受保護的方法

getMetricType

protected MetricMeasurement.DataType getMetricType ()

將指標類型設為原始指標。

傳回
MetricMeasurement.DataType