Есть ли аспект, уже написанный и хорошо протестированный для ведения журнала TRACE? - PullRequest
2 голосов
/ 11 января 2011

Я выполняю рефакторинг унаследованного приложения, в котором фактическое приложение разбросано между множеством операторов ведения журнала.Я мог бы немедленно извлечь выгоду, удалив регистрацию уровня TRACE (метод введен / завершен).Однако это оказалось полезным много раз при отладке приложения во время интеграционного тестирования и т. Д. Так что мне интересно, есть ли уже рабочий и проверенный (используемый некоторое время) аспект, написанный для этого?Я просмотрел некоторые онлайн-посты, но они кажутся достаточно простыми (и не уверен, что они когда-либо использовались) для реального проекта.

Ответы [ 2 ]

3 голосов
/ 11 января 2011

Извлечь аспекты из «AspectJ в действии» (источники можно загрузить с http://manning.com/laddad2).. Я использовал очень близкие варианты аспектов из главы 10 о реальных проектах.

1 голос
/ 03 февраля 2013

Вы можете использовать @Loggable аннотацию из jcabi-аспекты вместе со встроенным аспектом AspectJ:

@Loggable(Loggable.TRACE)
public String load(URL url) {
  return url.openConnection().getContent();
}

Он регистрируется через SLF4J , который вы можете перенаправить на свое собственное средство регистрации, например, log4j.

...