Anzeigen von CodeIgniter-Protokolldateien im Browser

Wie auf jeder anderen Seite ist es jetzt möglich, CodeIgniter-Protokolldateien im Browser zu lesen. Meine süße Güte!

Nachdem ich mich einer großartigen Firma angeschlossen hatte, begann ich, CodeIgniter in meiner täglichen Codierung zu verwenden. Der Tech-Stack des Unternehmens umfasst unter anderem das PHP Framework. Bisher habe ich Laravel verwendet ( und verwende es immer noch ), um einige großartige Apps zu erstellen.

Laravel hat ein großartiges Protokollierungssystem, das einfach und elegant ist. Darüber hinaus gibt es eine Bibliothek zum Anzeigen der Protokolle im Browser. Das Lesen der Protokolle im Browser ist gut für das Debuggen von Anwendungen und Einblicke. Besonders in einer Produktionsumgebung.

Hier bin ich also in der Welt von CodeIgniter und konnte keine entsprechende Bibliothek finden, um meine Protokolle zum Debuggen und für Einblicke zu lesen.

Also nahm ich die Herausforderung an und erstellte mein erstes Open Source-Projekt des Jahres - Codeigniter-Log-Viewer.

Verwendung

Fügen wir es zunächst einer Abhängigkeit hinzu. Wir können das tun, indem wir Folgendes ausführen:

composer require seunmatt/codeigniter-log-viewer

Dann können wir einen CodeIgniter-Anwendungscontroller erstellen, LogViewerController.php :

private $logViewer;
public function __construct() { $this->logViewer = new \CILogViewer\CILogViewer(); //...}
public function index() { echo $this->logViewer->showLogs(); return;}

Wir haben $ logViewer im Konstruktor instanziiert und dann das Ergebnis von showLogs () in der Funktion index () wiedergegeben .

Die showLogs () -Methode von codeigniter-log-viewer analysiert den Inhalt der Protokolldateien in application / logs . Es wird zur Anzeige im Browser zurückgegeben.

Schließlich können wir jede Route unserer Wahl dem oben erstellten Index () zuordnen. Dies kann durch Hinzufügen eines Eintrags zum $ route- Array in application / config / route.php erfolgen:

$route['logs'] = "logViewerController/index";

Jetzt können wir / logs im Browser besuchen und dort alle Protokolldateien anzeigen. Es ist auch möglich, die Protokolldateien zu löschen und herunterzuladen.

Hinweis : Es wird empfohlen, in der Produktionsumgebung eine geschützte Route zu verwenden, um einen allgemeinen öffentlichen Zugriff zu vermeiden.

Wie es funktioniert

Intern hat die Bibliothek den Namen aller im Standardprotokollverzeichnis verfügbaren Protokolldateien in ein Array gelesen und umgekehrt. Wenn in den URL-Abfrageparametern keine Datei angegeben ist, wird die neueste Protokolldatei standardmäßig zur Anzeige verarbeitet.

Bei der Verarbeitung einer Protokolldatei zur Anzeige wird deren Inhalt gelesen und mithilfe von Regex die Protokollstufe sowie die CSS-Klasse und das Symbol jedes Eintrags bestimmt.

Jeder Eintrag wird auch überprüft, um festzustellen , ob es sich um eine neue Protokollzeile oder eine Fortsetzung der vorherigen Zeile handelt ( aufgrund eines Zeilenumbruchzeichens ).

Schließlich werden die Protokolleinträge zu HTML-Inhalten verarbeitet, die dann zur Anzeige an den Browser gesendet werden.

Der vollständige Quellcode ist auf Github verfügbar, wenn Sie damit herumspielen oder / und ihn für die Verwendung in anderen Frameworks anpassen möchten.

Fazit

Jetzt ist es einfacher und schneller, CodeIgniter-Anwendungen zu debuggen - sogar in der Produktion. Verbreiten Sie das Wort an Freunde und Kollegen bei der Arbeit.

Ich möchte Ihre Kommentare ( und Meinungen ) zur Nutzung der Bibliothek im Kommentarbereich erfahren . Vielen Dank!

Besuchen Sie den Github Link