Як переглянути файли журналу CodeIgniter у браузері

Як і будь-яка інша сторінка, тепер у браузері є можливість читати файли журналів CodeIgniter. Моє солодке добро!

Я почав використовувати CodeIgniter у своєму щоденному кодуванні, приєднавшись до чудової компанії. Технологічний стек компанії включає в себе PHP Framework, серед іншого. Дотепер я використовував ( і досі використовую ) Laravel для створення чудових програм.

Laravel має чудову систему реєстрації, просту та елегантну. Крім того, існує бібліотека для відображення журналів у браузері. Вміння читати журнали у браузері - це добре для налагодження додатків та розуміння. Особливо у виробничих умовах.

Отже, я перебуваю у світі CodeIgniter і не можу знайти еквівалентну бібліотеку для читання моїх журналів для налагодження та розуміння.

Тож я прийняв виклик і створив свій перший проект року з відкритим кодом - codeigniter-log-viewer.

Використання

Спочатку додамо його до залежності. Ми можемо зробити це, виконавши:

composer require seunmatt/codeigniter-log-viewer

Тоді ми можемо створити контролер програми CodeIgniter, LogViewerController.php :

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

Що ми зробили, це створити екземпляр $ logViewer у конструкторі, а потім повторити результат showLogs () у функції index () .

Метод showLogs () codeigniter -log-viewer проаналізує вміст файлів журналів у програмі / журналах . Він поверне його для відображення у браузері.

Нарешті, ми можемо зіставити будь-який обраний нами шлях із індексом (), який ми створили вище. Це можна зробити, додавши запис до масиву $ route у application / config / routes.php:

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

Тепер ми можемо відвідати / журнали в браузері і побачити всі файли журналів там. Також можна видалити та завантажити файли журналів.

Примітка : Бажано використовувати захищений маршрут у виробничому середовищі, щоб уникнути загального доступу громадськості.

Як це працює

Внутрішньо бібліотека зчитує ім'я всіх файлів журналів, доступних у каталозі журналів за замовчуванням, у масив і повертає його назад. Якщо в параметрах запиту URL-адреси не вказано жодного файлу, останній файл журналу обробляється для відображення за замовчуванням.

Обробка файлу журналу для відображення включає читання його вмісту, використання регулярного виразу для визначення рівня журналу та класу CSS та значка кожного запису.

Кожен запис також перевіряється, чи є це новий рядок журналу чи продовження попереднього рядка ( через символ нового рядка ).

Нарешті, записи журналу обробляються у вміст HTML, який потім надсилається у браузер для відображення.

Повний вихідний код доступний на Github, якщо ви хочете пограти з ним або / та адаптувати його для використання в інших фреймворках.

Висновок

Тепер простіше і швидше налагодити програму CodeIgniter - навіть у виробництві. Розкажіть про це друзям та колегам на роботі.

Я хочу почути про ваш досвід ( і думки ) користування бібліотекою у розділі коментарів. Дякую!

Відвідайте посилання Github