1.20.0: New Timeline, Minimap, Governor Limits, Call Tree Views, Raw Log Navigation, Performance and More...
Latest
·
17 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
What's Changed
Added
- ⚡ Timeline: A brand new experimental timeline Flame Chart built for massive logs and up to 7X faster. (#446 #251 #92 #564)
- ⚡ Performance: Improved performance to handle huge Apex debug logs.
- Zoom + pan are 7X faster with smoother motion.
- Minimap: Navigate massive logs at a glance with the new minimap overview. (#245 #446)
- Skyline Overview: Density-based visualization shows stack depth and event distribution across the entire timeline. Color-coded categories and logarithmic opacity reveal hotspots instantly.
- Viewport Lens: A window highlights exactly what's visible in the main timeline - both time range and depth. Drag to create zoom selections, resize edges to adjust, or teleport with
Cmd/Ctrl+Click. - Cursor Mirroring: Hover on the minimap to see a guide line on the main timeline.
- Rich Interactions:
- Drag anywhere → draw a new zoom selection
- Drag lens edges → resize the viewport
- Shift+Drag inside lens → pan the viewport
- Cmd/Ctrl+Click → instantly teleport the lens
- Scroll → zoom (vertical) or pan (horizontal)
- Double-click → reset to full timeline view
- Keyboard shortcuts (when hovering minimap): Arrow keys pan,
W/Szoom,Home/Endjump,0resets.
- 📊 Governor Limits Visualization: New metric strip showing governor limit usage over time. (#714)
- Traffic Light Coloring: Instant visual feedback on limit consumption (safe/warning/critical/breach zones).
- Collapsed Mode: Compact heat-style strip showing max usage across all metrics.
- Expanded Mode: Full step chart with individual metric lines (click chevron or
Shift+Clickto toggle). - Smart Tooltips: Hover to see detailed breakdown with top metrics, always-visible core limits (CPU, Heap, SOQL, DML), and usage percentages.
- Tier Classification: Metrics auto-classified by usage - Tier 1 (top 3), Tier 2 (>80%), Tier 3 (others aggregated).
- Synced Navigation: Zoom, pan, and cursor synchronized with main timeline.
- Adaptive Frame Bucketing: Reveals nested frame detail and stack structure as you zoom, automatically adjusting frame granularity to understand complex call hierarchies.
- Dynamic Frame Labels: Labels automatically appear on timeline frames as you zoom and pan, making log scanning and navigation effortless without manually hovering to see event details. (#92)
- Keyboard and Mouse Navigation: Comprehensive interaction controls for the timeline. (#573 #366 #296 #295 #535)
- Selection & Focus:
- Pan & Zoom: (#296)
- Zoom: Scroll wheel (mouse-anchored), or
W/S/+/-keys. - Horizontal Pan:
Alt/Option+Scroll, trackpad swipe,A/Dkeys, or click and drag. - Vertical Pan:
Shift+ScrollorShift+W/Shift+Sto pan through stack depth. - Reset Zoom: Press
Homeor0to reset zoom and fit all content. - Area Zoom:
Alt/Option+Dragto select a time range and instantly zoom to fit it. (#164)
- Zoom: Scroll wheel (mouse-anchored), or
- Measure Range:
Shift+Dragto measure the duration between two points; resize by dragging edges; double-click or click the zoom icon to zoom to the measured range. (#164)Escor click empty space to dismis the range.
- Actions & Shortcuts: (#573 #366)
- Jump to Call Tree: Press
JorCmd/Ctrl+Clickto navigate to the frame in the Call Tree. - Context Menu: Right-click for Go to Source, Copy Name, Copy Details, and Copy Call Stack.
- Copy:
Cmd/Ctrl+Ccopies the selected frame name. - Marker Navigation: Click markers to select; arrow Left/Right to navigate between markers.
- Clear Selection: Press
Escapeto deselect the current frame or marker.
- Jump to Call Tree: Press
- ⏱️ Time Axis Auto-Spacing: Markers intelligently and naturally auto-space as you zoom.
- 🕐 Wall-Clock Time: Toggle between elapsed time and wall-clock time (HH:MM:SS.mmm) on the time axis. Click the clock button in the timeline toolbar to switch modes. Tooltips also show the wall-clock start → end time for each event. (#685)
- 🔍 Search + Highlight: Dims non-matches for fast scanning.
- Timeline Categories: Redesigned timeline categories for clearer, more meaningful event grouping. (#98)
- Apex (Apex code), Automation (Workflow, NBA), Callout, Code Unit, DML, SOQL, System (System, Visualforce), Validation
- 🎨 Themes:
- 18 curated timeline themes plus the default theme has been improved for better contrast and readability.
- Add your own multiple custom themes via Settings -> Apex Log Analyzer -> Timeline -> Custom Themes.
- Fast theme switching via Command Palette: Log: Timeline Theme or Settings -> Apex Log Analyzer -> Timeline -> Active Theme.
- Full support for all original Timeline features including:
- Zoom and pan navigation (mouse + keyboard)
- Search with result highlighting
- Frame tooltips on hover
- Markers for errors, skipped lines, and truncation
- Click to navigate to Call Tree (now on key press of
JorCmd/Ctrl+Click)
- Legacy Support: Toggle the legacy timeline anytime via Settings -> Apex Log Analyzer -> Timeline -> Legacy.
- ⚡ Performance: Improved performance to handle huge Apex debug logs.
- 🌲 Call Tree Views: Detailed Time Order, Aggregated, and Bottom-Up views. (#333)
- Time Order: Chronological call stack for frame-by-frame execution flow.
- Aggregated: Groups repeated calls to surface the highest-impact methods quickly.
- Bottom-Up: Starts from callees and expands to callers, with optional grouping by Namespace or Type.
- Go to Source: Click method names to open source from Time Order, Aggregated, and Bottom-Up when symbols are available.
- Analysis Alignment: Analysis now uses the same bottom-up table model for consistent caller attribution.
- 🎨 Category Coloring: The Name column is colored by event category using the active timeline theme - a color chip by default, or a full background tint + colored text when enabled via Settings → Apex Log Analyzer → colorize Call Tree category names. (#734)
- 📄 Raw Log Navigation: Seamless navigation between raw log files and the log analysis. (#204)
- Show in Raw Log: Right-click timeline or call tree frames → "Show in Log File" to jump to the corresponding line.
- Show in Log Analysis: Click the hover link on raw log lines to navigate back to the log analysis.
- Code Folding: Collapse/expand matching start/end events (METHOD_ENTRY/EXIT, CODE_UNIT, DML, SOQL, etc.).
- Outline, Breadcrumbs & Sticky Scroll: Outline view, breadcrumbs, and sticky scroll in the editor.
- Line Decorations: Duration appears as ghost text at the end of the cursor line (e.g.,
1.23s (self: 45ms)). - Hover Details: Hover near the ghost text to see SOQL/DML counts, row counts, and exception info.
- Total Duration: First line shows total log execution time.
- Syntax Highlighting: Apex debug log files are automatically recognized and syntax highlighted for improved readability.
- 🏷️ Group by Caller Namespace: New grouping option across the Analysis, Bottom-Up, and DML views. Groups rows by the namespace of their direct caller (the immediate parent code unit), making it easy to see cross-package activity. (#604)
- 🎨 SOQL Syntax Highlighting & Pretty-Printing: SOQL queries are now syntax-highlighted and pretty-printed wherever they appear - Database view, Call Tree, Timeline tooltips, and call-stack rows. Keywords, functions, strings, numbers, and bind variables are themed. (#605)
Changed
- 🎯 Call Tree Go To: Go-to links in call tree now navigate to method definition instead of where method was called from. (#632 #200)
- 🔍 Search Navigation:
Shift+Enternavigates to the previous search result; holdEnterto continuously navigate. - ⚡ Search Performance: Up to 10x faster search on large logs. (#627)
- ⚡ Log Parsing: Improved performance. (#552)
- ✨ Duration Formatting: Human-readable duration formatting in tooltips (30000 ms -> 30s and 0.01 ms -> 10 µs). (#671)
- 🎯 Number Precision: Total and Self Time column precision changed to 2 decimal places for improved readability. (#671)
- 🎨 Navigation Bar: Redesigned to better match VS Code’s look and feel. (#694)
New Contributors
- @jjocoulter made their first contribution in #655
- @FishOfPrey made their first contribution in #782
Full Changelog: 1.18.1...1.20.0