From 4a39c6331c7628f7e468b3567189e49497bbed13 Mon Sep 17 00:00:00 2001 From: wenshao Date: Fri, 3 Aug 2012 19:14:21 +0800 Subject: [PATCH] add stat service --- .../druid/stat/service/DruidStatService.java | 17 +++++++++++++++-- .../druid/stat/service/DruidStatStore.java | 3 --- .../alibaba/druid/stat/service/dto/SqlInfo.java | 10 +++++----- .../stat/service/impl/DruidStatMemoryStore.java | 6 ------ 4 files changed, 20 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/alibaba/druid/stat/service/DruidStatService.java b/src/main/java/com/alibaba/druid/stat/service/DruidStatService.java index 434eff9789..c84230233e 100644 --- a/src/main/java/com/alibaba/druid/stat/service/DruidStatService.java +++ b/src/main/java/com/alibaba/druid/stat/service/DruidStatService.java @@ -54,18 +54,31 @@ public class DruidStatService { dataSourceStat.setUrl(dataSource.getUrl()); dataSourceStat.setDbType(dataSource.getDbType()); - dataSourceStatList.add(dataSourceStat); - Collection sqlStats = dataSource.getDataSourceStat().getSqlStatMap().values(); List sqlStatInfoList = new ArrayList(sqlStats.size()); for (JdbcSqlStat sqlStat : dataSource.getDataSourceStat().getSqlStatMap().values()) { SqlInfo sqlStatInfo = new SqlInfo(); + if (sqlStat.getExecuteCount() == 0 && sqlStat.getRunningCount() == 0) { + continue; + } + sqlStatInfo.setSql(sqlStat.getSql()); + sqlStatInfo.setExecuteCount((int) sqlStat.getExecuteCount()); + sqlStatInfo.setRunningCount((int) sqlStat.getRunningCount()); + sqlStatInfo.setConcurrentMax((int) sqlStat.getConcurrentMax()); + sqlStatInfo.setErrorCount((int) sqlStat.getErrorCount()); + sqlStatInfo.setInTransactionCount((int) sqlStat.getInTransactionCount()); + sqlStatInfo.setFetchRowCount(sqlStat.getFetchRowCount()); + sqlStatInfo.setUpdateCount(sqlStat.getUpdateCount()); sqlStatInfoList.add(sqlStatInfo); } + + dataSourceStat.setSqlList(sqlStatInfoList); + + dataSourceStatList.add(dataSourceStat); } store.saveDataSource(timeMillis, dataSourceStatList); diff --git a/src/main/java/com/alibaba/druid/stat/service/DruidStatStore.java b/src/main/java/com/alibaba/druid/stat/service/DruidStatStore.java index da02e2e1fd..73ba90db00 100644 --- a/src/main/java/com/alibaba/druid/stat/service/DruidStatStore.java +++ b/src/main/java/com/alibaba/druid/stat/service/DruidStatStore.java @@ -3,11 +3,8 @@ package com.alibaba.druid.stat.service; import java.util.List; import com.alibaba.druid.stat.service.dto.DataSourceInfo; -import com.alibaba.druid.stat.service.dto.SqlInfo; public interface DruidStatStore { - void saveSql(long timeMillis, List sqlList); - void saveDataSource(long timeMillis, List dataSourceList); } diff --git a/src/main/java/com/alibaba/druid/stat/service/dto/SqlInfo.java b/src/main/java/com/alibaba/druid/stat/service/dto/SqlInfo.java index 4723830571..f7ee9be82d 100644 --- a/src/main/java/com/alibaba/druid/stat/service/dto/SqlInfo.java +++ b/src/main/java/com/alibaba/druid/stat/service/dto/SqlInfo.java @@ -6,7 +6,7 @@ public class SqlInfo { private int executeCount; private int runningCount; private int concurrentMax; - private int executeErrorCount; + private int errorCount; private int inTransactionCount; private long fetchRowCount; @@ -48,12 +48,12 @@ public class SqlInfo { this.concurrentMax = concurrentMax; } - public int getExecuteErrorCount() { - return executeErrorCount; + public int getErrorCount() { + return errorCount; } - public void setExecuteErrorCount(int executeErrorCount) { - this.executeErrorCount = executeErrorCount; + public void setErrorCount(int errorCount) { + this.errorCount = errorCount; } public int getInTransactionCount() { diff --git a/src/main/java/com/alibaba/druid/stat/service/impl/DruidStatMemoryStore.java b/src/main/java/com/alibaba/druid/stat/service/impl/DruidStatMemoryStore.java index 674005e394..8195ca9758 100644 --- a/src/main/java/com/alibaba/druid/stat/service/impl/DruidStatMemoryStore.java +++ b/src/main/java/com/alibaba/druid/stat/service/impl/DruidStatMemoryStore.java @@ -4,16 +4,10 @@ import java.util.List; import com.alibaba.druid.stat.service.DruidStatStore; import com.alibaba.druid.stat.service.dto.DataSourceInfo; -import com.alibaba.druid.stat.service.dto.SqlInfo; public class DruidStatMemoryStore implements DruidStatStore { - @Override - public void saveSql(long timeMillis, List sqlList) { - - } - @Override public void saveDataSource(long timeMillis, List dataSourceList) {