Wie man Laravel Nightwatch integriert und seine App wie ein Profi überwacht (Schritt-für-Schritt-Anleitung)
1. Einleitung
Im modernen Laravel-Entwicklungsworkflow sind Monitoring und Observability essentiell, um reibungslose Benutzererfahrungen sicherzustellen und Probleme frühzeitig zu erkennen. Laravel Nightwatch ist ein neues, offizielles Monitoring-Tool, das speziell für Laravel-Anwendungen entwickelt wurde. Es bietet tiefe Einblicke in die Leistung, Fehler, Anfragen, Jobs und mehr Ihrer App — alles über ein schönes, entwicklerorientiertes Dashboard.
In dieser Anleitung lernen Sie Schritt für Schritt, wie Sie Laravel Nightwatch in Ihre Laravel-Anwendung integrieren. Ob Sie ein Solo-Projekt erstellen oder produktionsreife Infrastruktur verwalten, Nightwatch hilft Ihnen beim professionellen Monitoring.
2. Was ist Laravel Nightwatch?
Laravel Nightwatch ist ein offizielles SaaS-Tool aus dem Laravel-Ökosystem, das Ihnen hilft, Anwendungs-Metriken in Echtzeit zu überwachen. Es bietet:
- Exception-Tracking (behandelt und unbehandelt)
- Anfrage-Leistungsstatistiken
- Queue-Job-Metriken
- Echtzeit-Benutzeraktivität
- Nahtlose Laravel-Integration
Stellen Sie es sich als Forge + Telescope + Sentry in einem vor, aber speziell für Laravel gebaut.
3. Voraussetzungen
Stellen Sie vor Beginn Folgendes sicher:
Anforderungen
- Laravel 10 oder höher
- Composer 2+
- PHP 8.1+
- Ein Konto auf nightwatch.laravel.com
Wichtig: Laravel Nightwatch ist nicht kompatibel mit Shared-Hosting-Umgebungen wie Hostinger. Sie sollten eine lokale Umgebung oder einen VPS verwenden (z.B. Laravel Forge, DigitalOcean usw.).
4. Integrationsschritte
Schritt 1: Laravel Nightwatch installieren
Führen Sie Folgendes aus Ihrem Projekt-Root aus:
composer require laravel/nightwatch
Wenn Ihre Composer-Version veraltet ist (z.B. v1.x), aktualisieren Sie sie zuerst:
composer self-update --2
Schritt 2: Token zur .env hinzufügen
Nachdem Sie eine neue App im Nightwatch-Dashboard erstellt haben, erhalten Sie ein Token:
NIGHTWATCH_TOKEN=your-nightwatch-token-here
LOG_CHANNEL=nightwatch
Schritt 3: Agent starten
Um mit dem Senden von Daten zu beginnen:
php artisan nightwatch:agent
Sie sollten sehen:
[INFO] Nightwatch agent initiated: Listening on 127.0.0.1:2407
[INFO] Ingest successful
Schritt 4: Aktivität auslösen
Besuchen Sie Routen, lösen Sie Exceptions aus oder starten Sie Jobs, um Echtzeitdaten im Dashboard zu sehen.
5. Best Practices für Monitoring
- Agent im Hintergrund ausführen: Verwenden Sie Supervisor oder systemd, um den Agenten in der Produktion am Laufen zu halten.
stackLog-Channel verwenden: Um sowohl an Nightwatch als auch an Standard-Laravel-Logs zu protokollieren:
LOG_CHANNEL=stack
Aktualisieren Sie config/logging.php:
'channels' => [
'stack' => [
'driver' => 'stack',
'channels' => ['daily', 'nightwatch'],
],
'nightwatch' => [
'driver' => 'monolog',
'handler' => \Laravel\Nightwatch\Log\NightwatchHandler::class,
],
],
6. Profi-Tipps
- ✅ Verwenden Sie Laravel Forge oder einen VPS, um den Nightwatch-Agent dauerhaft zu betreiben
- 🔄 Automatisieren Sie Test/Agent-Start über Deployment-Hooks
- 🧪 Kombinieren Sie mit Laravels Feature-Tests für Full-Stack-Observability
- 🔐 Committen Sie niemals
.envmit Token in öffentliche Repositories
7. Fazit
Laravel Nightwatch bringt leistungsstarke, erstklassige Observability direkt in Ihre Laravel-Projekte. Mit minimalem Setup erhalten Sie Einblick in die Gesundheit Ihrer Anwendung — ohne externe Error-Tracking- oder Logging-Systeme zu benötigen.
Beginnen Sie heute mit professionellem Monitoring. Ihr zukünftiges Debugging-Ich wird es Ihnen danken.