Вселенная Тейлор пополнилась еще одним полезным инструментом - Laravel Pulse. Как мы знаем, эко-система достаточно живая, но не все новинки оказываются долгожителями (Lumen, ау?, где ты). Здесь же перспективы видятся достаточно серьезными.


Пакет предоставляет стандартные данные сервера - использование CPU, памяти, диска (может мониторить несколько серверов). Пространный мониторинг очередей - как ретроспективно, так и в режиме реального времени.

Live-данные о производительности, отслеживание медленных сегментов приложения (jobs, endpoints, sql запросы), мониторинг активных пользователей, "медленные" методы и маршруты, лог исключений и т.п.

Дашборд достаточно гибок, повозволяет поиграться настройками, создать свои собственные "карточки" призводительности - все это на хорошом знакомом Livewire с возможностью глубокой кастомизации. Надо, например, получить запросы, выполняющиеся более 1 сек -

<livewire:pulse.slow-outgoing-requests />

хотите получить представление об использовании кэша:

<livewire:pulse.cache />

Пакте также позволяет записывать (capture) информацию о работе вашего приложения. Предусмотрен даже специальный процесс на сервере, способствующий этому. Не сложно догадаться, что запускается он

php artisan pulse:check

Хотите, чтобы этот процесс автоматически перезапускался - решение известно - Sypervisor с соответствующими настройками конфига. При этом возможна тонкая настройка записываемых событий.


Тем не менее, нельзя не упомянуть о нескольких ложках дегтя. Один из главных недостатков - это ограничение по базе данных, только MySQL (!?). Совершенно не понятный выбор и ограничение для 2023 года! Конечно, не будем забывать, что мы имеем дело с бета-версией и судя по чатам разработчиков к релизу возможно будет поддержка и PostgreSQL.

Бета статус пакета, разумеется ведет и даунгрейду "minimum-stability" - теперь там придется прописать beta, что разработчикам "многопакетных" приложений может не понравиться.

Тем не менее, будем надеяться, что Laravel Pulse станит значимым дополнением к экосистеме Laravel.

Комментарии (0)