提交 0c9d978f 编写于 作者: Y yong.you

modify the state analyzer

上级 df803fe0
......@@ -10,6 +10,7 @@ import com.dianping.cat.abtest.spi.internal.ABTestCodecTest;
import com.dianping.cat.abtest.spi.internal.ABTestContextTest;
import com.dianping.cat.abtest.spi.internal.ABTestEntityManagerTest;
import com.dianping.cat.abtest.spi.internal.groupstrategy.TrafficDistributionGroupStrategyTest;
import com.dianping.cat.agent.MmapConsumerTaskTest;
import com.dianping.cat.configuration.ConfigTest;
import com.dianping.cat.log4j.CatAppenderTest;
import com.dianping.cat.message.EventTest;
......@@ -32,7 +33,7 @@ CatAppenderTest.class,
MessageTest.class,
/* .abtest */
TrafficDistributionGroupStrategyTest.class,
TrafficDistributionGroupStrategyTest.class,
ABTestCodecTest.class,
......@@ -69,7 +70,9 @@ CatFilterTest.class,
/* .tool */
ToolsTest.class,
CatTest.class
CatTest.class,
MmapConsumerTaskTest.class
})
public class AllTests {
......
......@@ -37,10 +37,10 @@ public class StateAnalyzer extends AbstractMessageAnalyzer<StateReport> implemen
@Inject
private DomainManager m_domainManager;
@Inject
private ServerConfigManager m_serverConfigManager;
@Inject
private String m_ip = NetworkInterfaceManager.INSTANCE.getLocalHostAddress();
......@@ -78,7 +78,7 @@ public class StateAnalyzer extends AbstractMessageAnalyzer<StateReport> implemen
long value = entry.getValue().get();
ProcessDomain domain = machine.findOrCreateProcessDomain(key);
Detail detail = domain.findOrCreateDetail(start);
if (totals.containsKey(key)) {
domain.setTotal(value + domain.getTotal());
detail.setTotal(value);
......@@ -185,7 +185,7 @@ public class StateAnalyzer extends AbstractMessageAnalyzer<StateReport> implemen
@Override
public StateReport getReport(String domain) {
StateReport report = new StateReport(Constants.CAT);
report.setStartTime(new Date(m_startTime));
report.setEndTime(new Date(m_startTime + MINUTE * 60 - 1));
report.getMachines().clear();
......@@ -221,17 +221,14 @@ public class StateAnalyzer extends AbstractMessageAnalyzer<StateReport> implemen
if (ipInfo == null) {
m_domainManager.insert(domain, ip);
} else if (!ipInfo.getIp().equals(ip)) {
String localIp = NetworkInterfaceManager.INSTANCE.getLocalHostAddress();
} else if (!ipInfo.getDomain().equals(domain)) {
// only work on online environment
if (localIp.startsWith("10.")) {
long current = System.currentTimeMillis();
long lastModifyTime = ipInfo.getLastModifiedDate().getTime();
if (current - lastModifyTime > ONE_HOUR) {
m_domainManager.update(ipInfo.getId(), domain, ip);
m_logger.info(String.format("change ip %s to domain %s", ipInfo.getIp(), domain));
}
long current = System.currentTimeMillis();
long lastModifyTime = ipInfo.getLastModifiedDate().getTime();
if (current - lastModifyTime > ONE_HOUR) {
m_domainManager.update(ipInfo.getId(), domain, ip);
m_logger.info(String.format("change ip %s to domain %s", ipInfo.getIp(), domain));
}
}
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册