В OSGi (как и в любой среде) вы хотите как можно больше держаться подальше от статических помощников, поэтому решения с использованием метода статического журнала - не лучший способ.Работая в среде OSGi, вы захотите использовать LogService
в качестве центрального, связанного с пакетами и обслуживанием канала для всех ваших журналов.Необходимо рассмотреть два случая.
Устаревший и библиотечный код
Если код, который вы используете, требует ведения журнала, но не знает OSGi, вы можете построить (или найти) мосты к LogService
.
Код под вашим контролем
Предполагая, что весь код под вашим контролем должен быть ориентирован на обслуживание, он должен использовать LogService
напрямую.Для большинства компонентов это легко, но в некоторых случаях требуется дополнительное рассмотрение.
Особый случай, который следует учитывать, - это длительные операции, которые не являются OSGi.-aware: если вы даете сервисную ссылку, например, на рабочий поток, который может работать очень долго, вы напрашиваетесь на проблемы, а не только на регистрацию.