提交 5d5f4de4 编写于 作者: wu-sheng's avatar wu-sheng

1.修改部分方法访问限制。

2.修改部分类名
上级 6d6c9c72
......@@ -7,14 +7,10 @@ import java.util.Date;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.conf.Configured;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.hbase.MetaTableAccessor;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.client.Scan;
import org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
import org.apache.hadoop.mapreduce.lib.output.NullOutputFormat;
import org.apache.hadoop.util.GenericOptionsParser;
import org.apache.hadoop.util.Tool;
......
......@@ -43,7 +43,7 @@ public class Categorize2ChainMapper extends TableMapper<Text, ChainInfo> {
}
public static ChainInfo spanToChainInfo(String key, List<Span> spanList) {
CostMap costMap = new CostMap();
SubLevelSpanCostCounter costMap = new SubLevelSpanCostCounter();
ChainInfo chainInfo = new ChainInfo();
Collections.sort(spanList, new Comparator<Span>() {
@Override
......
......@@ -27,7 +27,7 @@ public class Categorize2ChainReducer extends Reducer<Text, ChainInfo, Text, IntW
int totalCount = 0;
try {
ChainRelationship chainRelate = HBaseUtil.selectCallChainRelationship(key.toString());
Summary summary = new Summary();
ChainSummary summary = new ChainSummary();
while (chainInfoIterator.hasNext()) {
ChainInfo chainInfo = chainInfoIterator.next();
try {
......
......@@ -12,12 +12,12 @@ import java.text.SimpleDateFormat;
import java.util.*;
import java.util.Date;
public class Summary {
public class ChainSummary {
private Map<String, ChainSpecificTimeWindowSummary> summaryResultMap;
private Map<String, Timestamp> updateChainInfo;
public Summary() {
public ChainSummary() {
summaryResultMap = new HashMap<String, ChainSpecificTimeWindowSummary>();
updateChainInfo = new HashMap<String, Timestamp>();
}
......
......@@ -8,7 +8,6 @@ public class SpanEntry {
private Span clientSpan;
private Span serverSpan;
private String startTime;
public SpanEntry() {
......@@ -66,7 +65,7 @@ public class SpanEntry {
return resultCost;
}
public long getClientCost() {
private long getClientCost() {
if (clientSpan != null) {
return clientSpan.getCost();
}
......@@ -74,7 +73,7 @@ public class SpanEntry {
return 0;
}
public long getServerCost() {
private long getServerCost() {
if (serverSpan != null) {
return serverSpan.getCost();
}
......
......@@ -3,7 +3,7 @@ package com.ai.cloud.skywalking.analysis.categorize2chain;
import java.util.HashMap;
import java.util.Map;
public class CostMap {
public class SubLevelSpanCostCounter {
private Map<String, Long> costs = new HashMap<String, Long>();
public void put(String parentLevel, Long cost) {
......
package com.ai.cloud.skywalking.analysis.categorize2chain.filter;
import com.ai.cloud.skywalking.analysis.categorize2chain.CostMap;
import com.ai.cloud.skywalking.analysis.categorize2chain.SubLevelSpanCostCounter;
import com.ai.cloud.skywalking.analysis.categorize2chain.SpanEntry;
import com.ai.cloud.skywalking.analysis.categorize2chain.model.ChainNode;
......@@ -8,9 +8,9 @@ public abstract class SpanNodeProcessFilter {
private SpanNodeProcessFilter nextProcessChain;
public abstract void doFilter(SpanEntry spanEntry, ChainNode node, CostMap costMap);
public abstract void doFilter(SpanEntry spanEntry, ChainNode node, SubLevelSpanCostCounter costMap);
protected void doNext(SpanEntry spanEntry, ChainNode node, CostMap costMap){
protected void doNext(SpanEntry spanEntry, ChainNode node, SubLevelSpanCostCounter costMap){
if(nextProcessChain != null){
nextProcessChain.doFilter(spanEntry, node, costMap);
}
......
package com.ai.cloud.skywalking.analysis.categorize2chain.filter.impl;
import com.ai.cloud.skywalking.analysis.categorize2chain.CostMap;
import com.ai.cloud.skywalking.analysis.categorize2chain.SubLevelSpanCostCounter;
import com.ai.cloud.skywalking.analysis.categorize2chain.SpanEntry;
import com.ai.cloud.skywalking.analysis.categorize2chain.filter.SpanNodeProcessFilter;
import com.ai.cloud.skywalking.analysis.categorize2chain.model.ChainNode;
......@@ -8,7 +8,7 @@ import com.ai.cloud.skywalking.analysis.categorize2chain.model.ChainNode;
public class AppendBusinessKeyFilter extends SpanNodeProcessFilter {
@Override
public void doFilter(SpanEntry spanEntry, ChainNode node, CostMap costMap) {
public void doFilter(SpanEntry spanEntry, ChainNode node, SubLevelSpanCostCounter costMap) {
node.setViewPoint(node.getViewPoint() + spanEntry.getBusinessKey());
this.doNext(spanEntry, node, costMap);
......
package com.ai.cloud.skywalking.analysis.categorize2chain.filter.impl;
import com.ai.cloud.skywalking.analysis.categorize2chain.CostMap;
import com.ai.cloud.skywalking.analysis.categorize2chain.SubLevelSpanCostCounter;
import com.ai.cloud.skywalking.analysis.categorize2chain.SpanEntry;
import com.ai.cloud.skywalking.analysis.categorize2chain.filter.SpanNodeProcessFilter;
import com.ai.cloud.skywalking.analysis.categorize2chain.model.ChainNode;
......@@ -8,7 +8,7 @@ import com.ai.cloud.skywalking.analysis.categorize2chain.model.ChainNode;
public class CopyAttrFilter extends SpanNodeProcessFilter {
@Override
public void doFilter(SpanEntry spanEntry, ChainNode node, CostMap costMap) {
public void doFilter(SpanEntry spanEntry, ChainNode node, SubLevelSpanCostCounter costMap) {
node.setCallType(spanEntry.getCallType().toString());
node.setStatus(spanEntry.getSpanStatus());
node.setLevelId(spanEntry.getLevelId());
......
package com.ai.cloud.skywalking.analysis.categorize2chain.filter.impl;
import com.ai.cloud.skywalking.analysis.categorize2chain.CostMap;
import com.ai.cloud.skywalking.analysis.categorize2chain.SubLevelSpanCostCounter;
import com.ai.cloud.skywalking.analysis.categorize2chain.SpanEntry;
import com.ai.cloud.skywalking.analysis.categorize2chain.filter.SpanNodeProcessFilter;
import com.ai.cloud.skywalking.analysis.categorize2chain.model.ChainNode;
public class ProcessCostTimeFilter extends SpanNodeProcessFilter {
@Override
public void doFilter(SpanEntry spanEntry, ChainNode node, CostMap costMap) {
public void doFilter(SpanEntry spanEntry, ChainNode node, SubLevelSpanCostCounter costMap) {
node.setCost(spanEntry.getCost());
this.saveCostAsSubNodeCost(spanEntry, node, costMap);
......@@ -17,7 +17,7 @@ public class ProcessCostTimeFilter extends SpanNodeProcessFilter {
}
private void saveCostAsSubNodeCost(SpanEntry spanEntry, ChainNode node,
CostMap costMap) {
SubLevelSpanCostCounter costMap) {
long subNodeCost = spanEntry.getCost();
if (costMap.exists(spanEntry.getParentLevelId())) {
subNodeCost += costMap.get(spanEntry.getParentLevelId());
......@@ -26,7 +26,7 @@ public class ProcessCostTimeFilter extends SpanNodeProcessFilter {
costMap.put(spanEntry.getParentLevelId(), subNodeCost);
}
private void computeChainNodeCost(CostMap costMap, ChainNode node) {
private void computeChainNodeCost(SubLevelSpanCostCounter costMap, ChainNode node) {
String levelId = node.getParentLevelId();
if (levelId != null && levelId.length() > 0) {
levelId += ".";
......
package com.ai.cloud.skywalking.analysis.categorize2chain.filter.impl;
import com.ai.cloud.skywalking.analysis.categorize2chain.CostMap;
import com.ai.cloud.skywalking.analysis.categorize2chain.SubLevelSpanCostCounter;
import com.ai.cloud.skywalking.analysis.categorize2chain.SpanEntry;
import com.ai.cloud.skywalking.analysis.categorize2chain.filter.SpanNodeProcessFilter;
import com.ai.cloud.skywalking.analysis.categorize2chain.model.ChainNode;
......@@ -11,7 +11,7 @@ public class ReplaceAddressFilter extends SpanNodeProcessFilter {
private static String IP_PORT_REGEX = "(([0-9]|[1-9][0-9]|1([0-9][0-9])|2([0-4][0-9]|5[0-5]))\\.([0-9]|[1-9][0-9]|1([0-9][0-9])|2([0-4][0-9]|5[0-5]))\\.([0-9]|[1-9][0-9]|1([0-9][0-9])|2([0-4][0-9]|5[0-5]))\\.([0-9]|[1-9][0-9]|1([0-9][0-9])|2([0-4][0-9]|5[0-5]))|localhost):([1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5]|[0-9]{1,4})";
@Override
public void doFilter(SpanEntry spanEntry, ChainNode node, CostMap costMap) {
public void doFilter(SpanEntry spanEntry, ChainNode node, SubLevelSpanCostCounter costMap) {
String viewPoint = spanEntry.getViewPoint().replaceAll(IP_PORT_REGEX, spanEntry.getApplicationId());
node.setViewPoint(viewPoint);
......
package com.ai.cloud.skywalking.analysis.categorize2chain.filter.impl;
import com.ai.cloud.skywalking.analysis.categorize2chain.CostMap;
import com.ai.cloud.skywalking.analysis.categorize2chain.SubLevelSpanCostCounter;
import com.ai.cloud.skywalking.analysis.categorize2chain.SpanEntry;
import com.ai.cloud.skywalking.analysis.categorize2chain.filter.SpanNodeProcessFilter;
import com.ai.cloud.skywalking.analysis.categorize2chain.model.ChainNode;
......@@ -9,7 +9,7 @@ import com.ai.cloud.skywalking.analysis.util.TokenGenerator;
public class TokenGenerateFilter extends SpanNodeProcessFilter {
@Override
public void doFilter(SpanEntry spanEntry, ChainNode node, CostMap costMap) {
public void doFilter(SpanEntry spanEntry, ChainNode node, SubLevelSpanCostCounter costMap) {
String nodeToken = TokenGenerator.generateNodeToken(node.getParentLevelId() + "." + node.getLevelId() +
"-" + node.getViewPoint());
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册