Существует решение использования varargs с SLF4J.
Существует проект с открытым исходным кодом под названием Lumberjack, который расширяет SLF4J для предоставления методов ведения журнала varargs. Расширение очень естественное, вы не почувствуете никакой разницы по сравнению с использованием SLF4J (это потому, что Lumberjack является всего лишь оберткой вокруг SLF4J, поэтому вся функциональность все еще обеспечивается SLF4J).
Пример использования:
JackLogger logger = JackLoggerFactory.getLogger(LoggerFactory.getLogger(Weather.class));
logger.info("Hello {}! The current time is {}:{}:{}, and after {} hours the weather will be {}.", "Jack", 13, 30, 0, 5, "sunny");
Сайт лесоруба: https://github.com/bogdanu/lumberjack
Лицензия Lumberjack совпадает с лицензией SLF4J, лицензией MIT, поэтому никаких дополнительных лицензионных ограничений нет.
Отказ от ответственности: я - автор Дровосека