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

Issue 171143002: Implements Windows system tracing. (Closed)

Created:
6 years, 10 months ago by etienneb
Modified:
6 years, 9 months ago
CC:
chromium-reviews, joi+watch-content_chromium.org, darin-cc_chromium.org, dsinclair+watch_chromium.org, erikwright+watch_chromium.org, jam
Base URL:
https://chromium.googlesource.com/chromium/src.git@tracing
Visibility:
Public.

Description

Implements Windows system tracing. This CL brings the tracing information into the resulting JSon. As tracing needs administrator rights, we assume that Chrome is launched as administrator. To be able to view events, the traceviewer part must land first. see: https://codereview.appspot.com/51300043/ BUG= Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=255818

Patch Set 1 #

Patch Set 2 : Remove leaky ETWController #

Patch Set 3 : nits #

Total comments: 8

Patch Set 4 : nits #

Total comments: 10

Patch Set 5 : pull out the consumer to it's own file #

Patch Set 6 : split cl again #

Patch Set 7 : nits #

Patch Set 8 : nits #

Patch Set 9 : rebase on ToT #

Total comments: 10

Patch Set 10 : singleton #

Patch Set 11 : stop thread execution #

Patch Set 12 : nits #

Total comments: 6

Patch Set 13 : fix nduca comments #

Patch Set 14 : #

Patch Set 15 : nit #

Patch Set 16 : fix license #

Patch Set 17 : detect 64-bit kernel #

Patch Set 18 : add clock sync #

Patch Set 19 : remove detection of 64-bit kernel #

Patch Set 20 : fix android build #

