Skip to content

Conversation

@vishaltps
Copy link
Owner

Summary

  • Add worker monitoring with health status indicators (healthy, stale, dead)
  • Add dead process detection and pruning functionality
  • Add job details page with timeline, timing breakdown, and error display
  • Add queue details page with job listing
  • Complete all high-priority roadmap features

New Features

Worker Monitoring

  • Dedicated /workers page showing all Solid Queue processes
  • Health status based on heartbeat (healthy <5min, stale 5-10min, dead >10min)
  • Shows queues and jobs being processed by each worker
  • Summary cards with process counts by status

Dead Process Detection

  • Visual highlighting for stale and dead processes
  • "Prune Dead Processes" button to clean up defunct records

Job Details Page

  • Full job timeline (created → scheduled → started → finished)
  • Timing breakdown with wait time and execution duration
  • Complete error details with backtrace for failed jobs
  • Quick retry/discard actions

Queue Details Page

  • View all jobs in a specific queue
  • Pause/resume controls with status indicator

Test Plan

  • Verify worker monitoring page displays process information
  • Test dead process pruning functionality
  • Verify job details page shows correct timeline and error info
  • Test queue details page with pause/resume controls

Features:
- Worker monitoring with health status indicators
- Dead process detection and pruning
- Job details page with timeline and error display
- Queue details page with job listing

All high-priority roadmap features are now complete.
@vishaltps vishaltps force-pushed the feature/worker-monitoring branch from 084b48e to 0bfcff7 Compare January 23, 2026 16:31
- Use range syntax for where clauses (Rails/WhereRange)
- Replace case-when with hash lookup (Style/HashLikeCase)
- Extract begin block logic to avoid return (Lint/NoReturnInBeginEndBlocks)
- Simplify timing_unavailable_reason method (Lint/EmptyElse)
- Add job_details_presenter.rb to ClassLength exclude list
- Configure ParameterLists max to 7
- Use blank? instead of present? (Rails/Blank)
- Use single quotes for non-interpolated string (Style/StringLiterals)
- Use %w for word array in spec (Style/WordArray)
- Use numeric literal with underscores (Style/NumericLiterals)
- Extract calculate_queue_counts method to reduce AbcSize
- Increase RSpec/MultipleMemoizedHelpers max to 10
- Add Worker Monitoring feature documentation
- Add Job Details Page feature documentation
- Add Queue Details Page feature documentation
- Add new screenshots (workers.png, queues.png, failed-jobs.png)
- Update gem version to 1.0
- Update Usage section with Workers view
- Enhance Use Cases with worker health and incident response
@vishaltps vishaltps merged commit a55704e into main Jan 23, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants