Laravel Telescope ist ein elegantes Debugging- und Monitoring-Tool für Laravel-Anwendungen. Es bietet tiefe Einblicke in Anfragen, Ausnahmen, Abfragen, Jobs und mehr. Dieser Leitfaden führt Sie durch die Installation, Konfiguration und Nutzung von Laravel Telescope, um die Beobachtbarkeit Ihrer Anwendung zu verbessern. Sie können es mit Ihrem VPS installieren.

Voraussetzungen

Bevor Sie Telescope einrichten, stellen Sie sicher, dass Sie die folgenden Voraussetzungen erfüllen:

  • Eine Laravel-Anwendung (Version 6.x oder höher empfohlen)
  • PHP 7.3 oder höher
  • Composer auf Ihrem Rechner installiert

Schritt 1: Installation von Laravel Telescope

Um Laravel Telescope zu installieren, führen Sie den folgenden Befehl über Composer aus:

composer require laravel/telescope

Sobald die Installation abgeschlossen ist, veröffentlichen Sie den Telescope-Service-Provider und die Assets mit:

php artisan telescope:install

Schließlich migrieren Sie die notwendigen Datenbanktabellen:

php artisan migrate

Schritt 2: Telescope konfigurieren

Nach der Installation stellt Telescope eine Konfigurationsdatei zur Verfügung, die sich unter config/telescope.php befindet. Sie können die Einstellungen nach Bedarf anpassen.

Autorisierung

Standardmäßig ist Telescope nur in der lokalen Umgebung zugänglich. Wenn Sie den Zugriff in anderen Umgebungen erlauben wollen, ändern Sie die Gate-Methode in

App\Providers\TelescopeServiceProvider:

use Laravel\Telescope\Telescope;
use Laravel\Telescope\TelescopeApplicationServiceProvider;

class TelescopeServiceProvider extends TelescopeApplicationServiceProvider
{
protected function gate()
{
Gate::define('viewTelescope', function ($user) {
return in_array($user->email, [
'admin@example.com',
]);
});
}
}

Datenspeicherung

Standardmäßig speichert Telescope Protokolle für 24 Stunden. Sie können dies in der Datei config/telescope.php anpassen:

'retain_hours' => 48,

Konfiguration der Route

Das Dashboard von Telescope ist über /telescope erreichbar. Wenn Sie diesen Pfad anpassen möchten, aktualisieren Sie Ihre Datei config/telescope.php:

'path' => 'monitoring',

Nun ist Telescope unter /monitoring statt unter /telescope verfügbar.

Schritt 3: Telescope verwenden

Nach der Konfiguration starten Sie Ihre Laravel-Anwendung und besuchen Sie yourdomain.com/telescope (oder den von Ihnen festgelegten Pfad). Sie werden sehen:

  • Requests: Überwacht eingehende Anfragen und deren Antwortzeiten.
  • Ausnahmen: Listet alle Fehler und Stack Traces auf.
  • Abfragen: Zeigt ausgeführte SQL-Abfragen an.
  • Aufträge: Überwacht Aufträge in der Warteschlange und deren Status.
  • Ereignisse: Protokolliert Laravel-Ereignisse.

Schritt 4: Einsatz von Telescope in der Produktion

Während Telescope in der Entwicklung nützlich ist, wird es für die Produktion aufgrund des Leistungs-Overheads nicht empfohlen. Wenn Sie es jedoch in der Produktion einsetzen müssen, können Sie die Umgebungsvariable TELESCOPE_ENABLED verwenden:

TELESCOPE_ENABLED=true

Zusätzlich sollten Sie einen Befehl zum regelmäßigen Löschen der Protokolle einplanen, um ein übermäßiges Wachstum der Datenbank zu verhindern:

php artisan telescope:prune --hours=24

Sie können dies automatisieren, indem Sie eine geplante Aufgabe in app/Console/Kernel.php hinzufügen:

$schedule->command('telescope:prune --hours=24')->daily();

Schlussfolgerung

Laravel Telescope ist ein leistungsfähiges Tool, das das Debugging und die Überwachung in Laravel-Anwendungen verbessert. Wenn Sie es richtig installieren und konfigurieren, erhalten Sie wertvolle Einblicke in die Leistung Ihrer Anwendung, Abfragen, Ausnahmen und Hintergrundjobs.