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

Issue 545523002: [Telemetry] Add capability for values to reference external files. (Closed)

Created:
6 years, 3 months ago by eakuefner
Modified:
5 years, 9 months ago
CC:
chromium-reviews, sullivan, telemetry+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

[Telemetry] Add capability for values to reference external files. This makes it so that values can optionally reference external files that provide trace-like details as to how it arose.

Patch Set 1 #

Patch Set 2 : Hook up JSON + add tests #

Total comments: 2

Patch Set 3 : Better approach + more tests #

Total comments: 4

Patch Set 4 : New approach per Nat #

Total comments: 9

Patch Set 5 : Add more impl + unittests for trace #

Patch Set 6 : minor typo fix #

Total comments: 2

Patch Set 7 : Hooked up JSON O.F., fleshed out TraceValue impl, added unittests. #

Patch Set 8 : Address staticmethod nit #

Total comments: 11

Patch Set 9 : Address Nat's comments #

Total comments: 3

Patch Set 10 : Address Chris's comments + chart JSON html upload code #

Patch Set 11 : painful rebase #

Patch Set 12 : Attempt to make the bots happier #

Patch Set 13 : Work around GPU triggered tests not knowing about trace_viewer #

Unified diffs Side-by-side diffs Delta from patch set Stats (+415 lines, -28 lines) Patch
M tools/perf/measurements/smoothness_controller.py View 1 2 3 4 5 6 7 8 9 2 chunks +3 lines, -1 line 0 comments Download
M tools/telemetry/telemetry/results/chart_json_output_formatter.py View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +105 lines, -11 lines 0 comments Download
M tools/telemetry/telemetry/results/chart_json_output_formatter_unittest.py View 1 2 3 4 5 6 7 8 9 10 9 chunks +9 lines, -8 lines 0 comments Download
M tools/telemetry/telemetry/results/json_output_formatter.py View 1 2 3 4 5 6 7 8 9 2 chunks +39 lines, -5 lines 0 comments Download
M tools/telemetry/telemetry/results/json_output_formatter_unittest.py View 1 2 3 4 5 6 7 8 9 3 chunks +39 lines, -1 line 0 comments Download
M tools/telemetry/telemetry/results/results_options.py View 1 2 3 4 5 6 7 8 9 10 1 chunk +2 lines, -2 lines 0 comments Download
A tools/telemetry/telemetry/util/file_handle.py View 1 2 3 4 5 6 7 8 9 1 chunk +90 lines, -0 lines 0 comments Download
M tools/telemetry/telemetry/value/__init__.py View 1 2 3 4 5 6 8 9 10 1 chunk +4 lines, -0 lines 0 comments Download
A tools/telemetry/telemetry/value/trace.py View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +82 lines, -0 lines 0 comments Download
A tools/telemetry/telemetry/value/trace_unittest.py View 1 2 3 4 5 6 7 8 1 chunk +42 lines, -0 lines 0 comments Download

Messages

