Вы можете немного сократить это, так как getLogger перегружен, чтобы просто взять класс. Вот так:
public class MyClass {
private static Logger _log = Logger.getLogger(MyClass.class);
}
Регистратор может быть настолько быстрым или негибким, насколько вы хотите. Вы можете получить новый регистратор для каждого класса, как в приведенном выше примере, и иметь иерархию регистраторов, где вы можете контролировать и включать / выключать регистрацию по классам. Или, если ваш проект небольшой или прототип и т. Д., Вы можете просто вызвать Logger.getRootLogger () - но вы потеряете гибкость в точной настройке того, что вы регистрируете, и не регистрируетесь. У вас может быть базовый класс, в котором живет регистратор, и пусть все так его называют, но опять же вы теряете некоторую гибкость:
public class MyBase {
protected static Logger _log = Logger.getLogger(MyClass.class);
}
public class MyClass extends MyBase {
....
_log.info("Stuff....");
}
Суть в том, что если вы хотите сохранить возможность более точной настройки ведения журнала позже в проекте (включить более точную отладку уровня только для одного класса), то вам, возможно, придется придерживаться эталонного шаблона в каждом классе.