Мне нужно записать время выполнения SQL в моем приложении Java EE (любая дополнительная статистика будет дополнительным бонусом).JDBC - ведение журнала выполнения SQL-запросов
Вещи настройки более стандартным образом: источник данных на сервере приложений, обслуживающий объединенные соединения JDBC.
Приложение использует для DB смеси доступа:
- Hibernate и
- Spring JdbcTemplate
Он работает на:
- Glassfish OSE и
- Oracle DBS
Я знаю о: Anything better than P6Spy? Однако вопрос/ответы устарели, с моей точки зрения.
То, что я нашел до сих пор:
- Я мог бы пойти на чистый Hibernate подход (hibernate show query execution time)
- , но это не представляется возможным из-за смешанный доступ к БД в моем случае
- Я мог бы использовать некоторые пользовательские драйверы JDBC
- p6spy - ho Проект Веверу кажется несколько лет мертв (последний коммит 3 года назад: http://sourceforge.net/p/p6spy/code/23/tree/trunk/)
- log4jdbc - однако не релиз более чем на 1 год, а активность источника вроде бы около 6 месяцев не трогали (http://code.google.com/p/log4jdbc/source/list)
- еще 2: log4jdbc -log4j2 и log4jdbc-ремикс - которые кажутся живыми, но я не уверен, о стабильности и широкого использования
Рекомендации, основанные на опыте очень приветствуются.
Пожалуйста, обратите внимание, что я заинтересован в виде ответов, как: Мы используем XYZ и это наш опыт, а не я гугл только сейчас и чувствует, как ...
спасибо за идею, я скорее искал какой-то компонент многократного использования, который я мог просто «подключить и играть» в свою инфраструктуру. давайте посмотрим, появляются ли какие-то другие идеи –
, я проверил глубже, но перехватчики EJB кажутся невозможными, я хотел бы регистрировать время выполнения SQL, EJB, если оно намного выше. С другой стороны, AspectJ может работать для меня. –