В Java стандартная идиома для ведения журнала - это создание статической переменной для объекта журнала и использование этого в различных методах.
В Scala, похоже, что идиома - создать черту Logging с членом журнала и микшировать признак в конкретных классах. Это означает, что каждый раз, когда объект создается, он вызывает фреймворк регистрации для получения регистратора, а также объект больше из-за дополнительной ссылки.
Есть ли альтернатива, которая позволяет легко использовать "с протоколированием" при использовании экземпляра журнала для каждого класса?
EDIT: Мой вопрос заключается не в том, как можно записать структуру ведения журнала в Scala, а в том, как использовать существующий (log4j), не наносимый служебной нагрузкой (получение ссылки для каждого экземпляра) или сложность кода, Кроме того, да, я хочу использовать log4j, просто потому, что буду использовать сторонние библиотеки, написанные на Java, которые могут использовать log4j.