use of org.apache.commons.beanutils.PropertyUtilsBean in project cobar by alibaba.
the class ClusterInstantPerfValueAjax method getClusterThroughput.
@SuppressWarnings("unchecked")
private List<Map<String, Object>> getClusterThroughput(AjaxParams params) {
List<Map<String, Object>> result = new ArrayList<Map<String, Object>>();
JSONArray array = params.getArray();
JSONObject json = null;
Map<Long, JSONObject> cobarRequest = new HashMap<Long, JSONObject>();
for (int i = 0; i < array.size(); i++) {
JSONObject js = array.getJSONObject(i);
if ("cluster".equals(js.getString("flag"))) {
json = js;
} else if ("cobar".equals(js.getString("flag"))) {
cobarRequest.put(js.getLong("id"), js);
}
}
PropertyUtilsBean util = new PropertyUtilsBean();
long clusterId = params.getClusterId();
List<CobarDO> nodes = xmlAccesser.getCobarDAO().getCobarList(clusterId, ConstantDefine.ACTIVE);
AjaxResult cluster = new AjaxResult();
cluster.setId(clusterId);
cluster.setFlag("cluster");
long timestamp = 0;
for (CobarDO node : nodes) {
CobarAdapterDAO perfAccesser = cobarAccesser.getAccesser(node.getId());
if (!perfAccesser.checkConnection()) {
StringBuilder sb = new StringBuilder("getClusterThroughput: cobar connect error for Name:");
sb.append(node.getName()).append(" Host:").append(node.getHost());
logger.error(sb.toString());
continue;
}
AjaxResult re = new AjaxResult();
List<ProcessorStatus> list = perfAccesser.listProccessorStatus();
List<CommandStatus> cmdList = perfAccesser.listCommandStatus();
long cobarNetIn = groupByPList(list, NET_IN);
long cobarNetOut = groupByPList(list, NET_OUT);
long cobarRequestCount = groupByCList(cmdList, REQUEST_COUNT);
cluster.addRequest(cobarRequestCount);
cluster.addNetIn(cobarNetIn);
cluster.addNetOut(cobarNetOut);
re.setId(node.getId());
re.setFlag("cobar");
re.setNetIn(cobarNetIn);
re.setNetOut(cobarNetOut);
re.setConnection(groupByPList(list, CONNECTION));
re.setRequest(cobarRequestCount);
timestamp = list.get(list.size() - 1).getSampleTimeStamp();
re.setTimestamp(timestamp);
JSONObject jsonTmp = cobarRequest.get(node.getId());
if (jsonTmp != null) {
re.setNetIn_deriv(FormatUtil.formatNetwork(Math.round(MathUtil.getDerivate(cobarNetIn, jsonTmp.getLong("netIn"), timestamp, jsonTmp.getLong("timestamp"), 1000.0))));
re.setNetOut_deriv(FormatUtil.formatNetwork(Math.round(MathUtil.getDerivate(cobarNetOut, jsonTmp.getLong("netOut"), timestamp, jsonTmp.getLong("timestamp"), 1000.0))));
re.setRequest_deriv(FormatUtil.formatNumber(Math.round(MathUtil.getDerivate(cobarRequestCount, jsonTmp.getLong("reCount"), timestamp, jsonTmp.getLong("timestamp"), 1000.0))));
}
Map<String, Object> map = null;
try {
map = util.describe(re);
} catch (Exception e) {
logger.error(e);
throw new RuntimeException(e);
}
if (null != map) {
result.add(map);
}
}
cluster.setTimestamp(timestamp);
if (null != json && json.getLong("netIn") != -1) {
long o_tiemstamp = json.getLong("timestamp");
cluster.setNetIn_deriv(FormatUtil.formatNetwork(Math.round(MathUtil.getDerivate(cluster.getNetIn(), json.getLong("netIn"), timestamp, o_tiemstamp, 1000.0))));
cluster.setNetOut_deriv(FormatUtil.formatNetwork(Math.round(MathUtil.getDerivate(cluster.getNetOut(), json.getLong("netOut"), timestamp, o_tiemstamp, 1000.0))));
cluster.setRequest_deriv(FormatUtil.formatNumber(Math.round(MathUtil.getDerivate(cluster.getRequest(), json.getLong("reCount"), timestamp, o_tiemstamp, 1000.0))));
}
Map<String, Object> m = null;
try {
m = util.describe(cluster);
} catch (Exception e) {
logger.error(e);
throw new RuntimeException(e);
}
if (null != m) {
result.add(m);
}
return result;
}
use of org.apache.commons.beanutils.PropertyUtilsBean in project cobar by alibaba.
the class CobarDetailScreen method handleRequestInternal.
@SuppressWarnings("unchecked")
@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) {
UserDO user = (UserDO) request.getSession().getAttribute("user");
long nodeId = 0;
try {
nodeId = Long.parseLong(request.getParameter("nodeId").trim());
} catch (Exception e) {
throw new IllegalArgumentException("parameter 'nodeId' is invalid: " + request.getParameter("nodeId"));
}
CobarDO cobar = xmlAccesser.getCobarDAO().getCobarById(nodeId);
if (null == cobar) {
throw new IllegalArgumentException("no cobar exsit for id : " + nodeId);
}
PropertyUtilsBean util = new PropertyUtilsBean();
Map<String, Object> cobarMap = null;
try {
cobarMap = util.describe(cobar);
} catch (Exception e1) {
throw new RuntimeException(e1);
}
cobarMap.remove("class");
cobarMap.remove("name");
cobarMap.put("name", CobarStringUtil.htmlEscapedString(cobar.getName()));
ClusterDO cluster = xmlAccesser.getClusterDAO().getClusterById(cobar.getClusterId());
Map<String, Object> clusterMap = new HashMap<String, Object>();
clusterMap.put("id", cluster.getId());
clusterMap.put("name", CobarStringUtil.htmlEscapedString(cluster.getName()));
return new ModelAndView("v_cobarDetail", new FluenceHashMap<String, Object>().putKeyValue("user", user).putKeyValue("cluster", clusterMap).putKeyValue("cobarNode", cobarMap));
}
use of org.apache.commons.beanutils.PropertyUtilsBean in project cobar by alibaba.
the class CobarListScreen method handleRequestInternal.
@SuppressWarnings({ "unchecked" })
@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) throws Exception {
UserDO user = (UserDO) request.getSession().getAttribute("user");
long clusterId = Long.parseLong(request.getParameter("clusterId"));
ClusterDO cluster = xmlAccesser.getClusterDAO().getClusterById(clusterId);
List<CobarDO> cobarList = xmlAccesser.getCobarDAO().getCobarList(clusterId);
ListSortUtil.sortCobarByName(cobarList);
int aCount = xmlAccesser.getCobarDAO().getCobarList(clusterId, ConstantDefine.ACTIVE).size();
int iCount = xmlAccesser.getCobarDAO().getCobarList(clusterId, ConstantDefine.IN_ACTIVE).size();
Map<String, Integer> count = new HashMap<String, Integer>();
count.put("aCount", aCount);
count.put("iCount", iCount);
count.put("tCount", (aCount + iCount));
PropertyUtilsBean util = new PropertyUtilsBean();
Map<String, Object> clusterMap;
try {
clusterMap = util.describe(cluster);
} catch (Exception ex) {
throw new RuntimeException(ex);
}
clusterMap.remove("class");
clusterMap.remove("name");
clusterMap.remove("deployDesc");
clusterMap.put("name", CobarStringUtil.htmlEscapedString(cluster.getName()));
clusterMap.put("deployDesc", CobarStringUtil.htmlEscapedString(cluster.getDeployDesc()));
List<Map<String, Object>> cobarListMap = new ArrayList<Map<String, Object>>();
for (CobarDO c : cobarList) {
Map<String, Object> cobarMap;
try {
cobarMap = util.describe(c);
} catch (Exception e) {
throw new RuntimeException(e);
}
cobarMap.remove("class");
cobarMap.remove("name");
cobarMap.put("name", CobarStringUtil.htmlEscapedString(c.getName()));
cobarListMap.add(cobarMap);
}
return new ModelAndView("v_cobarList", new FluenceHashMap<String, Object>().putKeyValue("cluster", clusterMap).putKeyValue("cobarList", cobarListMap).putKeyValue("count", count).putKeyValue("user", user));
}
use of org.apache.commons.beanutils.PropertyUtilsBean in project cobar by alibaba.
the class EditCobarPage method handleRequestInternal.
@SuppressWarnings("unchecked")
@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) throws Exception {
long cobarId = 0;
try {
cobarId = Long.parseLong(request.getParameter("cobarId").trim());
} catch (Exception e) {
throw new IllegalArgumentException("parameter 'cobarId' is invalid:" + request.getParameter("cobarId"));
}
CobarDO cobar = xmlAccesser.getCobarDAO().getCobarById(cobarId);
Map<String, Object> cobarMap = new PropertyUtilsBean().describe(cobar);
cobarMap.remove("class");
cobarMap.remove("name");
cobarMap.put("name", CobarStringUtil.htmlEscapedString(cobar.getName()));
List<ClusterDO> cList = xmlAccesser.getClusterDAO().listAllCluster();
List<Map<String, Object>> clusterList = new ArrayList<Map<String, Object>>();
for (ClusterDO e : cList) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("id", e.getId());
map.put("name", CobarStringUtil.htmlEscapedString(e.getName()));
clusterList.add(map);
}
return new ModelAndView("m_editCobar", new FluenceHashMap<String, Object>().putKeyValue("cluList", clusterList).putKeyValue("cobar", cobarMap));
}
use of org.apache.commons.beanutils.PropertyUtilsBean in project cobar by alibaba.
the class MClusterListScreen method handleRequestInternal.
@SuppressWarnings("unchecked")
@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) throws Exception {
UserDO user = (UserDO) request.getSession().getAttribute("user");
List<ClusterDO> list = xmlAccesser.getClusterDAO().listAllCluster();
List<Map<String, Object>> clusterList = new ArrayList<Map<String, Object>>();
ListSortUtil.sortClusterBySortId(list);
PropertyUtilsBean util = new PropertyUtilsBean();
for (ClusterDO e : list) {
int count = xmlAccesser.getCobarDAO().getCobarList(e.getId(), ConstantDefine.ACTIVE).size();
count += xmlAccesser.getCobarDAO().getCobarList(e.getId(), ConstantDefine.IN_ACTIVE).size();
Map<String, Object> map;
try {
map = util.describe(e);
} catch (Exception ex) {
throw new RuntimeException(ex);
}
map.remove("class");
map.remove("name");
map.remove("deployDesc");
map.put("name", CobarStringUtil.htmlEscapedString(e.getName()));
map.put("deployContact", CobarStringUtil.htmlEscapedString(e.getDeployContact()));
map.put("cobarNum", count);
clusterList.add(map);
}
return new ModelAndView("m_clusterList", new FluenceHashMap<String, Object>().putKeyValue("clusterList", clusterList).putKeyValue("user", user));
}
Aggregations