aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2020-08-31 22:49:53 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2020-08-31 22:49:53 +0000
commitd1f63cbfd69d315e30dc780ce89cd1707f1823e5 (patch)
tree558b4101b131fdf54946ad84334ed15f77f6f9f4
parenta19f55ed67fe37805e86dcaedf66284ad11867a7 (diff)
parent6a7f5247387b5e8674bb64880318182813891cee (diff)
downloadtradefederation-d1f63cbfd69d315e30dc780ce89cd1707f1823e5.tar.gz
Merge "Backport perfetto file size in rvc-dev." into rvc-dev
-rw-r--r--test_framework/com/android/tradefed/device/metric/PerfettoPullerMetricCollector.java10
-rw-r--r--tests/src/com/android/tradefed/device/metric/PerfettoPullerMetricCollectorTest.java3
2 files changed, 13 insertions, 0 deletions
diff --git a/test_framework/com/android/tradefed/device/metric/PerfettoPullerMetricCollector.java b/test_framework/com/android/tradefed/device/metric/PerfettoPullerMetricCollector.java
index 0b1a3adbc..9e5662610 100644
--- a/test_framework/com/android/tradefed/device/metric/PerfettoPullerMetricCollector.java
+++ b/test_framework/com/android/tradefed/device/metric/PerfettoPullerMetricCollector.java
@@ -63,6 +63,7 @@ public class PerfettoPullerMetricCollector extends FilePullerDeviceMetricCollect
private static final String EXTRACTOR_SUCCESS = "1";
private static final String EXTRACTOR_FAILURE = "0";
private static final String EXTRACTOR_RUNTIME = "trace_extractor_runtime";
+ private static final String RAW_TRACE_FILE_SIZE = "perfetto_trace_file_size_bytes";
private static final String NSS_CACHE_ERROR = "base/nsscache-inl.h failed to lookup";
public enum METRIC_FILE_FORMAT {
@@ -191,6 +192,15 @@ public class PerfettoPullerMetricCollector extends FilePullerDeviceMetricCollect
processSrcFile = decompressFile(metricFile);
}
+ // Update the file size metrics.
+ if (processSrcFile != null) {
+ double perfettoFileSizeInBytes = processSrcFile.length();
+ Metric.Builder metricDurationBuilder = Metric.newBuilder();
+ metricDurationBuilder.getMeasurementsBuilder().setSingleDouble(
+ perfettoFileSizeInBytes);
+ data.addMetric(RAW_TRACE_FILE_SIZE, metricDurationBuilder.setType(DataType.RAW));
+ }
+
// Convert to perfetto metric format.
if (mConvertToMetricFile) {
File convertedMetricFile = convertToMetricProto(processSrcFile);
diff --git a/tests/src/com/android/tradefed/device/metric/PerfettoPullerMetricCollectorTest.java b/tests/src/com/android/tradefed/device/metric/PerfettoPullerMetricCollectorTest.java
index 24418a6c5..a9807b0d3 100644
--- a/tests/src/com/android/tradefed/device/metric/PerfettoPullerMetricCollectorTest.java
+++ b/tests/src/com/android/tradefed/device/metric/PerfettoPullerMetricCollectorTest.java
@@ -120,6 +120,9 @@ public class PerfettoPullerMetricCollectorTest {
assertTrue("Trace duration metrics not available but expected.",
currentMetrics.get("perfetto_trace_extractor_runtime").getMeasurements()
.getSingleDouble() >= 0);
+ assertTrue("Trace file size metric is not available.",
+ currentMetrics.get("perfetto_trace_file_size_bytes").getMeasurements()
+ .getSingleDouble() >= 0);
}
@Test