Laravel

Statusseite und Uptime-Monitoring für Laravel-Anwendungen

Laravel-Routes, Queues, Scheduler und Horizon überwachen. Custom-Domain-Statusseite mit einem CNAME, oder eigene über unsere API.

Drei Wege für eine Statusseite für Laravel

Wähle die Kontrolltiefe — kein Code, Low-Code oder Full Headless.

Gehostet

Laravel-Endpoint hinzufügen, CNAME auf status.deinedomain.com zeigen, fertig. In 5 Minuten.

Headless

Public API nutzen, eigene UI direkt in der Laravel-App bauen. Volle Kontrolle über Design und Branding.

API ansehen

Eingebettete Badges

SVG-Uptime- und -Status-Badges in README oder Landing Page einbauen. Aktualisiert sich alle 5 Minuten.

Diesen Health-Endpoint in deine Laravel-App einfügen

Kopieren, einfügen, PulseAPI auf die URL richten. 200 gesund, 503 degradiert.

routes/web.php
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Redis;

Route::get('/health', function () {
    $checks = [];
    try {
        DB::select('select 1');
        $checks['database'] = 'ok';
    } catch (\Throwable $e) {
        $checks['database'] = 'fail';
    }
    try {
        Redis::ping();
        $checks['cache'] = 'ok';
    } catch (\Throwable $e) {
        $checks['cache'] = 'fail';
    }
    $healthy = collect($checks)->every(fn ($v) => $v === 'ok');
    return response()->json(
        ['status' => $healthy ? 'healthy' : 'degraded', ...$checks],
        $healthy ? 200 : 503
    );
})->withoutMiddleware([
    \App\Http\Middleware\VerifyCsrfToken::class,
]);

CSRF und Auth-Middleware überspringen. 503 bei Teilausfall. Vom Rate-Limit ausnehmen, wenn strikt.

Was in Laravel-Apps kaputt geht — und wie man es fängt

Horizon-Queues im Rückstand

Backlog in einer Queue killt Async-UX. Queue-Depth-Assertions fangen das früh.

Scheduler-Jobs, die stoppen

Festhängender Cron lässt Rechnungen ungesendet. Heartbeat-Endpoint + Assert auf last-run.

Cache-/Session-Driver-Fehler

Redis-Hiccups verursachen intermittierende 500er. Cache-Check in /health zeigt das.

Headless-Ansatz

Statusseite gefällt dir nicht? Bau sie in Laravel selbst.

Unsere API liefert dieselben Daten wie unsere gehostete UI. Volle OpenAPI-Spec unter api.pulseapi.tech/docs.

Ein Laravel-Controller, der unsere Status-API abruft und rendert.
use Illuminate\Support\Facades\Http;

class StatusController extends Controller
{
    public function index()
    {
        $data = Http::timeout(5)
            ->get('https://api.pulseapi.tech/status/acme')
            ->json();
        return view('status', ['data' => $data]);
    }
}

Laravel-Monitoring — FAQ

Funktioniert mit Laravel Forge, Vapor oder self-hosted?

Alle — PulseAPI braucht nur eine öffentliche URL.

Kann ich Horizon überwachen?

Ja. Endpoint, der Horizon::status() und Queue-Depths liest. JSON-Path-Assertions auf spezifische Queues.

Funktioniert mit Laravel-Maintenance-Mode?

Ja. 503 von `php artisan down` triggert Incident. Wartungsfenster markieren, um Alerts zu unterdrücken.

Kann ich die Statusseite in Laravel rendern?

Ja. API aus einem Controller aufrufen, an eine Blade-View weitergeben.

Deine Laravel-App in 5 Minuten überwachen

Kostenloser Tarif. Keine Kreditkarte. Endpoint hinzufügen, Alerts erhalten.