[go: nahoru, domu]

Add event latency to compositor latency metrics

If handling of an event leads to producing a compositor frame, an UMA
histogram is recorded measuring the time between the event timestamp and
presentation of the corresponding frame to the screen, in the form of
"EventLatency.<EventType>.TotalLatency". In future, we will add
appropriate break-down metrics, too.

Bug: 1054007

Change-Id: If85f99fb83172337c21b374073a3c2d098c2fd50
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2018704
Reviewed-by: Robert Kaplow <rkaplow@chromium.org>
Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org>
Reviewed-by: Navid Zolghadr <nzolghadr@chromium.org>
Reviewed-by: Behdad Bakhshinategh <behdadb@chromium.org>
Commit-Queue: Mohsen Izadi <mohsen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#746247}
diff --git a/cc/BUILD.gn b/cc/BUILD.gn
index 4f65dd8..146f433 100644
--- a/cc/BUILD.gn
+++ b/cc/BUILD.gn
@@ -156,6 +156,10 @@
     "metrics/compositor_frame_reporting_controller.h",
     "metrics/compositor_timing_history.cc",
     "metrics/compositor_timing_history.h",
+    "metrics/event_metrics.cc",
+    "metrics/event_metrics.h",
+    "metrics/events_metrics_manager.cc",
+    "metrics/events_metrics_manager.h",
     "metrics/frame_sequence_tracker.cc",
     "metrics/frame_sequence_tracker.h",
     "metrics/latency_ukm_reporter.cc",
@@ -647,6 +651,7 @@
     "metrics/compositor_frame_reporter_unittest.cc",
     "metrics/compositor_frame_reporting_controller_unittest.cc",
     "metrics/compositor_timing_history_unittest.cc",
+    "metrics/events_metrics_manager_unittest.cc",
     "metrics/frame_sequence_metrics_unittest.cc",
     "metrics/frame_sequence_tracker_unittest.cc",
     "mojo_embedder/async_layer_tree_frame_sink_unittest.cc",