Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LogAnalyzer

LogAnalyzer is a high-performance native log viewer and log analyzer for Windows, Linux, and macOS. It searches, filters, follows, and exports multi-gigabyte local text logs without loading the whole file into memory. The C++20 and Qt 6 application combines a virtualized Qt Quick interface with cancellable, memory-mapped, multi-core scanning.

Latest release CI Downloads Windows Linux macOS Qt C++ License

LogAnalyzer desktop application showing severity-colored entries from a local log file

Download and run

  1. Open the latest release and download the asset for your system:

    • Windows x64: LogAnalyzer-2.2.1-windows-x64.zip
    • Linux x86_64: LogAnalyzer-2.2.1-linux-x86_64.AppImage
    • macOS: LogAnalyzer-2.2.1-macos-<architecture>.dmg
  2. Optional but recommended: calculate its digest in PowerShell and compare it with the SHA-256 shown in the release description.

    Get-FileHash .\LogAnalyzer-2.2.1-windows-x64.zip -Algorithm SHA256
  3. On Windows, extract the complete ZIP and run the root-level LogAnalyzer.exe; keep its DLL and runtime folders in place. On Linux, mark the AppImage executable and run it. On macOS, open the DMG and launch the bundled app.

  4. No Qt SDK, compiler, Visual C++ Redistributable, or installer is required.

Each asset is a native build for its named operating system and architecture.

Everyday workflow

  • Open a log with Open log, drag and drop it onto the window, choose it from Recent, or pass its path on the command line.
  • Enter literal text and press Enter or Search. Enable Aa for case-sensitive matching or .* for a regular expression.
  • Toggle any severity chip to include or exclude TRACE, DEBUG, INFO, WARN, ERROR, FATAL, or unclassified lines.
  • Optionally enter inclusive From and To timestamps. Date-only bounds cover the complete selected day; lines without timestamps are excluded while the range is active.
  • Use Line ↑/↓ to reverse the displayed and exported row order without re-sorting or copying the result set.
  • Click a row to inspect and copy its complete displayed text.
  • Enable Follow to jump to the last 2,000 lines and append new data as the file grows.
  • Choose Export to save the currently visible rows as UTF-8 text or CSV.
  • Use Clear to restore the default query, options, severity filters, and unfiltered preview.

The interface remains responsive during open, search, tail indexing, and export operations. Every long-running operation is cancellable.

Keyboard shortcuts

Shortcut Action
Ctrl+O Open a local file
Ctrl+F Focus and select the search field
Enter Run the configured search
Ctrl+Shift+S Export the current view
Esc Cancel active work; otherwise clear search and filters
Arrow keys in the list Move the selected row

Important limits

  • Input is treated as UTF-8 text. Other encodings may display incorrectly.
  • Search results are not capped: every matching row is available in the virtualized list. Memory use therefore grows with the number and size of matches; narrow a query when an all-lines search is unnecessarily broad.
  • Lines longer than 32 KiB are searched in full and truncated only for display/export, with a visible marker.
  • Follow keeps at most 20,000 recent rows in memory and pauses while search results are displayed.
  • Export writes every row in the current view and preserves its ascending or descending line order.
  • Files are processed locally. LogAnalyzer has no telemetry, accounts, uploads, or network service.

See the complete user guide for search examples, follow semantics, CSV fields, troubleshooting, and privacy guidance.

Performance

On the development machine, the Release scanner processed a generated 256 MiB / 3,728,675-line fixture with correctness-checked counts as follows (median of three runs):

Workload Time Throughput
Rare literal 55 ms 4,655 MiB/s
Common literal 36 ms 7,111 MiB/s
Exclude FATAL, empty query 86 ms 2,977 MiB/s
Exclude INFO, empty query 87 ms 2,943 MiB/s
Regular expression 712 ms 360 MiB/s

Results vary with CPU, filesystem cache, antivirus, storage, expression complexity, and log shape. These are reproducible project measurements, not universal speed claims. See performance methodology.

For developers

The codebase is split into a QtCore scanner, an asynchronous application controller, one batched QAbstractListModel, and a virtualized QML presentation layer. Build, test, benchmark, sanitizer, packaging, and release instructions live in the development guide.

Further technical documentation:

License

LogAnalyzer source code is available under the MIT License. Portable packages also include the applicable Qt and MinGW runtime license texts in licenses/.

About

Fast native log viewer for huge files with multi-core search, severity and timestamp filters, follow mode, and portable builds.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages