From ba1d978f9e60247958f587cbd3f42230b66507a8 Mon Sep 17 00:00:00 2001 From: wenshao Date: Tue, 27 Nov 2012 14:44:32 +0800 Subject: [PATCH] improve LogFilter --- .../druid/filter/logging/LogFilter.java | 8 ++-- .../druid/bvt/filter/log/LogFilterTest2.java | 40 +++++++++++++++++++ .../bvt/hibernate/HibernateCRUDTest.java | 1 + 3 files changed, 45 insertions(+), 4 deletions(-) create mode 100644 src/test/java/com/alibaba/druid/bvt/filter/log/LogFilterTest2.java diff --git a/src/main/java/com/alibaba/druid/filter/logging/LogFilter.java b/src/main/java/com/alibaba/druid/filter/logging/LogFilter.java index 14ad2bd491..86a9823eb1 100644 --- a/src/main/java/com/alibaba/druid/filter/logging/LogFilter.java +++ b/src/main/java/com/alibaba/druid/filter/logging/LogFilter.java @@ -386,7 +386,7 @@ public abstract class LogFilter extends FilterEventAdapter implements LogFilterM double millis = nanos / (1000 * 1000); statementLog("{conn-" + statement.getConnectionProxy().getId() + ", " + stmtId(statement) + "} executed. " - + sql + " (" + millis + " milliseconds)"); + + millis + " millis. " + sql); } } @@ -410,7 +410,7 @@ public abstract class LogFilter extends FilterEventAdapter implements LogFilterM } statementLog("{conn-" + statement.getConnectionProxy().getId() + ", " + stmtId(statement) - + "} batch executed. " + sql + " (" + millis + " milliseconds)"); + + "} batch executed. " + millis + " millis. " + sql); } } @@ -430,7 +430,7 @@ public abstract class LogFilter extends FilterEventAdapter implements LogFilterM double millis = nanos / (1000 * 1000); statementLog("{conn-" + statement.getConnectionProxy().getId() + ", " + stmtId(statement) + ", rs-" - + resultSet.getId() + "} query executed. " + sql + " (" + millis + " milliseconds)"); + + resultSet.getId() + "} query executed. " + millis + " millis. " + sql); } } @@ -450,7 +450,7 @@ public abstract class LogFilter extends FilterEventAdapter implements LogFilterM double millis = nanos / (1000 * 1000); statementLog("{conn-" + statement.getConnectionProxy().getId() + ", " + stmtId(statement) - + "} update executed. effort " + updateCount + ". " + sql + " (" + millis + " milliseconds)"); + + "} update executed. effort " + updateCount + ". " + millis + " millis. " + sql); } } diff --git a/src/test/java/com/alibaba/druid/bvt/filter/log/LogFilterTest2.java b/src/test/java/com/alibaba/druid/bvt/filter/log/LogFilterTest2.java new file mode 100644 index 0000000000..b7260e8366 --- /dev/null +++ b/src/test/java/com/alibaba/druid/bvt/filter/log/LogFilterTest2.java @@ -0,0 +1,40 @@ +package com.alibaba.druid.bvt.filter.log; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; + +import junit.framework.TestCase; + +import com.alibaba.druid.pool.DruidDataSource; +import com.alibaba.druid.util.JdbcUtils; + +public class LogFilterTest2 extends TestCase { + + private DruidDataSource dataSource; + + protected void setUp() throws Exception { + dataSource = new DruidDataSource(); + dataSource.setUrl("jdbc:derby:classpath:petstore-db"); + dataSource.setFilters("log4j"); + } + + public void test_select() throws Exception { + Connection conn = dataSource.getConnection(); + + PreparedStatement stmt = conn.prepareStatement("SELECT * FROM ITEM WHERE LISTPRICE > 10"); + + for (int i = 0; i < 10; ++i) { + ResultSet rs = stmt.executeQuery(); + rs.close(); + } + + stmt.close(); + + conn.close(); + } + + protected void tearDown() throws Exception { + JdbcUtils.close(dataSource); + } +} diff --git a/src/test/java/com/alibaba/druid/bvt/hibernate/HibernateCRUDTest.java b/src/test/java/com/alibaba/druid/bvt/hibernate/HibernateCRUDTest.java index 2bf0f7bb95..cab0b5c9f5 100644 --- a/src/test/java/com/alibaba/druid/bvt/hibernate/HibernateCRUDTest.java +++ b/src/test/java/com/alibaba/druid/bvt/hibernate/HibernateCRUDTest.java @@ -34,6 +34,7 @@ public class HibernateCRUDTest extends TestCase { dataSource.setUsername("sa"); dataSource.setPassword(""); dataSource.setDefaultAutoCommit(false); + dataSource.setFilters("log4j"); /*init sessionFactory*/ LocalSessionFactoryBean factoryBean = new LocalSessionFactoryBean();