Unified diffs Side-by-side diffs Delta from patch set Stats (+339 lines, -21 lines) Patch
A content/browser/tracing/etw_system_event_consumer_win.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +75 lines, -0 lines 0 comments Download
A content/browser/tracing/etw_system_event_consumer_win.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +215 lines, -0 lines 0 comments Download
M content/browser/tracing/tracing_controller_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 3 chunks +3 lines, -3 lines 0 comments Download
M content/browser/tracing/tracing_controller_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 10 chunks +44 lines, -18 lines 0 comments Download
M content/content_browser.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 41 (0 generated)
nduca
6 years, 10 months ago (2014-02-18 21:58:01 UTC) #1
nduca
looks solid, lets pull the consumer to its own file plus a few bits of ...
6 years, 10 months ago (2014-02-18 22:17:12 UTC) #2
nduca
https://codereview.chromium.org/171143002/diff/80001/content/browser/tracing/tracing_controller_impl.cc File content/browser/tracing/tracing_controller_impl.cc (right): https://codereview.chromium.org/171143002/diff/80001/content/browser/tracing/tracing_controller_impl.cc#newcode101 content/browser/tracing/tracing_controller_impl.cc:101: value->Set("payload", base::Value::CreateStringValue(payload)); oh also should base64 encode?
6 years, 10 months ago (2014-02-18 22:17:45 UTC) #3
fdoray
https://codereview.chromium.org/171143002/diff/80001/content/browser/tracing/tracing_controller_impl.cc File content/browser/tracing/tracing_controller_impl.cc (right): https://codereview.chromium.org/171143002/diff/80001/content/browser/tracing/tracing_controller_impl.cc#newcode72 content/browser/tracing/tracing_controller_impl.cc:72: void AppendEventToBuffer(EVENT_TRACE* event) { Should be private. https://codereview.chromium.org/171143002/diff/80001/content/browser/tracing/tracing_controller_impl.cc#newcode100 content/browser/tracing/tracing_controller_impl.cc:100: ...
6 years, 10 months ago (2014-02-19 16:18:08 UTC) #4
dsinclair
Question, I don't know anything about ETW, but, would it be possible, instead of outputting ...
6 years, 10 months ago (2014-02-19 16:29:38 UTC) #5
etienneb
Yes, this is possible but it's not what you want. There is many encoding version ...
6 years, 10 months ago (2014-02-19 16:31:34 UTC) #6
etienneb
PTAnL. I addressed most of the comments. The main issue still present is when to ...
6 years, 10 months ago (2014-02-19 17:14:52 UTC) #7
nduca
getting close :) https://codereview.chromium.org/171143002/diff/230001/content/browser/tracing/tracing_consumer_win.cc File content/browser/tracing/tracing_consumer_win.cc (right): https://codereview.chromium.org/171143002/diff/230001/content/browser/tracing/tracing_consumer_win.cc#newcode37 content/browser/tracing/tracing_consumer_win.cc:37: bool EtwSystemEventConsumer::StartKernelSessionTracing() { lets match the ...
6 years, 10 months ago (2014-02-20 07:04:54 UTC) #8
etienneb
I added a callback to kill the thread and refactor the singleton pattern. PTAaanL. I ...
6 years, 10 months ago (2014-02-20 19:08:03 UTC) #9
nduca
lgtm! https://codereview.chromium.org/171143002/diff/400001/content/browser/tracing/etw_system_event_consumer_win.h File content/browser/tracing/etw_system_event_consumer_win.h (right): https://codereview.chromium.org/171143002/diff/400001/content/browser/tracing/etw_system_event_consumer_win.h#newcode32 content/browser/tracing/etw_system_event_consumer_win.h:32: // Static override of EtwTraceConsumerBase::ProcessEvent. use friends so ...
6 years, 10 months ago (2014-02-21 05:22:10 UTC) #10
nduca
minor comment, lgtm still stands https://codereview.chromium.org/171143002/diff/400001/content/browser/tracing/etw_system_event_consumer_win.cc File content/browser/tracing/etw_system_event_consumer_win.cc (right): https://codereview.chromium.org/171143002/diff/400001/content/browser/tracing/etw_system_event_consumer_win.cc#newcode57 content/browser/tracing/etw_system_event_consumer_win.cc:57: if (!StopKernelSessionTracing()) little worried ...
6 years, 10 months ago (2014-02-21 05:23:42 UTC) #11
etienneb
done. This CL still needs an owner approval for content/content_browser.gypi (+darin). And must be landed ...
6 years, 10 months ago (2014-02-24 14:59:33 UTC) #12
nduca
You can TBR=darin for the gypi change so feel free to land.
6 years, 9 months ago (2014-03-03 22:44:15 UTC) #13
darin (slow to review)
GYPI change LGTM
6 years, 9 months ago (2014-03-04 04:44:33 UTC) #14
etienneb
I added a few changes to this CL. - remove the pretty-print of json -> ...
6 years, 9 months ago (2014-03-06 22:43:32 UTC) #15
etienneb
I added the clock sync events needed to synchronize kernel trace and chrome trace.
6 years, 9 months ago (2014-03-07 20:23:28 UTC) #16
nduca
still lgtm :)
6 years, 9 months ago (2014-03-07 20:56:59 UTC) #17
etienneb
The CQ bit was checked by etienneb@chromium.org
6 years, 9 months ago (2014-03-07 21:53:51 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/etienneb@chromium.org/171143002/640001
6 years, 9 months ago (2014-03-07 21:54:51 UTC) #19
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 9 months ago (2014-03-07 23:04:24 UTC) #20
commit-bot: I haz the power
Retried try job too often on android_dbg for step(s) slave_steps http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=android_dbg&number=158689
6 years, 9 months ago (2014-03-07 23:04:25 UTC) #21
etienneb
The CQ bit was checked by etienneb@chromium.org
6 years, 9 months ago (2014-03-07 23:17:00 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/etienneb@chromium.org/171143002/650001
6 years, 9 months ago (2014-03-07 23:18:04 UTC) #23
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/etienneb@chromium.org/171143002/650001
6 years, 9 months ago (2014-03-08 11:09:11 UTC) #24
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 9 months ago (2014-03-08 14:03:08 UTC) #25
commit-bot: I haz the power
Retried try job too often on mac_rel for step(s) telemetry_perf_unittests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=mac_rel&number=234355
6 years, 9 months ago (2014-03-08 14:03:08 UTC) #26
etienneb
The CQ bit was checked by etienneb@chromium.org
6 years, 9 months ago (2014-03-08 16:38:59 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/etienneb@chromium.org/171143002/650001
6 years, 9 months ago (2014-03-08 16:39:09 UTC) #28
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 9 months ago (2014-03-08 18:12:39 UTC) #29
commit-bot: I haz the power
Retried try job too often on mac_rel for step(s) telemetry_perf_unittests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=mac_rel&number=234507
6 years, 9 months ago (2014-03-08 18:12:40 UTC) #30
etienneb
The CQ bit was checked by etienneb@chromium.org
6 years, 9 months ago (2014-03-08 22:18:47 UTC) #31
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/etienneb@chromium.org/171143002/650001
6 years, 9 months ago (2014-03-08 22:19:03 UTC) #32
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 9 months ago (2014-03-08 23:09:48 UTC) #33
commit-bot: I haz the power
Retried try job too often on mac_rel for step(s) telemetry_perf_unittests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=mac_rel&number=234613
6 years, 9 months ago (2014-03-08 23:09:49 UTC) #34
etienneb
The CQ bit was checked by etienneb@chromium.org
6 years, 9 months ago (2014-03-09 00:22:24 UTC) #35
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/etienneb@chromium.org/171143002/650001
6 years, 9 months ago (2014-03-09 00:22:36 UTC) #36
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 9 months ago (2014-03-09 01:07:29 UTC) #37
commit-bot: I haz the power
Retried try job too often on mac_rel for step(s) telemetry_perf_unittests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=mac_rel&number=234659
6 years, 9 months ago (2014-03-09 01:07:30 UTC) #38
etienneb
The CQ bit was checked by etienneb@chromium.org
6 years, 9 months ago (2014-03-09 03:37:15 UTC) #39
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/etienneb@chromium.org/171143002/650001
6 years, 9 months ago (2014-03-09 03:38:03 UTC) #40
commit-bot: I haz the power
6 years, 9 months ago (2014-03-09 03:59:52 UTC) #41
Message was sent while issue was closed.
Change committed as 255818

Powered by Google App Engine
This is Rietveld 408576698