Skip to content

Commit

Permalink
[#10882] Add ServiceName + ApplicationName based ServerMap
Browse files Browse the repository at this point in the history
  • Loading branch information
intr3p1d committed Jul 9, 2024
1 parent 12985cc commit 24976b1
Show file tree
Hide file tree
Showing 38 changed files with 2,157 additions and 22 deletions.
2 changes: 2 additions & 0 deletions agent-module/agent-testweb/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,8 @@
<module>resilience4j-plugin-testweb</module>
<module>closed-module-testweb</module>
<module>closed-module-testlib</module>
<module>spring-boot3-testweb</module>
<module>spring-boot3-webflux-plugin-testweb</module>
</modules>

<dependencyManagement>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,8 @@
SchedulerConfiguration.class,
})
@ComponentScan({
"com.navercorp.pinpoint.collector.dao.hbase"
"com.navercorp.pinpoint.collector.dao.hbase",
"com.navercorp.pinpoint.collector.applicationmap.dao.hbase"
})
@PropertySource(name = "CollectorHbaseModule", value = {
"classpath:hbase-root.properties",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@
"com.navercorp.pinpoint.collector.mapper",
"com.navercorp.pinpoint.collector.util",
"com.navercorp.pinpoint.collector.service",
"com.navercorp.pinpoint.collector.applicationmap.service",
"com.navercorp.pinpoint.collector.controller",
})
public class PinpointCollectorModule {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
/*
* Copyright 2024 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.navercorp.pinpoint.collector.applicationmap.dao;

import com.navercorp.pinpoint.collector.dao.CachedStatisticsDao;
import com.navercorp.pinpoint.common.trace.ServiceType;

/**
* @author intr3p1d
*/
public interface InboundDao extends CachedStatisticsDao {
// src -> dest
// inbound (rowKey dest <- columnName src)
// outbound (rowKey src -> columnName dest)
void update(
String srcServiceName, String srcApplicationName, ServiceType srcApplicationType,
String destServiceName, String destApplicationName, ServiceType destApplicationType,
String srcHost, int elapsed, boolean isError
);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
/*
* Copyright 2024 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.navercorp.pinpoint.collector.applicationmap.dao;

import com.navercorp.pinpoint.collector.dao.CachedStatisticsDao;
import com.navercorp.pinpoint.common.trace.ServiceType;

/**
* @author intr3p1d
*/
public interface OutboundDao extends CachedStatisticsDao {
// src -> dest
// inbound (rowKey dest <- columnName src)
// outbound (rowKey src -> columnName dest)
void update(
String srcServiceName, String srcApplicationName, ServiceType srcApplicationType,
String destServiceName, String destApplicationName, ServiceType destApplicationType,
String srcHost, int elapsed, boolean isError
);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
/*
* Copyright 2024 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.navercorp.pinpoint.collector.applicationmap.dao;

import com.navercorp.pinpoint.collector.dao.CachedStatisticsDao;
import com.navercorp.pinpoint.common.trace.ServiceType;

/**
* @author intr3p1d
*/
public interface SelfDao extends CachedStatisticsDao {
void received(String serviceName, String applicationName, ServiceType applicationType, int elapsed, boolean isError);
void updatePing(String serviceName, String applicationName, ServiceType applicationType, int elapsed, boolean isError);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,131 @@
/*
* Copyright 2024 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.navercorp.pinpoint.collector.applicationmap.dao.hbase;

import com.navercorp.pinpoint.collector.applicationmap.dao.InboundDao;
import com.navercorp.pinpoint.collector.dao.hbase.IgnoreStatFilter;
import com.navercorp.pinpoint.collector.dao.hbase.statistics.BulkWriter;
import com.navercorp.pinpoint.collector.dao.hbase.statistics.ColumnName;
import com.navercorp.pinpoint.collector.dao.hbase.statistics.MapLinkConfiguration;
import com.navercorp.pinpoint.collector.dao.hbase.statistics.RowKey;
import com.navercorp.pinpoint.collector.applicationmap.dao.hbase.statistics.ApplicationMapColumnName;
import com.navercorp.pinpoint.collector.applicationmap.dao.hbase.statistics.ApplicationMapRowKey;
import com.navercorp.pinpoint.common.server.util.AcceptedTimeService;
import com.navercorp.pinpoint.common.server.util.ApplicationMapStatisticsUtils;
import com.navercorp.pinpoint.common.server.util.TimeSlot;
import com.navercorp.pinpoint.common.trace.HistogramSchema;
import com.navercorp.pinpoint.common.trace.ServiceType;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Repository;

import java.util.Objects;

/**
* @author intr3p1d
*/
@Repository
public class HbaseInboundDao implements InboundDao {

private final Logger logger = LogManager.getLogger(this.getClass());

Check warning on line 44 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L44

Added line #L44 was not covered by tests

private final AcceptedTimeService acceptedTimeService;

private final TimeSlot timeSlot;
private final IgnoreStatFilter ignoreStatFilter;
private final BulkWriter bulkWriter;
private final MapLinkConfiguration mapLinkConfiguration;

public HbaseInboundDao(
MapLinkConfiguration mapLinkConfiguration,
IgnoreStatFilter ignoreStatFilter,
AcceptedTimeService acceptedTimeService,
TimeSlot timeSlot,
@Qualifier("inboundBulkWriter") BulkWriter bulkWriter
) {
this.mapLinkConfiguration = Objects.requireNonNull(mapLinkConfiguration, "mapLinkConfiguration");
this.ignoreStatFilter = Objects.requireNonNull(ignoreStatFilter, "ignoreStatFilter");
this.acceptedTimeService = Objects.requireNonNull(acceptedTimeService, "acceptedTimeService");
this.timeSlot = Objects.requireNonNull(timeSlot, "timeSlot");

Check warning on line 63 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L59-L63

Added lines #L59 - L63 were not covered by tests

this.bulkWriter = Objects.requireNonNull(bulkWriter, "inboundBulkWriter");
}

Check warning on line 66 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L65-L66

Added lines #L65 - L66 were not covered by tests


@Override
public void update(
String srcServiceName, String srcApplicationName, ServiceType srcApplicationType,
String destServiceName, String destApplicationName, ServiceType destApplicationType,
String srcHost, int elapsed, boolean isError
) {
Objects.requireNonNull(srcServiceName, "srcServiceName");
Objects.requireNonNull(destServiceName, "destServiceName");
Objects.requireNonNull(srcApplicationName, "srcApplicationName");
Objects.requireNonNull(destServiceName, "destApplicationName");

Check warning on line 78 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L75-L78

Added lines #L75 - L78 were not covered by tests

if (logger.isDebugEnabled()) {
logger.debug("[Inbound] {} {}({}) <- {} {}({})[{}]",

Check warning on line 81 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L81

Added line #L81 was not covered by tests
destServiceName, destApplicationName, destApplicationType,
srcServiceName, srcApplicationName, srcApplicationType, srcHost
);
}


// TODO dest, src parameter normalization
if (ignoreStatFilter.filter(srcApplicationType, srcHost)) {
logger.debug("[Ignore-Inbound] {} {}({}) <- {} {}({})[{}]",

Check warning on line 90 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L90

Added line #L90 was not covered by tests
destServiceName, destApplicationName, destApplicationType,
srcServiceName, srcApplicationName, srcApplicationType, srcHost
);
return;

Check warning on line 94 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L94

Added line #L94 was not covered by tests
}

final long acceptedTime = acceptedTimeService.getAcceptedTime();
final long rowTimeSlot = timeSlot.getTimeSlot(acceptedTime);

Check warning on line 98 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L97-L98

Added lines #L97 - L98 were not covered by tests

// rowKey is dest in inbound
final RowKey destRowKey = new ApplicationMapRowKey(destServiceName, destApplicationType.getCode(), destApplicationName, rowTimeSlot);

Check warning on line 101 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L101

Added line #L101 was not covered by tests

// columnName is src in outbound
final short srcSlotNumber = ApplicationMapStatisticsUtils.getSlotNumber(srcApplicationType, elapsed, isError);
HistogramSchema histogramSchema = srcApplicationType.getHistogramSchema();

Check warning on line 105 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L104-L105

Added lines #L104 - L105 were not covered by tests

final ColumnName srcColumnName = new ApplicationMapColumnName(srcServiceName, srcApplicationType.getCode(), srcApplicationName, srcSlotNumber);
this.bulkWriter.increment(destRowKey, srcColumnName);

Check warning on line 108 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L107-L108

Added lines #L107 - L108 were not covered by tests

if (mapLinkConfiguration.isEnableAvg()) {
final ColumnName sumColumnName = new ApplicationMapColumnName(srcServiceName, srcApplicationType.getCode(), srcApplicationName, histogramSchema.getSumStatSlot().getSlotTime());
this.bulkWriter.increment(destRowKey, sumColumnName, elapsed);

Check warning on line 112 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L111-L112

Added lines #L111 - L112 were not covered by tests
}
if (mapLinkConfiguration.isEnableMax()) {
final ColumnName maxColumnName = new ApplicationMapColumnName(srcServiceName, srcApplicationType.getCode(), srcApplicationName, histogramSchema.getMaxStatSlot().getSlotTime());
this.bulkWriter.updateMax(destRowKey, maxColumnName, elapsed);

Check warning on line 116 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L115-L116

Added lines #L115 - L116 were not covered by tests
}

}

Check warning on line 119 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L119

Added line #L119 was not covered by tests

@Override
public void flushLink() {
this.bulkWriter.flushLink();
}

Check warning on line 124 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L123-L124

Added lines #L123 - L124 were not covered by tests

@Override
public void flushAvgMax() {
this.bulkWriter.flushAvgMax();
}

Check warning on line 129 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseInboundDao.java#L128-L129

Added lines #L128 - L129 were not covered by tests

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
/*
* Copyright 2024 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.navercorp.pinpoint.collector.applicationmap.dao.hbase;

import com.navercorp.pinpoint.collector.applicationmap.dao.OutboundDao;
import com.navercorp.pinpoint.collector.dao.hbase.IgnoreStatFilter;
import com.navercorp.pinpoint.collector.dao.hbase.statistics.BulkWriter;
import com.navercorp.pinpoint.collector.dao.hbase.statistics.ColumnName;
import com.navercorp.pinpoint.collector.dao.hbase.statistics.MapLinkConfiguration;
import com.navercorp.pinpoint.collector.dao.hbase.statistics.RowKey;
import com.navercorp.pinpoint.collector.applicationmap.dao.hbase.statistics.ApplicationMapColumnName;
import com.navercorp.pinpoint.collector.applicationmap.dao.hbase.statistics.ApplicationMapRowKey;
import com.navercorp.pinpoint.common.server.util.AcceptedTimeService;
import com.navercorp.pinpoint.common.server.util.ApplicationMapStatisticsUtils;
import com.navercorp.pinpoint.common.server.util.TimeSlot;
import com.navercorp.pinpoint.common.trace.HistogramSchema;
import com.navercorp.pinpoint.common.trace.ServiceType;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Repository;

import java.util.Objects;

/**
* @author intr3p1d
*/
@Repository
public class HbaseOutboundDao implements OutboundDao {

private final Logger logger = LogManager.getLogger(this.getClass());

Check warning on line 44 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java#L44

Added line #L44 was not covered by tests

private final AcceptedTimeService acceptedTimeService;

private final TimeSlot timeSlot;

private final BulkWriter bulkWriter;
private final MapLinkConfiguration mapLinkConfiguration;

public HbaseOutboundDao(
MapLinkConfiguration mapLinkConfiguration,
IgnoreStatFilter ignoreStatFilter,
AcceptedTimeService acceptedTimeService, TimeSlot timeSlot,
@Qualifier("outboundBulkWriter") BulkWriter bulkWriter
) {
this.mapLinkConfiguration = Objects.requireNonNull(mapLinkConfiguration, "mapLinkConfiguration");
this.acceptedTimeService = Objects.requireNonNull(acceptedTimeService, "acceptedTimeService");
this.timeSlot = Objects.requireNonNull(timeSlot, "timeSlot");

Check warning on line 61 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java#L58-L61

Added lines #L58 - L61 were not covered by tests

this.bulkWriter = Objects.requireNonNull(bulkWriter, "outboundBulkWriter");
}

Check warning on line 64 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java#L63-L64

Added lines #L63 - L64 were not covered by tests


@Override
public void update(
String srcServiceName, String srcApplicationName, ServiceType srcApplicationType,
String destServiceName, String destApplicationName, ServiceType destApplicationType,
String srcHost, int elapsed, boolean isError
) {
// outbound (rowKey src -> columnName dest)
Objects.requireNonNull(destServiceName, "destServiceName");
Objects.requireNonNull(srcServiceName, "srcServiceName");
Objects.requireNonNull(destApplicationName, "destApplicationName");
Objects.requireNonNull(srcServiceName, "srcApplicationName");

Check warning on line 77 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java#L74-L77

Added lines #L74 - L77 were not covered by tests

if (logger.isDebugEnabled()) {
logger.debug("[Outbound] {} {}({})[{}] -> {} {}({})",

Check warning on line 80 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java#L80

Added line #L80 was not covered by tests
srcServiceName, srcApplicationName, srcApplicationType, srcHost,
destServiceName, destApplicationName, destApplicationType
);
}

final long acceptedTime = acceptedTimeService.getAcceptedTime();
final long rowTimeSlot = timeSlot.getTimeSlot(acceptedTime);

Check warning on line 87 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java#L86-L87

Added lines #L86 - L87 were not covered by tests

// rowKey is src in outbound
final RowKey srcRowKey = new ApplicationMapRowKey(srcServiceName, srcApplicationType.getCode(), srcApplicationName, rowTimeSlot);

Check warning on line 90 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java#L90

Added line #L90 was not covered by tests

// columnName is dest in outbound
final short destSlotNumber = ApplicationMapStatisticsUtils.getSlotNumber(destApplicationType, elapsed, isError);
HistogramSchema histogramSchema = destApplicationType.getHistogramSchema();

Check warning on line 94 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java#L93-L94

Added lines #L93 - L94 were not covered by tests

final ColumnName destColumnName = new ApplicationMapColumnName(destServiceName, destApplicationType.getCode(), destApplicationName, destSlotNumber);
this.bulkWriter.increment(srcRowKey, destColumnName);

Check warning on line 97 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java#L96-L97

Added lines #L96 - L97 were not covered by tests

if (mapLinkConfiguration.isEnableAvg()) {
final ColumnName sumColumnName = new ApplicationMapColumnName(destServiceName, destApplicationType.getCode(), destApplicationName, histogramSchema.getSumStatSlot().getSlotTime());
this.bulkWriter.increment(srcRowKey, sumColumnName, elapsed);

Check warning on line 101 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java#L100-L101

Added lines #L100 - L101 were not covered by tests
}
if (mapLinkConfiguration.isEnableMax()) {
final ColumnName maxColumnName = new ApplicationMapColumnName(destServiceName, destApplicationType.getCode(), destApplicationName, histogramSchema.getMaxStatSlot().getSlotTime());
this.bulkWriter.updateMax(srcRowKey, maxColumnName, elapsed);

Check warning on line 105 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java#L104-L105

Added lines #L104 - L105 were not covered by tests
}
}

Check warning on line 107 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java#L107

Added line #L107 was not covered by tests


@Override
public void flushLink() {
this.bulkWriter.flushLink();
}

Check warning on line 113 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java#L112-L113

Added lines #L112 - L113 were not covered by tests

@Override
public void flushAvgMax() {
this.bulkWriter.flushAvgMax();
}

Check warning on line 118 in collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java

View check run for this annotation

Codecov / codecov/patch

collector/src/main/java/com/navercorp/pinpoint/collector/applicationmap/dao/hbase/HbaseOutboundDao.java#L117-L118

Added lines #L117 - L118 were not covered by tests

}
Loading

0 comments on commit 24976b1

Please sign in to comment.