Недавно у меня была возможность обсудить внедрение Inspector командой разработчиков из Бразилии. В то время они использовали NewRelic для мониторинга своих приложений, но обнаружили, что он несовместим с Laravel Octane.
С момента выпуска Laravel Octane я тщательно изучал его внутреннюю динамику, чтобы убедиться, что пакет Inspector Laravel продолжает работать в обычном режиме. Из-за его характеристик я всегда подозревал, что Octane может вызвать много головной боли у «инфраструктурно-ориентированных» платформ мониторинга.
Позвольте мне рассказать вам некоторые технические подробности.
Laravel Octane — это высокопроизводительный сервер приложений для Laravel, разработанный для значительного повышения производительности приложений Laravel. Он был представлен в Laravel 8.x и обеспечивает возможность обслуживания приложений Laravel с использованием высокопроизводительных серверов приложений, таких как Swoole и RoadRunner.
Как сказано в официальной документации:
Octane загружает ваше приложение один раз, сохраняет его в памяти, а затем передает ему запросы на сверхзвуковой скорости.
Ваше приложение Laravel выполняется внутри длительного процесса, что может создать проблемы для агентов мониторинга, установленных на вашем компьютере, чтобы узнать, что происходит внутри него.
Это прекрасный пример, позволяющий понять, почему Inspector «создан для разработчиков».
Чтобы подключить ваше приложение к Inspector, вам нужен только пакет Laravel. Вам не нужно никакого взаимодействия с базовой инфраструктурой. Неважно, как работает ваше приложение, Inspector интегрирован с вашей платформой, а не с сервером.
Насколько это просто?
После установки пакета вам следует подключить специализированное промежуточное программное обеспечение Octane к маршрутам приложения:
use \Inspector\Laravel\Middleware\InspectorOctaneMiddleware; return Application::configure(basePath: dirname(__DIR__)) ->withRouting( // routes ) ->withMiddleware(function (Middleware $middleware) { // Append the middleware $middleware->appendToGroup('web', InspectorOctaneMiddleware::class) ->appendToGroup('api', InspectorOctaneMiddleware::class); }) ->withExceptions(function (Exceptions $exceptions) { // })->create();
/** * The application's route middleware groups. * * @var array */ protected $middlewareGroups = [ 'web' => [ ..., //\Inspector\Laravel\Middleware\WebRequestMonitoring::class, \Inspector\Laravel\Middleware\InspectorOctaneMiddleware::class, ], 'api' => [ ..., //\Inspector\Laravel\Middleware\WebRequestMonitoring::class, \Inspector\Laravel\Middleware\InspectorOctaneMiddleware::class, ], ]
Вот и все.
Ваше приложение будет продолжать отслеживаться в обычном режиме.
Команда бразильских разработчиков еще глубже углубилась в мотивы, которые побудили их искать действительные альтернативы NewRelic.
Они хотели отслеживать и другие внутренние приложения. Приложения, которые менее критичны, но для которых компании будут полезны данные мониторинга в реальном времени.
Проблема заключалась в сложности заставить NewRelic работать с другими приложениями, и еще более проблематичным было значительное увеличение затрат.
Затраты на мониторинг других хостов, затраты на совместное использование среды мониторинга с другими пользователями, а также сложность настройки и использования платформы.
Для меня это была показательная дискуссия. Я никогда не слышал всех этих подробностей о различных вариантах использования, в которых Inspector обеспечивает дизайн и ценовую политику, гораздо более удобную, чем платформы, ориентированные на крупные корпорации.
Итак, спасибо вам, ребята, я рад сотрудничать с такими непредубежденными разработчиками, как вы. Сообщество Inspector продолжает расти.
Инспектор — это инструмент мониторинга выполнения кода, специально разработанный для разработчиков программного обеспечения. Вам не нужно ничего устанавливать на уровне сервера, просто установите пакет композитора и все готово.
Инспектор очень прост и дружелюбен к PHP. Вы можете попробовать наш пакет Laravel или Symfony.
Если вам нужен HTTP-мониторинг, анализ запросов к базе данных и возможность пересылать оповещения и уведомления в предпочитаемую вами среду обмена сообщениями, попробуйте Inspector бесплатно. Зарегистрируйте свой аккаунт.
Или узнайте больше на сайте: https://inspector.dev
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3