finds.dev← search

// the find

utgarda/sidekiq-status

★ 989 · Ruby · MIT · updated Jun 2021

an extension to the sidekiq message processing to track your jobs

A Sidekiq middleware gem that records each job's status, progress, and custom data in Redis, so a web request can check whether a background job has finished. It works with plain Sidekiq workers and ActiveJob, and adds a /statuses page to the Sidekiq web UI. This repo now only points to kenaniah/sidekiq-status, where 2.0.0 and later are maintained.

- Tracking is opt-in per worker through the Sidekiq::Status::Worker module (since 0.8.0), so jobs that don't need status pay no Redis cost.

- The progress API (total, at, message, pct_complete) plus store/retrieve covers the common progress-bar and per-job-data cases without much ceremony.

- The sidekiq-status/testing/inline helper stubs a :complete status for inline-run jobs, so tests that check status don't need a live Redis.

- The gemfiles cover Sidekiq 3.x through 5.x, and the ActiveJob integration is a two-line base-class change.

- Everything lives in Redis under a TTL that defaults to 30 minutes. After expiry a lookup returns nil, which looks the same as an unknown job ID, so anything needing history has to be stored elsewhere.

- Last push was June 2021 and the CI config is Travis and GitLab files, so whether the suite passes on current Sidekiq and Ruby is unverified.

- A job that dies mid-run can leave its last written :working status in Redis until the TTL clears it, so polling code has to handle stale state.

- As a pick, the repo itself is a redirect stub. Anyone who lands here gets a README and has to find the maintained fork to install anything.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →