Laravel Pulse
Laravel Pulse — это встроенный экран мониторинга производительности iEXExchanger.
Он помогает смотреть нагрузку на backend-часть проекта, медленные запросы, ошибки, очереди, кеш, фоновые задачи, внешние HTTP-запросы и общее состояние сервера.
Pulse открывается на техническом домене админки:
https://app.ваш_домен/pulseДля чего нужен Laravel Pulse
Laravel Pulse используется для технического контроля работы системы.
С его помощью можно смотреть:
состояние сервера;
активность пользователей и запросов;
очереди и фоновые задачи;
работу кеша;
медленные SQL-запросы;
ошибки приложения;
медленные HTTP-запросы;
медленные задачи в очередях;
медленные внешние запросы к API, мерчантам, выплатам и другим сервисам.
Pulse полезен, когда нужно понять, почему сайт или админка работают медленно, где возникает нагрузка и какие процессы требуют внимания.
Где находится Laravel Pulse
В панели управления откройте: «Утилиты» — «Horizon и Pulse» — «Laravel Pulse»

Прямой адрес:

Если пункт меню не отображается, проверьте права группы пользователя.
Права доступа
Доступ к Laravel Pulse разрешается только пользователям панели управления, у которых есть право:
Это право находится в настройках групп пользователей.
Рекомендуется выдавать доступ к Pulse только:
владельцу проекта;
техническому администратору;
ответственному специалисту.
Обычным менеджерам этот раздел обычно не нужен, потому что в Pulse отображается техническая информация о работе системы.
Включение Laravel Pulse
По умолчанию Laravel Pulse может быть выключен.
Чтобы включить его, нужно изменить настройки backend-проекта на сервере.
Перейдите в директорию backend-проекта:
Откройте файл .env и добавьте или измените параметр:
Если такой строки нет, добавьте её в конец файла.
После изменения .env очистите кеш конфигурации:
Если на сервере используется PHP 8.4 через FastPanel, команда может выглядеть так:
Проверка таблиц Pulse
В iEXExchanger таблицы Pulse уже предусмотрены в структуре системы.
Но если проект устанавливался или обновлялся вручную, рекомендуется выполнить миграции:
Для PHP 8.4:
Pulse использует таблицы:
Если этих таблиц нет, экран Pulse не сможет корректно собирать и показывать данные.
Настройка хранения данных
По умолчанию Pulse хранит данные в базе данных.
Для большинства проектов достаточно такой настройки:
Что означает:
PULSE_ENABLED=true
Включает сбор данных Pulse
PULSE_STORAGE_DRIVER=database
Хранит данные в базе данных
PULSE_INGEST_DRIVER=storage
Записывает данные напрямую в хранилище
PULSE_STORAGE_KEEP="7 days"
Хранит собранную статистику 7 дней
PULSE_INGEST_KEEP="7 days"
Хранит входящие данные 7 дней
Рекомендуемые настройки для обычного проекта
Добавьте в .env:
После этого выполните:
Затем откройте:
Если используется Redis ingest
Обычно Redis ingest не требуется для небольших и средних проектов.
Но если проект высоконагруженный и нужно разгрузить обычные web-запросы, можно использовать Redis ingest:
В этом режиме необходимо запустить отдельный процесс Pulse:
Для production такой процесс нужно запускать через Supervisor, чтобы он автоматически перезапускался при сбоях.
Пример команды для Supervisor:
Снимок состояния сервера
В Pulse есть команда:
Она делает снимок текущего состояния сервера для блока server monitoring.
Команду можно запускать вручную:
Если нужно регулярное обновление серверных показателей, проверьте, что на сервере работает Laravel Scheduler через CRON.
Что отображается в Pulse
В вашей системе экран Pulse содержит несколько блоков:
Сервер;
Использование системы;
Очереди;
Кеш;
Медленные SQL-запросы;
Ошибки;
Медленные запросы;
Медленные задачи;
Медленные внешние запросы.
Очереди
Блок «Очереди» показывает работу очередей и фоновых задач.
Он полезен, если в системе используются:
уведомления;
Telegram-уведомления;
e-mail-уведомления;
парсеры;
выплаты;
фоновые проверки;
отложенные задачи.
Если очередь растёт и не уменьшается, нужно дополнительно проверить Laravel Horizon, Redis и Supervisor.
Медленные внешние запросы
Блок «Медленные внешние запросы» показывает медленные обращения к внешним сервисам.
Это полезно при работе с:
мерчантами;
автовыплатами;
API курсов;
внешними парсерами;
Telegram;
почтовыми сервисами;
другими интеграциями.
Если внешний сервис отвечает медленно, проблема может быть не в сервере iEXExchanger, а во внешней стороне.
Настройка порогов медленных операций
Если нужно изменить чувствительность Pulse, можно добавить в .env:
Значения указываются в миллисекундах.
Примеры:
Если поставить слишком маленькое значение, Pulse будет показывать слишком много событий.
Для production обычно достаточно:
После изменения параметров выполните:
Как отключить Laravel Pulse
Если Pulse больше не нужен, его можно отключить.
В .env укажите:
Затем выполните:
После этого Pulse перестанет собирать новые данные.
Как очистить данные Pulse
Если нужно удалить старую статистику Pulse, выполните:
Команда очищает накопленные данные Pulse из хранилища.
Используйте очистку осторожно. После выполнения команды старая статистика в Pulse пропадёт.
Частые проблемы
Рекомендации
Для обычного production-проекта достаточно включить:
Не выдавайте доступ к Pulse всем менеджерам. Этот раздел предназначен для технического контроля системы.
Если проект высоконагруженный, можно отдельно настроить Redis ingest и запуск pulse:work через Supervisor. Для большинства обменников это не требуется на старте.
Коротко
Laravel Pulse — это экран мониторинга производительности iEXExchanger.
Он помогает видеть медленные запросы, ошибки, очереди, кеш, внешние API-запросы и состояние сервера.
Чтобы включить Pulse, добавьте в .env:
Затем выполните:
Pulse открывается здесь:
В панели управления: «Утилиты» — «Horizon и Pulse» — «Laravel Pulse»
Доступ должен быть только у пользователей с правом:
Последнее обновление
Это было полезно?