Я бы сказал, что оператор Function
для log()
предоставляет вам полный контроль над тем, что вы хотели бы войти в сообщение. Конечно, также избегая накладных расходов с ThreadLocal
. Но если вы все еще хотите его использовать, я бы предложил .wireTap()
до этого log()
, чтобы вы могли сохранить значение в вашем ThreadLocal
(MDC?) Без влияния на основной поток.
Только проблема, которую вы должны помнить, чтобы очистить callContext
как-нибудь, чтобы избежать локального загрязнения потока.