Весна: стандартная форма ведения журнала (перехватчик)

Я нашел много примеров о том, как создать настраиваемый аспект для ведения журнала с использованием Spring Framework, подобного этому, но не нашел стандартную / общую реализацию Spring для этой ситуации и вопроса. Существуют ли какие-либо стандартные реализации аспекта каротажа с Spring или нет?

Да это так!

       

Ознакомьтесь с API CustomizableTraceInterceptor , вы можете определить отдельные сообщения ввода / выхода / исключения с несколькими заполнителями:

  • $[methodName] – заменяется именем вызываемого метода
  • $[targetClassName] – заменено именем classа, который является объектом вызова
  • $[targetClassShortName] – заменено коротким именем classа, который является объектом вызова
  • $[returnValue] – заменяется значением, возвращаемым вызовом
  • $[argumentTypes] – заменяется разделенным запятыми списком коротких имен classов аргументов метода
  • $[arguments] – заменяется разделенным запятой списком представления String аргументов метода
  • $[exception] – заменяется строковым представлением любого Throwable, поднятого во время вызова
  • $[invocationTime] – заменяется временем, в миллисекундах, взятым вызовом метода

Ниже приведен список фреймворков, выполняющих протоколирование через АОП:

http://aspect4log.sf.net – делает очень приятный просмотр протоколов через slf4j и @Log аннотацию. Может работать через SpringAOP и AspectJ. С AspectJ он работает даже для частных методов и конструкторов и не требует, чтобы class был Spring Bean. Очень прост в использовании, я смог заставить его работать с моим проектом в течение 5 минут.

http://loggifier.unkrig.de – выполняет запись через java.util.logging, немного слишком сложный и не очень хорошо документирует, но утверждает, что он может инструментально скомпилировать файлы jar / war / ear!

AbstractTraceInterceptor (от SpringAOP), и это подclassы SimpleTraceInterceptor и CustomizableTraceInterceptor. Конфигурация регистрации выполняется отдельно от classов. Журналы через commons-logging. Поскольку он предназначен для SpringAOP, вам нужно работать с Spring Beans (и только с помощью обычных методов Spring Beans).

  • java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet
  • Spring JSF-интеграция: как внедрить компонент Spring / службу в управляемый bean-компонент JSF?
  • Как создать весеннюю исполняемую банку с maven?
  • com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Ошибка связи связи. Программное обеспечение вызвало прерывание соединения: recv failed
  • Mockito: ввод реальных объектов в закрытые поля @Autowired
  • Как настроить Spring для создания JPA (Hibernate) и JDBC (JdbcTemplate или MyBatis) совместно использовать одну и ту же транзакцию
  • сеансы загрузки исключений из постоянного хранилища
  • Как вернуть данные JSON из весеннего controllerа с помощью @ResponseBody
  • Java EE 6 vs. Spring 3 stack
  • REST API - DTO или нет?
  • Отправка сообщения конкретному пользователю в Spring Websocket
  • Давайте будем гением компьютера.