Closed Bug 1569077 Opened 5 months ago Closed 4 months ago

add some Layout Debugger features to help with command line scripting


(Core :: Layout, enhancement, P3)




Tracking Status
firefox70 --- fixed


(Reporter: heycam, Assigned: heycam)




(3 files)

Sometimes I want to load a document in the layout debugger then quit once it has loaded, e.g. if I want to run it under perf while measuring page load, or if I've added some manual logging or measurement that would get output while the page loads.

Sometimes I want to capture a Gecko Profiler profile of these page loads too, which isn't possible at all with the layout debugger.

This bug is for adding some command line arguments to make that easier.

Hi Julien. I'm trying add functionality to the Layout Debugger to collect a Gecko Profiler profile and save it to a file. I have the basic Services.profiler.StartProfiler() / Services.profiler.dumpProfileToFile() calls working, but when I load that file in, I don't get any symbols. Is there anything I can call into to make that saved profile be able to get symbols when I load it? Thanks!

Flags: needinfo?(felash)

Hey Cameron,

Currently we try to symbolicate unsymbolicated profiles at load time, but this uses the symbol server, and so the symbols needs to be uploaded there.
I'm not super comfortable about the process to do that. Markus probably knows more.

Flags: needinfo?(felash) → needinfo?(mstange)

Symbolicating raw profiles from local builds is something that, after all these years, we still don't have a proper answer for. I usually point people at this python script and apparently some people have had success with, but I haven't run it in years and it's probably not very easy to use.

Flags: needinfo?(mstange)

Gerald pointed me to MOZ_PROFILER_SYMBOLICATE. Markus, do you know if I were to fix MozDescribeCodeAddress for Linux, would the current MOZ_PROFILER_SYMBOLICATE functionality be enough to symbolicate raw profiles? Or are there still other problems in there?

Flags: needinfo?(mstange)

Oh, I forgot about that one. It might be enough! It won't be particularly fast, but it should do the job.

Flags: needinfo?(mstange)
Depends on: 1342076, 1573090
No longer depends on: 1342076
Pushed by
Part 1: Refactor layout debugger command line handling. r=dbaron
Part 2: Add --autoclose argument to the layout debugger. r=dbaron
Part 3: Add --capture-profile argument to the layout debugger. r=dbaron
Closed: 4 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla70
You need to log in before you can comment on or make changes to this bug.