Search in sources :

Example 6 with ScatterData

use of com.navercorp.pinpoint.web.scatter.ScatterData in project pinpoint by naver.

the class HbaseApplicationTraceIndexDao method scanTraceScatterData.

@Override
public ScatterData scanTraceScatterData(String applicationName, Range range, int xGroupUnit, int yGroupUnit, int limit, boolean scanBackward) {
    if (applicationName == null) {
        throw new NullPointerException("applicationName must not be null");
    }
    if (range == null) {
        throw new NullPointerException("range must not be null");
    }
    if (limit < 0) {
        throw new IllegalArgumentException("negative limit:" + limit);
    }
    logger.debug("scanTraceScatterDataMadeOfDotGroup");
    Scan scan = createScan(applicationName, range, scanBackward);
    TraceIndexScatterMapper3 mapper = new TraceIndexScatterMapper3(range.getFrom(), range.getTo(), xGroupUnit, yGroupUnit);
    List<ScatterData> dotGroupList = hbaseOperations2.findParallel(HBaseTables.APPLICATION_TRACE_INDEX, scan, traceIdRowKeyDistributor, limit, mapper, APPLICATION_TRACE_INDEX_NUM_PARTITIONS);
    if (CollectionUtils.isEmpty(dotGroupList)) {
        return new ScatterData(range.getFrom(), range.getTo(), xGroupUnit, yGroupUnit);
    } else {
        ScatterData firstScatterData = dotGroupList.get(0);
        for (int i = 1; i < dotGroupList.size(); i++) {
            firstScatterData.merge(dotGroupList.get(i));
        }
        return firstScatterData;
    }
}
Also used : TraceIndexScatterMapper3(com.navercorp.pinpoint.web.mapper.TraceIndexScatterMapper3) Scan(org.apache.hadoop.hbase.client.Scan) ScatterData(com.navercorp.pinpoint.web.scatter.ScatterData)

Example 7 with ScatterData

use of com.navercorp.pinpoint.web.scatter.ScatterData in project pinpoint by naver.

the class TraceIndexScatterMapper3 method mapRow.

@Override
public ScatterData mapRow(Result result, int rowNum) throws Exception {
    if (result.isEmpty()) {
        return new ScatterData(from, to, xGroupUnit, yGroupUnit);
    }
    ScatterData scatterData = new ScatterData(from, to, xGroupUnit, yGroupUnit);
    Cell[] rawCells = result.rawCells();
    for (Cell cell : rawCells) {
        final Dot dot = createDot(cell);
        if (dot != null) {
            scatterData.addDot(dot);
        }
    }
    return scatterData;
}
Also used : Dot(com.navercorp.pinpoint.web.vo.scatter.Dot) Cell(org.apache.hadoop.hbase.Cell) ScatterData(com.navercorp.pinpoint.web.scatter.ScatterData)

Aggregations

ScatterData (com.navercorp.pinpoint.web.scatter.ScatterData)7 Dot (com.navercorp.pinpoint.web.vo.scatter.Dot)3 List (java.util.List)3 TransactionId (com.navercorp.pinpoint.common.util.TransactionId)2 ServerTime (com.navercorp.pinpoint.web.view.ServerTime)2 ArrayList (java.util.ArrayList)2 Map (java.util.Map)2 ModelAndView (org.springframework.web.servlet.ModelAndView)2 SpanBo (com.navercorp.pinpoint.common.server.bo.SpanBo)1 ApplicationMapWithScatterData (com.navercorp.pinpoint.web.applicationmap.ApplicationMapWithScatterData)1 ApplicationMapWithScatterScanResult (com.navercorp.pinpoint.web.applicationmap.ApplicationMapWithScatterScanResult)1 Filter (com.navercorp.pinpoint.web.filter.Filter)1 TraceIndexScatterMapper3 (com.navercorp.pinpoint.web.mapper.TraceIndexScatterMapper3)1 Application (com.navercorp.pinpoint.web.vo.Application)1 ApplicationScatterScanResult (com.navercorp.pinpoint.web.vo.scatter.ApplicationScatterScanResult)1 HashMap (java.util.HashMap)1 Cell (org.apache.hadoop.hbase.Cell)1 Scan (org.apache.hadoop.hbase.client.Scan)1