Пытаюсь определить источник брошенных соединений в tomcat

Я использую пул соединений dbcp в tomcat (версия 7), и где-то в моем коде есть утечка соединения. Через короткий промежуток времени запрос на новое соединение возвращает следующее исключение:

«Невозможно получить соединение, ошибка пула. Тайм-аут ожидания для незанятого объекта»

Я вернулся к своему коду, и мне это кажется все соединения закрываются должным образом (не все так говорят ...).

Чтобы отладить это, я добавил следующие свойства в context.xml:

logAbandoned="true" removeAbandoned="true" removeAbandonedTimeout="300"

Теперь тег ресурса выглядит так:

 <Resource name="jdbc/findata" auth="Container" type="javax.sql.DataSource"
               maxActive="20" maxIdle="5" maxWait="10000"
               username="root" password="xxxxxx" driverClassName="com.mysql.jdbc.Driver"
               logAbandoned="true" removeAbandoned="true" removeAbandonedTimeout="300"
               url="jdbc:mysql://localhost:3306/findata"/>

Затем я перезапустил tomcat и начал посещать веб-страницы, пока не появилось сообщение об ошибке (в окне браузера). Однако я еще не смог выяснить, куда свойство logAbandoned записывает свою информацию. Я' Я просматриваю

/usr/share/apache-tomcat-7.0.11/logs

, но единственный недавно измененный файл журнала там -

localhost_access_log.2011-04-18.txt

Любая помощь приветствуется.

9
задан Jubbles 18 April 2011 в 14:10
поделиться