внешней инфры, чисто на симфони, log in file.
Задача: просто записать request/response и какой юзер это делал (хотя в случае в JWT - это есть в request).
Делал на Request/Response event - но не уверен что это правильно, или мб есть какие то коробочные пути
А чо бы и не ивент? Они ж по идее за этим и нужны.
Ну поэтому так и делаю, но вот интересно какие еще варианты есть :)
Миддлварой
не понял, в чем суть вопроса... не знаешь как логи раскидать или поиск "вот прямо правильно"?
Ну мидлавры не завезли вроде, только к месседжере.
Не знаю как как правильно логировать приложение :) Номрально ли это через request responce events
Как сказать. В симфони есть Runtime, можно там навертеть, что хочешь, а можно взять https://github.com/kafkiansky/symfony-middleware. Это psr-15 миддлвары. У нас на проекте стоит, норм.
посмотри в сторону настройки монологера, в консоли комманду php bin/console debug:container monolog и там тебе полный список каналов, в том числе request и security
kernel exception тоже покрой
Спасибо, про эту сторону и спрашивал. Что мб можно как то монолог поднастроить. Посмотрю )
Спасибо. Но вроде monolog покрывает, хотя конечно без доп данных, а протсо что exception долбанул
Ты спрашивал, куда добавить свой слушатель, чтобы покрыть request/response. Response события не будет в случае необработанного исключения и твой слушатель не отработает. Если вопрос в том, чтобы в итоге хоть что-то попадёт в лог - так это хоть "что-то" попадёт в лог и без твоего слушателя
А ок, понял. Спасибо :)
как вариант конфига security: type: rotating_file max_files: 10 channels: ["security"] level: debug path: "%kernel.logs_dir%/%kernel.environment%_security.log" request: type: rotating_file max_files: 10 channels: ["request"] level: debug path: "%kernel.logs_dir%/%kernel.environment%_request.log" и будет тебе счастье )) монолог также позволяет кастомные транспорты использовать
Спс, надо в сторону реквест чанела посмотреть :) можно наверное свой хэндлер написать и добавлять данные.
Обсуждают сегодня