В Symfony deprecation log представляет собой сообщения остаревших (deprecated) функций и методов в коде, которые в будущих версиях могут быть полностью удалены. У вас может появиться необходимость отключить логирование deprecation сообщений по разным причинам, например, чтобы улучшить производительность или избежать лишнего шума в логе.
В Symfony 2 и 3 вы можете отключить deprecation log, добавив следующую конфигурацию в файл app/config/config.php:
ini_set('error_reporting', E_ALL ^ E_DEPRECATED);
Эта настройка устанавливает режим отчетности об ошибках со значением E_ALL за исключением E_DEPRECATED (т.е. все ошибки, кроме отключенных). Это отключит логирование deprecation сообщений.
В Symfony 4 и более поздних версиях, начиная с Symfony Flex, подключен компонент Monolog, который предоставляет возможность легко настроить логирование. Вы можете создать файл конфигурации monolog.yaml в каталоге config/packages со следующим содержимым:
monolog: handlers: main: type: stream path: '%kernel.logs_dir%/%kernel.environment%.log' level: error channels: ['!deprecation']
В этой конфигурации определен handler main, который записывает логи в файл, указанный в %kernel.logs_dir% с именем, зависящим от окружения.
Параметр level: error означает, что будут записываться только ошибки и более серьезные сообщения.
Если вы хотите отключить логирование deprecation сообщений, добавьте !deprecation в параметр channels, чтобы они не записывались.
Также в Symfony 4+ вы можете установить параметр deprecation_logging в значение false в файле .env:
# .env deprecation_logging=false
Это изменит значение %env(deprecation_logging)% в файле config/packages/framework.yaml:
framework: deprecation_logging: '%env(deprecation_logging)%'
Теперь логирование deprecation сообщений будет отключено.
Обратите внимание, что отключение deprecation логов является временным решением. Лучшей практикой является обновление кода, чтобы устранить все остаревшие элементы, и включение логирования для быстрого обнаружения остальных проблем.