Вы должны:
Определить соответствующий показатель производительности (например, скорость реагирования, пропускную способность и т. Д.).Затем вы должны измерить эту метрику, отключив и включив ведение журнала.Разница будет в стоимости регистрации.
Затем вы должны поэкспериментировать с различными библиотеками журналирования и режимами, которые они предоставляют, и задокументировать наблюдаемые различия.
По своему личному опыту, для всех трех проектов, над которыми я работал, я обнаружил, что асинхронное ведение журнала помогает значительно повысить пропускную способность приложения.Но то же самое может и не иметь места для вас, поэтому убедитесь, что вы приняли решение после тщательных измерений.
Следующее не имеет прямого отношения к вашему вопросу.
Я заметил, что вы специально упомянули бизнес-логи.В этом случае вам также может потребоваться поддерживать актуальность и чистоту ведения журнала, если вы обнаружите, что ваши файлы журнала становятся огромными и трудными для понимания.В этой области существует общепринятый шаблон проектирования : регистрация в соответствии с функцией.Это будет означать, что деловое ведение журнала (например, клиент запросил возврат) идет в другое место назначения, ведение журнала интерфейса переместится в другое место назначения (например, пользователь нажал кнопку upvote! = Пользователь отклонил ответ), и будет выполнен перекрестный системный вызов.в другое место назначения (например, Запрос разрешения через платежный шлюз).Некоторые люди хранят главный файл журнала со всеми событиями, чтобы увидеть временную шкалу процесса, в то время как некоторые проектируют майнеры / скребки для создания временных шкал, когда это необходимо.
Надеюсь, это поможет,