PerfettoGenericPostProcessor

public class PerfettoGenericPostProcessor
extends BasePostProcessor

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


यह एक पोस्ट प्रोसेसर है. यह टेक्स्ट/बाइनरी मेट्रिक की perfetto proto फ़ाइल को की-वैल्यू पेयर में प्रोसेस करता है. इसके लिए, यह स्ट्रिंग वैल्यू वाले proto मैसेज और फ़ील्ड को तब तक बार-बार बढ़ाता है, जब तक कि संख्यात्मक वैल्यू वाला फ़ील्ड न मिल जाए. कुंजियां बनाते समय, enum और boolean को स्ट्रिंग वैल्यू के तौर पर इस्तेमाल करता है.

अगर कुंजियां बनाते समय डुप्लीकेट मौजूद हैं, तो यह इंडेक्सिंग सूची फ़ील्ड के लिए वैकल्पिक तौर पर काम करता है. उदाहरण के लिए

"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