Bundle vs. Laravel’s ServiceProvider).routes/web.php) must map /health* endpoints to custom controllers or middleware.ContainerAware) may need adapters.config/healthcheck.php or environment variables./healthz response times.Checker base class?php artisan down or laravel-debugbar health features?/healthz) exposed to public traffic, or restricted to internal probes?StartupChecker integrate with Laravel’s service provider bootstrapping?php artisan down) with this bundle’s logic.symfony/console and symfony/http-kernel as Laravel packages to reduce framework friction./health/liveness and /health/readiness as probe endpoints./healthz (extend JSON output to include prometheus_metrics).--ignore-platform-reqs if needed).CheckerRegistry)./health* routes to Laravel controllers that delegate to bundle logic.config/healthcheck.php./healthz to internal IPs./healthz to include Prometheus-compatible metrics.Monolog) for audit trails.symfony/http-foundation v6.x for request/response compatibility.Bundle usage; prefer standalone components (e.g., symfony/process for external checks).DB facade instead of Symfony’s Doctrine for DB connectivity checks.HealthCheckServiceProvider to register bundle services./health* endpoints.HealthCheckInterface.class DatabaseCheck implements HealthCheckInterface {
public function check(): bool { return DB::connection()->getPdo(); }
}
GET /healthz returns 503 on failure)./health/liveness./healthz in production with alerts for failures.config/caching or environment variables for dynamic configs./healthz return 503?").
storage/logs/healthcheck.log.debugbar to inspect check outputs./healthz responses.
Symfony\Component\Process\Process with timeout)./health/readiness accurately reflects app state (e.g., queue backlog)./health/liveness to detect crashes (e.g., PHP fatal errors).| Failure Scenario | Impact | Mitigation |
|---|---|---|
| Custom check throws exception | /healthz returns 500 instead of 503 |
Wrap checks in try-catch and log errors. |
| Database check fails | App marked "unhealthy" to Kubernetes | Implement circuit breakers for transient failures. |
| External API check hangs | /healthz timeout |
Set timeout (e.g., 2s) for external checks. |
| Configuration misalignment | Checks disabled or misconfigured | Use Laravel’s config:cache to validate configs. |
| Symfony component version conflict | Bundle fails to load | Pin Symfony components to compatible versions. |
HEALTHCHECK.md in the repo with Laravel examples.Bundle and Checker patterns.
Mockery or PestPHP to test checks in isolation.healthcheck stage to deployment pipelines.How can I help you explore Laravel packages today?