У меня есть многопоточное приложение, в котором каждый поток работает с разными объектами с именами, т.е.:
process-1
process-2
process-3
В настоящее время шаблон выглядит следующим образом:
[%thread] - %msg %n
И я хочу добиться чего-то вроде этого:
[%thread] %processName - %msg %n
Где processName
указано в объекте.
Моя цель — добавить эти имена в сгенерированные журналы, чтобы я мог очень легко найти их, когда мне нужно будет просмотреть историю. Я уже записываю название темы, но мне этого мало.
Я начал с MDC, однако оказалось, что он сохраняет сохраненное имя между всеми потоками. В лучшем случае он использует это имя для всех журналов, в худшем — свойство пустое.
Как я могу добиться этого потокобезопасного ведения журнала с MDC или без него?
processName
вmsg
? - person nandsito   schedule 11.01.2019ThreadLocal
переменных. Теперь, поскольку в конце задачи поток возвращается в пул для использования другой задачей, значения MDC остаются. - person Saptarshi Basu   schedule 11.01.2019