Прискорити налагодження Laravel за допомогою Telescope

Моніторинг та налагодження є критично важливими для підтримки надійної роботи додатків Laravel, незалежно від того, чи створюєте ви динамічний веб-додаток, чи керуєте складними бекенд-системами. Laravel Telescope, елегантний інструмент для спостереження, пропонує глибоке розуміння запитів, винятків та іншого, допомагаючи розробникам з легкістю оптимізувати продуктивність. Розміщений на високопродуктивних VPS або виділених серверах ava.hosting, Telescope стає потужним союзником для забезпечення безперебійної роботи вашого додатку. Наприклад, якщо ваш додаток для електронної комерції повільно виконує запити, Telescope може за лічені секунди визначити неефективні запити до бази даних. У цьому посібнику ви дізнаєтеся, як встановити, налаштувати та використовувати Telescope для підвищення продуктивності вашого додатку на Laravel.

Необхідні умови

Перед зануренням переконайтеся, що у вас є:

  • Додаток на Laravel (рекомендується версія 6.x або вище).

  • PHP 7.3 або новішої версії.

  • Composer, встановлений на вашому сервері ava.hosting або локальній машині.

Крок 1: Встановлення Laravel Telescope

Щоб встановити Laravel Telescope, виконайте наступну команду через Composer:

composer require laravel/telescope

Після завершення інсталяції опублікуйте постачальника послуг Telescope і використовувані ресурси:

php artisan telescope:install

Нарешті, перенесіть необхідні таблиці бази даних:

php artisan migrate

Крок 2: Налаштування Telescope

Після встановлення Telescope надає конфігураційний файл, розташований за адресою config/telescope.php. Ви можете налаштувати параметри за потреби.

Авторизація

За замовчуванням Telescope доступний лише в середовищі local. Якщо ви хочете дозволити доступ в інших середовищах, змініть метод gate у App\Providers\TelescopeServiceProvider:

use Laravel\Telescope\Telescope;
use Laravel\Telescope\TelescopeApplicationServiceProvider;

class TelescopeServiceProvider extends TelescopeApplicationServiceProvider
{
protected function gate()
{
Gate::define('viewTelescope', function ($user) {
return in_array($user->email, [
'admin@example.com',
]);
});
}
}

Зберігання даних

За замовчуванням Telescope зберігає журнали протягом 24 годин. Ви можете налаштувати це у файлі config/telescope.php:

'retain_hours' => 48,

Конфігурація маршруту

Інформаційна панель телескопа доступна за адресою /telescope. Якщо ви хочете змінити цей шлях, оновіть файл config/telescope.php:

'path' => 'monitoring',

Тепер Telescope буде доступний за адресою /monitoring замість /telescope.

Крок 3: Використання Telescope

Після налаштування запустіть ваш додаток Laravel і перейдіть за адресою yourdomain.com/telescope (або за вашим власним шляхом). Ви побачите:

  • Запити: Відстежує вхідні запити та час відповіді на них.
  • Винятки: Показує всі помилки і трасування стека.
  • Запити: Показує виконані SQL-запити.
  • Завдання: Відстежує завдання в черзі та їхні статуси.
  • Події: Журнал подій Laravel.

Крок 4: Розгортання Telescope у виробництві

Хоча Telescope корисний у розробці, він не рекомендується для виробництва через накладні витрати на продуктивність. Однак, якщо вам потрібно розгорнути його у виробництві, ви можете використати змінну середовища TELESCOPE_ENABLED:

TELESCOPE_ENABLED=true

Крім того, заплануйте команду для періодичного очищення журналів, щоб запобігти надмірному зростанню бази даних:

php artisan telescope:prune --hours=24

Ви можете автоматизувати це, додавши завдання за розкладом у app/Console/Kernel.php:

$schedule->command('telescope:prune --hours=24')->daily();

Висновок

Laravel Telescope трансформує налагодження та моніторинг, забезпечуючи неперевершену видимість продуктивності вашого додатку на надійних VPS або виділених серверах ava.hosting. Від точного визначення повільних запитів у веб-додатку до відстеження збоїв завдань у системі черг, Telescope дає розробникам можливість ефективно оптимізувати роботу. Наприклад, ви можете використовувати Telescope для налагодження повільного процесу оформлення замовлення на вашому сайті електронної комерції або для моніторингу запитів API для платформи SaaS. Виконуючи ці кроки та використовуючи надійну інфраструктуру ava.hosting, ви можете використовувати ідеї Telescope для створення швидших і надійніших додатків Laravel з легкістю.