Skip to content

Releases: amzker/loopsentry

v1.1.1 : Per-Core CPU, Grouped HTML Report, Load Tester

08 Mar 19:56

Choose a tag to compare

What's New

  • Per-Core CPU Monitoring
  • Grouped HTML Report
  • Timeline View
  • paginated events
  • Every event gets a stable #ID that never changes regardless of sorting or filtering.
  • New examples

v1.0.0 : HTML Reports, Async Threshold & CLI Overhaul

01 Mar 18:13

Choose a tag to compare

LoopSentry v1.0.0

The first major release: LoopSentry is now a complete asyncio performance analysis toolkit.

What's New

Standalone HTML Reports

  • loopsentry analyze -d logs/ --html generates a zero-dependency, self-contained HTML report

  • Dark premium UI with stat cards, event timeline, sortable/filterable table

  • Expandable detail rows with smart stack traces, captured variables, CPU/memory/GC metrics

  • ▶ View Sample Report

CSV Export

  • loopsentry analyze -d logs/ --csv exports all event data for external analysis
  • Includes CPU%, memory, GC generations, thread count, stack traces, and arguments

Separate Async Threshold

  • New async_threshold parameter — set independent sensitivity for slow async task detection
  • Blocking threshold and async threshold are now fully decoupled

Async Task Traceback & Arguments

  • Stack traces now captured at task creation time (before frames are destroyed)
  • Function arguments captured for async bottleneck events
  • Exception info (type, message, full traceback) recorded if a slow task fails

GC Stats

  • Garbage collector generation counts (Gen0, Gen1, Gen2) captured per event

Improved CLI

  • Removed clean command to prevent accidental log deletion
  • Added --html, --csv, --sort, -o flags
  • TUI now shows Type, CPU%, Memory columns
  • 5 sort modes: time, duration, cpu, memory, type

Example App

  • Complete FastAPI demo app with realistic blocking patterns (sync DB, CPU hashing, sync HTTP, blocking sleep)
  • Load test script that exercises every endpoint

Breaking Changes

  • loopsentry clean command has been removed

Installation

uv add loopsentry

OR

pip install loopsentry