Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(91)

Issue 561803002: Implements peer connection stats measurements in WebRTC call test. (Closed)

Created:
6 years, 3 months ago by phoglund_chromium
Modified:
6 years, 2 months ago
Reviewers:
tonyg
CC:
chromium-reviews, telemetry+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@telemetry
Project:
chromium
Visibility:
Public.

Description

Implements peer connection stats measurements in WebRTC call test. The telemetry test for WebRTC has so far been measuring CPU and memory. Since there's a stats API for WebRTC (see http://goo.gl/lfQKzE), we try to use that do extract interesting properties about the call. The properties we look at are such that we expect them to remain stable, so a sudden change in any of them will warrant investigation. This implementation is based on a trick where we instrument the constructor for webkitRTCPeerConnection. Whenever a peer connection is constructed, we attach a polling function which periodically polls the connection for new stats (that's how the stats API works). Then we make it easy for a measurement to extract this data, aggregate it into time series and report it through Telemetry. BUG=412787 Committed: https://crrev.com/1d2d8d71fc4ce119e6847a8c8aa667cf003c87ad Cr-Commit-Position: refs/heads/master@{#300249}

Patch Set 1 #

Patch Set 2 : #

Total comments: 17

Patch Set 3 : Added unittest, addressed comments #

Patch Set 4 : Not tracking page 3 after all (it's only local) #

Patch Set 5 : Now tracking peer connections for all webrtc pages. #

Total comments: 1

Patch Set 6 : Rebased #

Unified diffs Side-by-side diffs Delta from patch set Stats (+274 lines, -0 lines) Patch
M tools/perf/measurements/webrtc.py View 1 2 3 4 5 4 chunks +7 lines, -0 lines 0 comments Download
A tools/perf/metrics/webrtc_stats.py View 1 2 3 4 1 chunk +73 lines, -0 lines 0 comments Download
A tools/perf/metrics/webrtc_stats_unittest.py View 1 2 1 chunk +136 lines, -0 lines 0 comments Download
M tools/perf/page_sets/webrtc_cases.py View 1 2 3 4 5 2 chunks +6 lines, -0 lines 0 comments Download
A tools/perf/page_sets/webrtc_track_peerconnections.js View 1 2 1 chunk +52 lines, -0 lines 0 comments Download

Messages

Total messages: 22 (5 generated)
phoglund_chromium
Nat: please review :) Feel free to reassign to any other telemetry reviewer if you're ...
6 years, 3 months ago (2014-09-10 15:28:09 UTC) #2
phoglund_chromium
https://codereview.chromium.org/561803002/diff/20001/tools/perf/metrics/webrtc_stats.py File tools/perf/metrics/webrtc_stats.py (right): https://codereview.chromium.org/561803002/diff/20001/tools/perf/metrics/webrtc_stats.py#newcode64 tools/perf/metrics/webrtc_stats.py:64: for i in xrange(num_peer_connections): This is arguably complex enough ...
6 years, 3 months ago (2014-09-12 08:26:07 UTC) #3
phoglund_chromium
nduca suggested you'd be a good reviewer, Tony. Can you take a look?
6 years, 3 months ago (2014-09-23 16:49:57 UTC) #5
phoglund_chromium
On 2014/09/23 16:49:57, phoglund wrote: > nduca suggested you'd be a good reviewer, Tony. Can ...
6 years, 2 months ago (2014-09-26 08:07:36 UTC) #6
tonyg
Apologies for the delay. One round of comments and I think this should be good ...
6 years, 2 months ago (2014-09-29 16:45:22 UTC) #7
phoglund_chromium
PTAL https://codereview.chromium.org/561803002/diff/20001/tools/perf/metrics/webrtc_stats.py File tools/perf/metrics/webrtc_stats.py (right): https://codereview.chromium.org/561803002/diff/20001/tools/perf/metrics/webrtc_stats.py#newcode59 tools/perf/metrics/webrtc_stats.py:59: if not self._all_reports: On 2014/09/29 16:45:21, tonyg wrote: ...
6 years, 2 months ago (2014-09-30 13:37:49 UTC) #8
phoglund_chromium
https://codereview.chromium.org/561803002/diff/80001/tools/perf/metrics/webrtc_stats.py File tools/perf/metrics/webrtc_stats.py (right): https://codereview.chromium.org/561803002/diff/80001/tools/perf/metrics/webrtc_stats.py#newcode59 tools/perf/metrics/webrtc_stats.py:59: if not self._all_reports: Actually, I ended up not logging ...
6 years, 2 months ago (2014-10-01 13:17:45 UTC) #9
phoglund_chromium
Friendly ping!
6 years, 2 months ago (2014-10-03 12:15:47 UTC) #10
phoglund_chromium
On 2014/10/03 12:15:47, phoglund wrote: > Friendly ping! Ping!
6 years, 2 months ago (2014-10-09 15:46:46 UTC) #11
phoglund_chromium
On 2014/10/09 15:46:46, phoglund wrote: > On 2014/10/03 12:15:47, phoglund wrote: > > Friendly ping! ...
6 years, 2 months ago (2014-10-09 15:47:52 UTC) #12
tonyg
lgtm Apologies again for the long delay here. dtu@ or skyostil@ might both be great ...
6 years, 2 months ago (2014-10-15 00:42:02 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/561803002/80001
6 years, 2 months ago (2014-10-15 06:13:05 UTC) #15
commit-bot: I haz the power
Try jobs failed on following builders: linux_gpu on tryserver.chromium.gpu (http://build.chromium.org/p/tryserver.chromium.gpu/builders/linux_gpu/builds/79229) android_aosp on tryserver.chromium.linux (http://build.chromium.org/p/tryserver.chromium.linux/builders/android_aosp/builds/24379) android_arm64_dbg_recipe ...
6 years, 2 months ago (2014-10-15 06:15:51 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/561803002/100001
6 years, 2 months ago (2014-10-20 10:22:10 UTC) #19
commit-bot: I haz the power
Committed patchset #6 (id:100001)
6 years, 2 months ago (2014-10-20 11:41:00 UTC) #20
commit-bot: I haz the power
Patchset 6 (id:??) landed as https://crrev.com/1d2d8d71fc4ce119e6847a8c8aa667cf003c87ad Cr-Commit-Position: refs/heads/master@{#300249}
6 years, 2 months ago (2014-10-20 11:41:41 UTC) #21
phoglund_chromium
6 years, 2 months ago (2014-10-21 15:54:13 UTC) #22
Message was sent while issue was closed.
On 2014/10/15 00:42:02, tonyg wrote:
> lgtm
> 
> Apologies again for the long delay here. dtu@ or skyostil@ might both be great
> reviewers for these types of things as well.

Thank you Tony. I'll try with them to ease your review load a bit :)

Powered by Google App Engine
This is Rietveld 408576698