@firefox-devtools/profiler-cli 0.9.0 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -30,12 +30,15 @@ Run `profiler-cli --help` for the full options reference.
30
30
 
31
31
  ```bash
32
32
  profiler-cli load <PATH> # Start daemon and load profile (file or http/https URL)
33
+ profiler-cli load <PATH> --with-samply # Same, but serve the file via "samply load" and symbolicate with its symbol server
33
34
  profiler-cli profile info # Print profile summary [--all] [--search <term>]
34
35
  profiler-cli profile meta # Print profile metadata (application, platform, recording settings)
35
36
  profiler-cli profile logs # Print Log markers in MOZ_LOG format [--thread] [--module] [--level] [--search] [--limit]
37
+ profiler-cli profile markers # Search markers across all threads [--search] [--thread] [--category] [--min-duration] [--max-duration] [--has-stack] [--limit]
38
+ profiler-cli thread list # List all threads as a flat table [--sort] [--search] [--limit]
36
39
  profiler-cli thread info # Print detailed thread information
37
40
  profiler-cli thread select <handle> # Select a thread (e.g., t-0, t-1)
38
- profiler-cli thread samples # Show hot functions list for current thread
41
+ profiler-cli thread samples # Show hot functions list and category breakdown for current thread
39
42
  profiler-cli thread samples-top-down # Show top-down call tree (where CPU time is spent)
40
43
  profiler-cli thread samples-bottom-up # Show bottom-up call tree (what calls hot functions)
41
44
  profiler-cli thread markers # List markers with aggregated statistics [--list for flat per-marker view]
@@ -45,7 +48,7 @@ profiler-cli thread page-load # Show page load summary (navigation
45
48
  profiler-cli marker info <handle> # Show detailed marker information (e.g., m-1234)
46
49
  profiler-cli marker stack <handle> # Show full stack trace for a marker
47
50
  profiler-cli function expand <handle> # Show full untruncated function name (e.g., f-123)
48
- profiler-cli function info <handle> # Show detailed function information
51
+ profiler-cli function info <handle> # Show detailed function information and category breakdown
49
52
  profiler-cli function annotate <handle> # Show annotated source/assembly with timing data [--mode src|asm|all] [--context 2|file|N] [--symbol-server <url>]
50
53
  profiler-cli zoom push <range> # Push a zoom range (e.g., 2.7,3.1 or ts-g,ts-G or m-158)
51
54
  profiler-cli zoom pop # Pop the most recent zoom range
@@ -57,6 +60,7 @@ profiler-cli filter clear # Remove all filters for current thre
57
60
  profiler-cli sourcemap sources # List bundle sources eligible for a source map (src-N handles)
58
61
  profiler-cli sourcemap apply <path> # Apply a .map file to de-minify JS stacks [--to <src-N>]
59
62
  profiler-cli status # Show session status (selected thread, zoom ranges, filters)
63
+ profiler-cli permalink # Print a profiler.firefox.com URL for the current view [--short]
60
64
  profiler-cli stop # Stop current daemon
61
65
  profiler-cli stop <id> # Stop a specific session
62
66
  profiler-cli stop --all # Stop all sessions
@@ -64,6 +68,25 @@ profiler-cli session list # List all running daemon sessions (*
64
68
  profiler-cli session use <id> # Switch the current session
65
69
  ```
66
70
 
71
+ ### Symbolicating with samply
72
+
73
+ Some profiles are not symbolicated yet when they are saved, for example those
74
+ recorded with `samply record --save-only`, and symbolication as well as the
75
+ assembly view then need a symbol server that can see the local binaries.
76
+ `--with-samply` runs `samply load` in the background for the lifetime of the
77
+ session to provide that server:
78
+
79
+ ```bash
80
+ samply record --save-only -o profile.json ./my-program
81
+ profiler-cli load profile.json --with-samply
82
+ profiler-cli function annotate f-12 --mode asm
83
+ ```
84
+
85
+ samply is resolved from `PROFILER_CLI_SAMPLY_PATH` if set, then `PATH`, then
86
+ `$MOZBUILD_STATE_PATH/samply` (default `~/.mozbuild/samply`), where
87
+ `./mach bootstrap` installs it. The samply process is stopped together with the
88
+ session.
89
+
67
90
  ### Multiple sessions
68
91
 
69
92
  ```bash