Перейти к основному содержимому

Поддержка и эксплуатация

Обязательные процессы

В production должны работать:

  • web server/PHP-FPM или аналогичный runtime;
  • queue worker;
  • cron для php artisan schedule:run;
  • доступ к MySQL;
  • доступ к внешнему WP URL;
  • корректные secrets в env.

Cron

Добавить системный cron:

* * * * * cd /path/to/systematika-laravel-site && php artisan schedule:run >> /dev/null 2>&1

Laravel scheduler сам запустит нужные команды по расписанию.

Queue worker

Минимально:

php artisan queue:work --tries=3

В production лучше supervisor/systemd.

Логи и таблицы для мониторинга

Что смотретьЗачем
storage/logs/laravel.logОшибки приложения/jobs
failed_jobsУпавшие jobs
jobsЗастрявшая очередь
sessionsРост session table
cache, cache_locksРост database cache
landing_page_cache_entriesСостояние page cache
settingsSpatie settings

Регламентные проверки

Ежедневно/по мониторингу:

  • нет ли новых failed jobs;
  • не растёт ли бесконтрольно jobs;
  • выполняются ли status/tariff transitions;
  • работает ли WP hook;
  • не сломался ли source WP URL;
  • актуален ли page cache.

Page cache troubleshooting

Если proxy page показывает старый контент:

  1. Проверить active LandingProxyPage.
  2. Проверить from_path и to_path.
  3. Проверить доступность WP URL.
  4. Проверить queue worker.
  5. Проверить failed_jobs.
  6. Проверить logs jobs.
  7. Сделать запрос с X-FORCE-UPDATE.
  8. Проверить WEBSERVER_URL.
  9. Проверить WP_URL.
  10. Проверить redirects.

Status/tariff troubleshooting

Если продукт имеет неправильный статус или тариф:

  1. Проверить product_offerings.status_id.
  2. Проверить product_offering_statuses.
  3. Проверить product_offering_status_movements.
  4. Проверить status_movement_start_date.
  5. Проверить product_offerings.tariff_id.
  6. Проверить tariff_movements.
  7. Проверить tariff_movement_start_date.
  8. Проверить, выполнялся ли scheduler.
  9. Запустить rebuild status при необходимости.

Router commands

Команды router:get-pages и router:set-pages работают с внешним .htaccess, путь берётся из ROOT_HTACCESS.

Они меняют секцию:

# BEGIN ROUTER - PROXY
...
# END ROUTER - PROXY

Перед использованием убедитесь, что ROOT_HTACCESS указывает на правильный файл.