tanwencn/supervisor
Laravel integration for Supervisor process management. Configure, run, and monitor background workers and daemons, restart queue consumers, and keep long-running processes healthy with simple, framework-friendly tooling from tanwencn/supervisor. Ideal for production queue and worker supervision.
What the package appears to be. A small Laravel service-provider package (Chinese-language README) whose stated purpose is to "conveniently output any behavior record you want to monitor," intended to feed Supervisor-managed processes (queue workers, scheduled jobs) with structured, observable output. The value surface is narrow: a config file, a facade/helper, and a log/emit path — not a Supervisor control-plane integration (no RPC to supervisorctl, no process lifecycle management).
Architecture fit. Reasonable in shape for a Laravel 8-era monolith running queue:work under Supervisor: package discovery registers a provider, config is publishable, and calls are made from job/command code. The problem is architectural leverage. The stated capability — emit a structured line about a behavior you care about — is on the order of 30–50 lines of in-house code over Monolog. Introducing a third-party dependency into the boot path of every worker to save that effort is a poor trade, particularly when the dependency is unmaintained.
Integration feasibility. Technically trivial. composer require, auto-discovery, publish config, add calls. A credible spike is under one day, most of which is reading the vendor source because documentation is thin and non-English. The real feasibility question is not "can we wire it" but "will it survive our next framework upgrade."
Technical risk — high, concentrated in supply chain and longevity.
Key questions to resolve before any code is written.
composer.json constraints: Laravel and PHP version bounds, and does it conflict with existing logging channels?Stack fit. Only a fit for Laravel applications already running workers under Supervisor and lacking structured worker-level observability. Where Horizon, Telescope, or an existing APM/structured-logging pipeline is in place, this package is redundant and should be rejected on overlap grounds alone.
Migration path. There is no migration — this is a greenfield add with a designed exit. Adopt it behind a thin internal interface (e.g., WorkerEventReporter) so the vendor package is referenced in exactly one adapter class. That makes the replacement decision a one-file change rather than a codebase sweep, and it is the single most important engineering constraint on this integration.
Compatibility. Verify against our actual matrix before committing: pin the exact version, install in a scratch Laravel skeleton on our target PHP minor, boot a worker, and confirm no deprecation notices or provider conflicts. Explicitly test coexistence with our current Monolog channel configuration and, if applicable, Octane. Treat any framework-version incompatibility as a hard stop rather than something to patch around.
Sequencing.
Maintenance. Assume we own it from day one. No upstream fixes, no compatibility patches, no CVE response. Budget: internal fork maintenance plus a recurring review at each Laravel/PHP upgrade. Composer-locked and forked, it is stable but frozen; unforked, it is a latent upgrade blocker.
Support. No vendor, no community, negligible issue activity, Chinese-only documentation. Support is entirely internal tribal knowledge — a bus factor of one unless the adapter and a short README are written down. Onboarding cost is low in hours but high in friction: engineers will read vendor source rather than docs.
Scaling. The scaling dimension is log volume, not CPU. Per-job behavior records multiply by job throughput; on a high-throughput worker fleet this can meaningfully increase log ingestion cost and disk pressure on worker nodes. Requires sampling policy, retention limits, and log rotation configured at the Supervisor level. The second-order risk is Supervisor's stdout pipe: if the capture pipe fills and is not drained, the worker blocks — a real and unpleasant failure mode that scales with verbosity.
Failure modes.
Ramp-up. Half a day for an engineer familiar with Laravel packages and Supervisor. The constraint is not skill but confidence: absent tests and docs, the team must validate behavior empirically. That validation cost exceeds the cost of writing the equivalent functionality ourselves.
Recommendation. Do not adopt as a strategic dependency. The capability is small, the maintenance signal is poor, and the placement — worker boot path — makes the downside asymmetric. Reproduce the behavior in-house behind an internal interface, or fork and vendor it only if the source audit reveals non-trivial logic worth preserving. Opportunity score of 2.67 is consistent with this read: low adoption, thin differentiation, no ecosystem.
How can I help you explore Laravel packages today?