SQL Statements loggen mit P6Spy

Juli 25th, 2008 von Sven

Im aktuellen Projektumfeld habe ich es mit JBoss 4.0.2 und EJB3 zu tun. Dabei kann es manchmal proktisch sein, die SQL Statements die von der zugrunde liegenden Persistence API (Hibernate) erzeugt und abgesetzt werden, zu loggen.

Üblicherweise eignet sich hier das Setzen des Loglevels, in etwa so

log4j.logger.org.hibernate.SQL=DEBUG
log4j.logger.org.hibernate.type=DEBUG

Leider werden diese Einstellungen unter JBoss ignoriert. Auch ein Java Util Logging kompatibles propertie File mit der analogen Konfig brachte keinen Erfolg. Lediglich das setzen des hibernate Properties show_sql auf true brachte dann zumindest die SQL Statement mit den ‘?’ auf den Schirm. Naja, dunkles Kapitel…falls jemand hierzu noch eine Idee hat, immer er damit.

Ich bin dann (sogar über die Hibernate Site) auf ein altertümliches Tool (2003) gestoßen: P6Spy. Es wrappt den eingesetzten JDBC Treiber, und loggt somit schön die SQLs in ein File. Es läßt sich schön in JBoss (und sicher auch viele andere Umgebungen) integrieren und funktioniert auf anhieb.

Geschrieben in Allgemein, coding, frameworks, hibernate, it, java, tools | Keine Kommentare »

Java Logging - eigene Properties

Juli 25th, 2008 von Sven

Um eigene logging.properties dem Java Util Logger mitzugeben, kann dieses VM Argumt genutzt werden:

-Djava.util.logging.config.file=%Pfad zur logging.properties%

Das logging.properties wird nicht wie bei Log4J automatisch aus dem Classpath der Anwendung gelesen. Deswegen muss ein eigenes entweder zur Laufzeit geladen werden, über die VM Argumente mitgegeben oder - ganz übel - es kann das originale in den JRE Jars durch ein eigenes ersetzt werden.

Geschrieben in hibernate, java, jsf, spring, tomcat, tools | Keine Kommentare »