Total messages: 57 (18 generated)
eakuefner
6 years, 3 months ago (2014-09-05 00:12:22 UTC) #2
nednguyen
On 2014/09/05 00:12:22, eakuefner wrote: What is the merge policy for file?
6 years, 3 months ago (2014-09-05 02:58:51 UTC) #3
nednguyen
https://codereview.chromium.org/545523002/diff/20001/tools/telemetry/telemetry/results/page_test_results.py File tools/telemetry/telemetry/results/page_test_results.py (right): https://codereview.chromium.org/545523002/diff/20001/tools/telemetry/telemetry/results/page_test_results.py#newcode110 tools/telemetry/telemetry/results/page_test_results.py:110: files.update(set(v.files)) You may want to implement __hash__ and __eq__ ...
6 years, 3 months ago (2014-09-05 02:59:16 UTC) #4
eakuefner
On 2014/09/05 02:59:16, nednguyen wrote: > https://codereview.chromium.org/545523002/diff/20001/tools/telemetry/telemetry/results/page_test_results.py > File tools/telemetry/telemetry/results/page_test_results.py (right): > > https://codereview.chromium.org/545523002/diff/20001/tools/telemetry/telemetry/results/page_test_results.py#newcode110 > ...
6 years, 3 months ago (2014-09-05 22:53:36 UTC) #5
eakuefner
On 2014/09/05 22:53:36, eakuefner wrote: > On 2014/09/05 02:59:16, nednguyen wrote: > > > https://codereview.chromium.org/545523002/diff/20001/tools/telemetry/telemetry/results/page_test_results.py ...
6 years, 3 months ago (2014-09-05 22:55:18 UTC) #6
nduca
so i hadn't envisioned all values having associated files. i more thought the base class ...
6 years, 3 months ago (2014-09-08 18:42:50 UTC) #7
nednguyen
On 2014/09/05 22:55:18, eakuefner wrote: > On 2014/09/05 22:53:36, eakuefner wrote: > > On 2014/09/05 ...
6 years, 3 months ago (2014-09-08 18:45:12 UTC) #8
nednguyen
https://codereview.chromium.org/545523002/diff/40001/tools/telemetry/telemetry/results/json_output_formatter.py File tools/telemetry/telemetry/results/json_output_formatter.py (right): https://codereview.chromium.org/545523002/diff/40001/tools/telemetry/telemetry/results/json_output_formatter.py#newcode40 tools/telemetry/telemetry/results/json_output_formatter.py:40: else: You can just keep the initialization of results_dict ...
6 years, 3 months ago (2014-09-08 18:45:24 UTC) #9
nduca
please make a FileHandle object that is a TempFile or constructed-from-filepath-but-doesnt-delete it. put it in ...
6 years, 3 months ago (2014-09-08 18:45:29 UTC) #11
nduca
https://codereview.chromium.org/545523002/diff/40001/tools/telemetry/telemetry/value/__init__.py File tools/telemetry/telemetry/value/__init__.py (left): https://codereview.chromium.org/545523002/diff/40001/tools/telemetry/telemetry/value/__init__.py#oldcode188 tools/telemetry/telemetry/value/__init__.py:188: d['page_id'] = self.page.id How about ""Returns file handle... or ...
6 years, 3 months ago (2014-09-08 18:53:02 UTC) #12
eakuefner
On 2014/09/08 18:53:02, nduca wrote: > https://codereview.chromium.org/545523002/diff/40001/tools/telemetry/telemetry/value/__init__.py > File tools/telemetry/telemetry/value/__init__.py (left): > > https://codereview.chromium.org/545523002/diff/40001/tools/telemetry/telemetry/value/__init__.py#oldcode188 > ...
6 years, 3 months ago (2014-09-09 00:11:52 UTC) #13
nduca
https://codereview.chromium.org/545523002/diff/60001/tools/telemetry/telemetry/util/file_handle.py File tools/telemetry/telemetry/util/file_handle.py (right): https://codereview.chromium.org/545523002/diff/60001/tools/telemetry/telemetry/util/file_handle.py#newcode10 tools/telemetry/telemetry/util/file_handle.py:10: def __init__(self, handle): i didn't mean for it to ...
6 years, 3 months ago (2014-09-09 01:39:06 UTC) #14
chrishenry
https://codereview.chromium.org/545523002/diff/60001/tools/telemetry/telemetry/util/file_handle.py File tools/telemetry/telemetry/util/file_handle.py (right): https://codereview.chromium.org/545523002/diff/60001/tools/telemetry/telemetry/util/file_handle.py#newcode1 tools/telemetry/telemetry/util/file_handle.py:1: # Copyright 2014 The Chromium Authors. All rights reserved. ...
6 years, 3 months ago (2014-09-10 00:52:28 UTC) #15
eakuefner
https://codereview.chromium.org/545523002/diff/60001/tools/telemetry/telemetry/util/file_handle.py File tools/telemetry/telemetry/util/file_handle.py (right): https://codereview.chromium.org/545523002/diff/60001/tools/telemetry/telemetry/util/file_handle.py#newcode10 tools/telemetry/telemetry/util/file_handle.py:10: def __init__(self, handle): On 2014/09/09 01:39:06, nduca wrote: > ...
6 years, 3 months ago (2014-09-11 23:25:09 UTC) #16
nduca
https://codereview.chromium.org/545523002/diff/100001/tools/telemetry/telemetry/util/file_handle.py File tools/telemetry/telemetry/util/file_handle.py (right): https://codereview.chromium.org/545523002/diff/100001/tools/telemetry/telemetry/util/file_handle.py#newcode9 tools/telemetry/telemetry/util/file_handle.py:9: class FileHandle(object): as i mentioned on chat this still ...
6 years, 3 months ago (2014-09-12 01:44:42 UTC) #17
nduca
are we hooking it into the json object in this patch?
6 years, 3 months ago (2014-09-12 01:45:20 UTC) #18
eakuefner
On 2014/09/12 01:45:20, nduca wrote: > are we hooking it into the json object in ...
6 years, 3 months ago (2014-09-12 01:54:48 UTC) #19
eakuefner
Finally got an implementation fleshed out. PTAL.
6 years, 3 months ago (2014-09-16 06:23:31 UTC) #22
nednguyen
https://codereview.chromium.org/545523002/diff/180001/tools/telemetry/telemetry/util/file_handle.py File tools/telemetry/telemetry/util/file_handle.py (right): https://codereview.chromium.org/545523002/diff/180001/tools/telemetry/telemetry/util/file_handle.py#newcode31 tools/telemetry/telemetry/util/file_handle.py:31: return self._id I am still not convinced that we ...
6 years, 3 months ago (2014-09-16 16:15:04 UTC) #23
nduca
lgtm https://codereview.chromium.org/545523002/diff/180001/tools/telemetry/telemetry/results/json_output_formatter.py File tools/telemetry/telemetry/results/json_output_formatter.py (right): https://codereview.chromium.org/545523002/diff/180001/tools/telemetry/telemetry/results/json_output_formatter.py#newcode34 tools/telemetry/telemetry/results/json_output_formatter.py:34: trace_values = _AllTraceValues(page_test_results) er, why not just all ...
6 years, 3 months ago (2014-09-16 20:56:25 UTC) #24
chrishenry
lgtm https://codereview.chromium.org/545523002/diff/200001/tools/telemetry/telemetry/util/file_handle.py File tools/telemetry/telemetry/util/file_handle.py (right): https://codereview.chromium.org/545523002/diff/200001/tools/telemetry/telemetry/util/file_handle.py#newcode17 tools/telemetry/telemetry/util/file_handle.py:17: tempfile: An instance of a temporary file object. ...
6 years, 3 months ago (2014-09-23 17:22:45 UTC) #25
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/545523002/220001
6 years, 2 months ago (2014-09-25 22:24:53 UTC) #27
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/71548) mac_gpu on tryserver.chromium.gpu (http://build.chromium.org/p/tryserver.chromium.gpu/builders/mac_gpu/builds/60914) android_aosp ...
6 years, 2 months ago (2014-09-25 22:30:18 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/545523002/240001
6 years, 2 months ago (2014-09-25 23:08:49 UTC) #31
commit-bot: I haz the power
Try jobs failed on following builders: linux_gpu_triggered_tests on tryserver.chromium.gpu (http://build.chromium.org/p/tryserver.chromium.gpu/builders/linux_gpu_triggered_tests/builds/61654)
6 years, 2 months ago (2014-09-25 23:56:23 UTC) #33
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/545523002/240001
6 years, 2 months ago (2014-09-26 04:34:41 UTC) #35
commit-bot: I haz the power
Try jobs failed on following builders: linux_gpu_triggered_tests on tryserver.chromium.gpu (http://build.chromium.org/p/tryserver.chromium.gpu/builders/linux_gpu_triggered_tests/builds/61758)
6 years, 2 months ago (2014-09-26 05:06:05 UTC) #37
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/545523002/260001
6 years, 2 months ago (2014-09-26 05:33:03 UTC) #39
commit-bot: I haz the power
Try jobs failed on following builders: mac_gpu_retina_triggered_tests on tryserver.chromium.gpu (http://build.chromium.org/p/tryserver.chromium.gpu/builders/mac_gpu_retina_triggered_tests/builds/51874)
6 years, 2 months ago (2014-09-26 05:57:55 UTC) #41
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/545523002/280001
6 years, 2 months ago (2014-09-26 06:39:02 UTC) #43
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_x64_rel_swarming on tryserver.chromium.win (http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_rel_swarming/builds/13361)
6 years, 2 months ago (2014-09-26 08:50:36 UTC) #45
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/545523002/280001
6 years, 2 months ago (2014-09-30 18:10:20 UTC) #47
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_x64_rel_swarming on tryserver.chromium.win (http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_rel_swarming/builds/14481)
6 years, 2 months ago (2014-09-30 20:10:51 UTC) #49
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/545523002/280001
6 years, 2 months ago (2014-10-01 20:56:42 UTC) #51
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_x64_rel_swarming on tryserver.chromium.win (http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_rel_swarming/builds/15044)
6 years, 2 months ago (2014-10-02 00:57:24 UTC) #53
dtu
I'm taking over this patch. The unit test fixes are easy, but I have questions ...
6 years, 2 months ago (2014-10-02 23:31:47 UTC) #54
chromium-reviews
I don't know about the details of the patch, but at a very high level, ...
6 years, 2 months ago (2014-10-03 13:47:04 UTC) #55
nednguyen
On 2014/10/03 13:47:04, chromium-reviews wrote: > I don't know about the details of the patch, ...
6 years, 2 months ago (2014-10-15 22:56:36 UTC) #56
chrishenry
6 years, 2 months ago (2014-10-15 23:32:41 UTC) #57
On 2014/10/15 22:56:36, nednguyen wrote:
> On 2014/10/03 13:47:04, chromium-reviews wrote:
> > I don't know about the details of the patch, but at a very high level, as a
> > user of this feature I would really like to be able to:
> > 
> > * Have trace cloud storage urls available in the chartjson that gets sent
> > to perf dashboard for chromium.perf buildbots (still working on the
> > buildbot side of this)
> > * Have trace cloud storage urls in the output of perf tryjobs on
> > tryserver.chromium.perf, so I can add a buildbot annotation that links to
> > them. It looks like with the way the patch is now, I'd need to switch the
> > perf tryjobs to use chartjson to do this, since the upload is in
> > chart_json_output_formatter, right?
> > 
> > On Thu, Oct 2, 2014 at 7:31 PM, <mailto:dtu@chromium.org> wrote:
> > 
> > > I'm taking over this patch. The unit test fixes are easy, but I have
> > > questions
> > > about other parts of the patch. Such as, what is FileHandle and why do we
> > > need
> > > it? Seems like a lot of code for something we shouldn't be doing anyway -
> > > assigning global IDs.
> > >
> > > https://codereview.chromium.org/545523002/
> > >
> > 
> > To unsubscribe from this group and stop receiving emails from it, send an
> email
> > to mailto:chromium-reviews+unsubscribe@chromium.org.
> 
> Chatted with Dave offline. Dave will take over the devtool_backend refactoring
> and I will take ownership of landing this.

A few things about FileHandle, off the top of my head:
* We need to assign an id, because the json results need to be able to point to
the files
* We need to be able to track of opened FileHandle and close them
* It is useful for testing, to inject fake FileHandle

Powered by Google App Engine
This is Rietveld 408576698