Skip to content
| Marketplace
Sign in
Visual Studio Code>Visualization>Unreal Log AnalyzerNew to Visual Studio Code? Get it now.
Unreal Log Analyzer

Unreal Log Analyzer

TheDxr

| (0) | Free
Analyze large Unreal Engine .log files with streaming parse, virtual scrolling, category/level filtering and search. Handles multi-GB logs.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Unreal Log Analyzer (VSCode Extension)

Analyze large Unreal Engine .log files directly inside VSCode, with streaming parse, virtual scrolling, category/level filtering and search. Designed to stay responsive on multi-GB logs.

How it works

The heavy lifting runs in the extension host (Node.js), not the webview:

  • Streaming read — fs.createReadStream reads the file from disk in 4 MB buffers. The whole file is never held as a single string, so it sidesteps the JS engine's max-string-length limit and handles files far larger than RAM could hold as one string.
  • Streaming incremental parser — lines are parsed chunk-by-chunk with line-boundary buffering and log-category interning. Multi-byte UTF-8 characters that straddle a chunk boundary are decoded correctly.
  • Batched delivery — parsed entries are posted to the webview in batches so the view starts rendering before the file finishes loading.
  • Variable-height virtual scrolling — the webview mounts only the rows that intersect the viewport (prefix-sum offsets + binary search), keeping the live DOM node count in the dozens regardless of total entry count.

Usage

  • Command Palette → Unreal Log: Analyze Log File... and pick a file, or
  • Right-click a .log / .txt file in the Explorer → Unreal Log: Analyze Current File, or
  • Open a log file in the editor and run Unreal Log: Analyze Current File.

In the viewer:

  • Filter by severity (Display / Warning / Error) via the toggles.
  • Filter by category via the Categories ▾ panel.
  • Search with substring or regex (toggle Regex, Case). Ctrl/Cmd+F focuses the search box.
  • Copy filtered copies the currently visible (filtered) entries.
  • Double-click a row to open the raw file at that source line.

Settings

  • unrealLogAnalyzer.chunkLines (default 50000) — entries shipped to the view per batch during loading.

Project layout

unreal-log-analyzer-vscode/
├── package.json          # extension manifest (commands, menus, activation)
├── extension.js          # host: streaming disk read + parse, webview wiring
├── media/
│   ├── viewer.js         # webview: virtual scroll + filter + search
│   └── viewer.css        # webview styling (uses VSCode theme variables)
├── scripts/
│   └── build-vsix.py     # package the extension into a .vsix
├── tests/
│   ├── host-test.js      # host streaming-parse integration test
│   └── utf8-test.js      # UTF-8 chunk-boundary safety test
└── README.md

Build & install

This is the source of truth for the extension. The installed copy lives in ~/.vscode/extensions/ and is produced from here:

# 1. Package into a .vsix (no node/vsce toolchain needed)
python scripts/build-vsix.py

# 2. Install (or upgrade) into VSCode
code --install-extension unreal-log-analyzer-1.0.0.vsix --force

# 3. Reload VSCode: Command Palette -> "Developer: Reload Window"

Note: a hand-placed folder under ~/.vscode/extensions is not reliably auto-discovered by recent VSCode versions. Always install via the .vsix produced above.

Tests

# Host-side streaming parse against a real log file
node tests/host-test.js <path-to-large.log>

# UTF-8 multi-byte chunk-boundary safety (generates its own fixture)
node tests/utf8-test.js

Install (manual fallback)

If you choose to drop this folder directly into ~/.vscode/extensions/, reload VSCode (Developer: Reload Window). The .vsix route above is preferred.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft