Issue metadata
Sign in to add a comment
|
Trace symbolisation on windows should fetch symbols from servers |
||||||||||||||||||||||
Issue descriptionThe current symbolisation python script is assuming the debug files are local. To ease interaction with users sending us trace, we should be able to symbolize a trace without the need of the user executable or without asking the user to run the symbolisation script. On windows, the symbols servers provide PDB files and can be accessed with the code identifier. On linux/max, the chrome version should be enough to retrieve the original executable. The script should still work for custom local build
,
May 9 2017
,
May 31 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a81e171d89732c62f3e8d1846ea685baa87ecd6f commit a81e171d89732c62f3e8d1846ea685baa87ecd6f Author: etienneb <etienneb@chromium.org> Date: Wed May 31 16:01:56 2017 Adding PE TimeStamp to chrome trace to ease retrieving debug information On windows, symbols servers can be queried to retrieve debug information. The code identifier is used as a key to retrieve the exact executable. Current chrome memory dump contains the loaded module and their loaded addresses. example: {"bs":{"pc":"0","pd":"0","pss":"0","sc":"0","sd":"0","sw":"0"},"mf":"C:\\Windows\\system32\\powrprof.dll","pf":0,"sa":"7ffdae7a0000","sz":"4b000"}, But to uniquely identify them and being able to retrieve debug information from symbols servers, the TimeStamp present in PE header is required. This patch is adding the "ts" (TimeStamp) field. {"bs":{"pc":"0","pd":"0","pss":"0","sc":"0","sd":"0","sw":"0"},"mf":"C:\\Windows\\SYSTEM32\\ntdll.dll","pf":0,"sa":"7ffdb2170000","sz":"1c1000","ts":"580ee321"}, From these information one can query MS/Google symbols servers. https://msdl.microsoft.com/download/symbols/ntdll.dll/580EE3211C1000/ntdll.dl_ basename / code-ident /dll The code-identifier is built from the timestamp AND the size of the executable CC=chrisha@chromium.org, erikchen@chromium.org R=primiano@chromium.org BUG=719969 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.win:win10_chromium_x64_rel_ng Review-Url: https://codereview.chromium.org/2869073002 Cr-Commit-Position: refs/heads/master@{#475930} [modify] https://crrev.com/a81e171d89732c62f3e8d1846ea685baa87ecd6f/base/BUILD.gn [modify] https://crrev.com/a81e171d89732c62f3e8d1846ea685baa87ecd6f/base/trace_event/process_memory_maps.cc [modify] https://crrev.com/a81e171d89732c62f3e8d1846ea685baa87ecd6f/base/trace_event/process_memory_maps.h [modify] https://crrev.com/a81e171d89732c62f3e8d1846ea685baa87ecd6f/base/win/BUILD.gn [modify] https://crrev.com/a81e171d89732c62f3e8d1846ea685baa87ecd6f/components/tracing/BUILD.gn [modify] https://crrev.com/a81e171d89732c62f3e8d1846ea685baa87ecd6f/components/tracing/common/process_metrics_memory_dump_provider.cc
,
Jun 16 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/175bf817dbbb2b3f775127f3b84b4cfd7845fcde commit 175bf817dbbb2b3f775127f3b84b4cfd7845fcde Author: catapult-deps-roller@chromium.org <catapult-deps-roller@chromium.org> Date: Fri Jun 16 18:57:03 2017 Roll src/third_party/catapult/ 59a182b2a..e9dc4c57f (16 commits) https://chromium.googlesource.com/external/github.com/catapult-project/catapult.git/+log/59a182b2a694..e9dc4c57fb00 $ git log 59a182b2a..e9dc4c57f --date=short --no-merges --format='%ad %ae %s' 2017-06-16 eakuefner [Telemetry] Shim telemetry.internal.util.camel_case 2017-06-16 nednguyen Set default value for TracedMetaClass to avoid import error when trace_event_impl is undefined 2017-06-16 xunjieli Migrate web-page-replay-go files 2017-06-16 mboehme Clip slices to the horizontal bounds of the viewport. 2017-06-15 benjhayden Make common/battor/bin/run_py_tests executable. 2017-06-15 dproy Add function to calculate First Consistently Interactive. 2017-06-15 eakuefner [Tracing] Move Python HistogramSet into tracing.value.histogram_set 2017-06-15 etienneb Add support for fetching symbols from GCS for windows traces 2017-06-15 eakuefner [Telemetry] Delete telemetry.internal.util.classes 2017-06-15 benjhayden Document all the scripts in tracing/bin/. 2017-06-15 ashleymarie Adding names for stories in unittests 2017-06-15 benjhayden Rename valueset2html to histograms2html. 2017-06-15 benjhayden Fix metrics-results-ui-significance-threshold-slider.png 2017-06-15 benjhayden Remove dead code iterObjectFieldsRecursively. 2017-06-15 eakuefner [Telemetry] Move camel_case to common/py_utils 2017-06-15 dskiba [experimental] symbolize_trace: fix include paths Created with: roll-dep src/third_party/catapult BUG=719969, 720002 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, see: http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel TBR=sullivan@chromium.org Change-Id: I044b424973ad6cca6e37f8a39e71e4a2d62975a2 Reviewed-on: https://chromium-review.googlesource.com/538852 Reviewed-by: <catapult-deps-roller@chromium.org> Commit-Queue: <catapult-deps-roller@chromium.org> Cr-Commit-Position: refs/heads/master@{#480112} [modify] https://crrev.com/175bf817dbbb2b3f775127f3b84b4cfd7845fcde/DEPS |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by etienneb@chromium.org
, May 9 2017