diff --git a/cat-home/src/main/java/com/dianping/cat/report/page/problem/HistoryGraphs.java b/cat-home/src/main/java/com/dianping/cat/report/page/problem/HistoryGraphs.java index c11a475dff78bdbb33396a48972d425675139903..ce6580a8d981f45ba697089fcecc04ce64a115bc 100644 --- a/cat-home/src/main/java/com/dianping/cat/report/page/problem/HistoryGraphs.java +++ b/cat-home/src/main/java/com/dianping/cat/report/page/problem/HistoryGraphs.java @@ -169,30 +169,6 @@ public class HistoryGraphs extends BaseHistoryGraphs { model.setErrorsTrend(item.getJsonString()); } - public void buildTrendGraph(Model model, Payload payload) { - Date start = payload.getHistoryStartDate(); - Date end = payload.getHistoryEndDate(); - int size = (int) ((end.getTime() - start.getTime()) * 60 / TimeUtil.ONE_HOUR); - String queryType = payload.getReportType(); - String domain = model.getDomain(); - String type = payload.getType(); - String name = payload.getStatus(); - String ip = model.getIpAddress(); - - long step = TimeUtil.ONE_MINUTE; - if (queryType.equalsIgnoreCase("week")) { - size = (int) ((end.getTime() - start.getTime()) / TimeUtil.ONE_DAY); - step = TimeUtil.ONE_DAY; - } else if (queryType.equalsIgnoreCase("month")) { - size = (int) ((end.getTime() - start.getTime()) / TimeUtil.ONE_DAY); - step = TimeUtil.ONE_DAY; - } - - List> allDatas = buildLineChartData(start, end, queryType, domain, type, name, ip); - LineChart item = buildFail(allDatas, start, step, size, queryType); - model.setErrorsTrend(item.getJsonString()); - } - private List> buildLineChartData(Date start, Date end, String domain, String type, String name, String ip, String queryType) { List> allDatas = new ArrayList>(); @@ -223,6 +199,30 @@ public class HistoryGraphs extends BaseHistoryGraphs { return allDatas; } + public void buildTrendGraph(Model model, Payload payload) { + Date start = payload.getHistoryStartDate(); + Date end = payload.getHistoryEndDate(); + int size = (int) ((end.getTime() - start.getTime()) * 60 / TimeUtil.ONE_HOUR); + String queryType = payload.getReportType(); + String domain = model.getDomain(); + String type = payload.getType(); + String name = payload.getStatus(); + String ip = model.getIpAddress(); + + long step = TimeUtil.ONE_MINUTE; + if (queryType.equalsIgnoreCase("week")) { + size = (int) ((end.getTime() - start.getTime()) / TimeUtil.ONE_DAY); + step = TimeUtil.ONE_DAY; + } else if (queryType.equalsIgnoreCase("month")) { + size = (int) ((end.getTime() - start.getTime()) / TimeUtil.ONE_DAY); + step = TimeUtil.ONE_DAY; + } + + List> allDatas = buildLineChartData(start, end, queryType, domain, type, name, ip); + LineChart item = buildFail(allDatas, start, step, size, queryType); + model.setErrorsTrend(item.getJsonString()); + } + private Map getGraphDatasFromDaily(Date start, Date end, String domain, String type, String name, String ip) { String queryIp = "All".equalsIgnoreCase(ip) == true ? "All" : ip; diff --git a/cat-home/src/main/java/com/dianping/cat/system/page/config/Handler.java b/cat-home/src/main/java/com/dianping/cat/system/page/config/Handler.java index ab26567eac6ce62fb987a7cb1ecb165c492869f1..e3c9371f04e3d3dff4bc929c752b2f2e92b66c24 100644 --- a/cat-home/src/main/java/com/dianping/cat/system/page/config/Handler.java +++ b/cat-home/src/main/java/com/dianping/cat/system/page/config/Handler.java @@ -5,6 +5,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Map.Entry; @@ -339,13 +340,31 @@ public class Handler implements PageHandler { private void metricConfigList(Payload payload, Model model) { Map productLines = m_productLineConfigManger.queryProductLines(); Map> metricConfigs = new HashMap>(); + Set exists = new HashSet(); for (Entry entry : productLines.entrySet()) { Set domains = entry.getValue().getDomains().keySet(); List configs = m_metricConfigManager.queryMetricItemConfigs(domains); + for (MetricItemConfig config : configs) { + exists.add(m_metricConfigManager.buildMetricKey(config.getDomain(), config.getType(), config.getMetricKey())); + } + metricConfigs.put(entry.getValue(), configs); } + + Map allConfigs = m_metricConfigManager.getMetricConfig().getMetricItemConfigs(); + Set keys = allConfigs.keySet(); + List otherConfigs = new ArrayList(); + + for (String key : exists) { + keys.remove(key); + } + for (String str : keys) { + otherConfigs.add(allConfigs.get(str)); + } + ProductLine otherProductLine = new ProductLine("Other").setTitle("Other"); + metricConfigs.put(otherProductLine, otherConfigs); model.setProductMetricConfigs(metricConfigs); } diff --git a/cat-home/src/main/webapp/images/business04.png b/cat-home/src/main/webapp/images/business04.png index 11aa87f1b47b820eb3c7a8565191f305f539a3b7..2032f90069b8bd79f8f28f84b52d1347df3cdc78 100644 Binary files a/cat-home/src/main/webapp/images/business04.png and b/cat-home/src/main/webapp/images/business04.png differ diff --git a/cat-home/src/main/webapp/jsp/report/home/integratingBusiness.jsp b/cat-home/src/main/webapp/jsp/report/home/integratingBusiness.jsp index 165e357a0f0cdd7b97ec5f5004002132dded44a4..b68718f891ebf922c5d957a342bc96195d2346ae 100644 --- a/cat-home/src/main/webapp/jsp/report/home/integratingBusiness.jsp +++ b/cat-home/src/main/webapp/jsp/report/home/integratingBusiness.jsp @@ -26,6 +26,7 @@

第三步:产品线配置

业务监控展示的是一个产品线下所有的业务指标信息,CAT提供了产品的配置信息

+

必须把一个产品线下的所有项目加入到此产品线,这样这个产品线下所有指标才能正确展示

url : 链接


diff --git a/cat-home/src/main/webapp/jsp/system/productLine/topologyProductLineAdd.jsp b/cat-home/src/main/webapp/jsp/system/productLine/topologyProductLineAdd.jsp index cb60023ae859844af594dac2d8c8c802b7a28335..36612cba60e7472e8798b149b991a67d6abf4396 100644 --- a/cat-home/src/main/webapp/jsp/system/productLine/topologyProductLineAdd.jsp +++ b/cat-home/src/main/webapp/jsp/system/productLine/topologyProductLineAdd.jsp @@ -23,7 +23,7 @@ - + diff --git a/cat-home/src/main/webapp/jsp/system/productLine/topologyProductLines.jsp b/cat-home/src/main/webapp/jsp/system/productLine/topologyProductLines.jsp index 0e6c488ee67c792edcb194a689c3a6cc6e7ee0a7..e2a7b013efbf1077d7b106d8edc336c1fe982204 100644 --- a/cat-home/src/main/webapp/jsp/system/productLine/topologyProductLines.jsp +++ b/cat-home/src/main/webapp/jsp/system/productLine/topologyProductLines.jsp @@ -51,8 +51,12 @@

 

产品线名称(全英文)产品线名称(全英文)
- - + + + + + +
产品线标题顺序监控大盘显示项目列表操作 新增产品线标题顺序监控大盘显示项目列表操作 新增