提交 21978fb3 编写于 作者: Y yong.you

modify the cat last hour report

上级 a215653a
...@@ -69,7 +69,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator { ...@@ -69,7 +69,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator {
List<Component> all = new ArrayList<Component>(); List<Component> all = new ArrayList<Component>();
all.add(C(ModelService.class, "transaction-local", LocalTransactionService.class) // all.add(C(ModelService.class, "transaction-local", LocalTransactionService.class) //
.req(ReportService.class) // .req(BucketManager.class) //
.req(MessageConsumer.class)); .req(MessageConsumer.class));
all.add(C(ModelService.class, "transaction-historical", HistoricalTransactionService.class) // all.add(C(ModelService.class, "transaction-historical", HistoricalTransactionService.class) //
.req(BucketManager.class, ReportService.class)); .req(BucketManager.class, ReportService.class));
...@@ -78,7 +78,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator { ...@@ -78,7 +78,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator {
.req(ModelService.class, new String[] { "transaction-historical" }, "m_services")); .req(ModelService.class, new String[] { "transaction-historical" }, "m_services"));
all.add(C(ModelService.class, "event-local", LocalEventService.class) // all.add(C(ModelService.class, "event-local", LocalEventService.class) //
.req(ReportService.class) // .req(BucketManager.class) //
.req(MessageConsumer.class)); .req(MessageConsumer.class));
all.add(C(ModelService.class, "event-historical", HistoricalEventService.class) // all.add(C(ModelService.class, "event-historical", HistoricalEventService.class) //
.req(BucketManager.class, ReportService.class)); .req(BucketManager.class, ReportService.class));
...@@ -87,7 +87,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator { ...@@ -87,7 +87,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator {
.req(ModelService.class, new String[] { "event-historical" }, "m_services")); .req(ModelService.class, new String[] { "event-historical" }, "m_services"));
all.add(C(ModelService.class, "problem-local", LocalProblemService.class) // all.add(C(ModelService.class, "problem-local", LocalProblemService.class) //
.req(ReportService.class) // .req(BucketManager.class) //
.req(MessageConsumer.class)); .req(MessageConsumer.class));
all.add(C(ModelService.class, "problem-historical", HistoricalProblemService.class) // all.add(C(ModelService.class, "problem-historical", HistoricalProblemService.class) //
.req(BucketManager.class, ReportService.class)); .req(BucketManager.class, ReportService.class));
...@@ -96,7 +96,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator { ...@@ -96,7 +96,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator {
.req(ModelService.class, new String[] { "problem-historical" }, "m_services")); .req(ModelService.class, new String[] { "problem-historical" }, "m_services"));
all.add(C(ModelService.class, "heartbeat-local", LocalHeartbeatService.class) // all.add(C(ModelService.class, "heartbeat-local", LocalHeartbeatService.class) //
.req(ReportService.class) // .req(BucketManager.class) //
.req(MessageConsumer.class)); .req(MessageConsumer.class));
all.add(C(ModelService.class, "heartbeat-historical", HistoricalHeartbeatService.class) // all.add(C(ModelService.class, "heartbeat-historical", HistoricalHeartbeatService.class) //
.req(BucketManager.class, ReportService.class)); .req(BucketManager.class, ReportService.class));
...@@ -105,7 +105,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator { ...@@ -105,7 +105,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator {
.req(ModelService.class, new String[] { "heartbeat-historical" }, "m_services")); .req(ModelService.class, new String[] { "heartbeat-historical" }, "m_services"));
all.add(C(ModelService.class, "matrix-local", LocalMatrixService.class) // all.add(C(ModelService.class, "matrix-local", LocalMatrixService.class) //
.req(ReportService.class) // .req(BucketManager.class) //
.req(MessageConsumer.class)); .req(MessageConsumer.class));
all.add(C(ModelService.class, "matrix-historical", HistoricalMatrixService.class) // all.add(C(ModelService.class, "matrix-historical", HistoricalMatrixService.class) //
.req(BucketManager.class, ReportService.class)); .req(BucketManager.class, ReportService.class));
...@@ -114,7 +114,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator { ...@@ -114,7 +114,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator {
.req(ModelService.class, new String[] { "matrix-historical" }, "m_services")); .req(ModelService.class, new String[] { "matrix-historical" }, "m_services"));
all.add(C(ModelService.class, "state-local", LocalStateService.class) // all.add(C(ModelService.class, "state-local", LocalStateService.class) //
.req(ReportService.class) // .req(BucketManager.class) //
.req(MessageConsumer.class)); .req(MessageConsumer.class));
all.add(C(ModelService.class, "state-historical", HistoricalStateService.class) // all.add(C(ModelService.class, "state-historical", HistoricalStateService.class) //
.req(BucketManager.class, ReportService.class)); .req(BucketManager.class, ReportService.class));
...@@ -123,7 +123,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator { ...@@ -123,7 +123,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator {
.req(ModelService.class, new String[] { "state-historical" }, "m_services")); .req(ModelService.class, new String[] { "state-historical" }, "m_services"));
all.add(C(ModelService.class, "cross-local", LocalCrossService.class) // all.add(C(ModelService.class, "cross-local", LocalCrossService.class) //
.req(ReportService.class) // .req(BucketManager.class) //
.req(MessageConsumer.class)); .req(MessageConsumer.class));
all.add(C(ModelService.class, "cross-historical", HistoricalCrossService.class) // all.add(C(ModelService.class, "cross-historical", HistoricalCrossService.class) //
.req(BucketManager.class, ReportService.class)); .req(BucketManager.class, ReportService.class));
...@@ -132,7 +132,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator { ...@@ -132,7 +132,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator {
.req(ModelService.class, new String[] { "cross-historical" }, "m_services")); .req(ModelService.class, new String[] { "cross-historical" }, "m_services"));
all.add(C(ModelService.class, "sql-local", LocalSqlService.class) // all.add(C(ModelService.class, "sql-local", LocalSqlService.class) //
.req(ReportService.class) // .req(BucketManager.class) //
.req(MessageConsumer.class)); .req(MessageConsumer.class));
all.add(C(ModelService.class, "sql-historical", HistoricalSqlService.class) // all.add(C(ModelService.class, "sql-historical", HistoricalSqlService.class) //
.req(BucketManager.class, ReportService.class)); .req(BucketManager.class, ReportService.class));
...@@ -141,7 +141,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator { ...@@ -141,7 +141,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator {
.req(ModelService.class, new String[] { "sql-historical" }, "m_services")); .req(ModelService.class, new String[] { "sql-historical" }, "m_services"));
all.add(C(ModelService.class, "top-local", LocalTopService.class) // all.add(C(ModelService.class, "top-local", LocalTopService.class) //
.req(ReportService.class) // .req(BucketManager.class) //
.req(MessageConsumer.class)); .req(MessageConsumer.class));
all.add(C(ModelService.class, "top-historical", HistoricalTopService.class) // all.add(C(ModelService.class, "top-historical", HistoricalTopService.class) //
.req(BucketManager.class, ReportService.class)); .req(BucketManager.class, ReportService.class));
...@@ -150,7 +150,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator { ...@@ -150,7 +150,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator {
.req(ModelService.class, new String[] { "top-historical" }, "m_services")); .req(ModelService.class, new String[] { "top-historical" }, "m_services"));
all.add(C(ModelService.class, "dependency-local", LocalDependencyService.class) // all.add(C(ModelService.class, "dependency-local", LocalDependencyService.class) //
.req(ReportService.class) // .req(BucketManager.class) //
.req(MessageConsumer.class)); .req(MessageConsumer.class));
all.add(C(ModelService.class, "dependency-historical", HistoricalDependencyService.class) // all.add(C(ModelService.class, "dependency-historical", HistoricalDependencyService.class) //
.req(BucketManager.class, ReportService.class)); .req(BucketManager.class, ReportService.class));
...@@ -159,7 +159,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator { ...@@ -159,7 +159,7 @@ class ServiceComponentConfigurator extends AbstractResourceConfigurator {
.req(ModelService.class, new String[] { "dependency-historical" }, "m_services")); .req(ModelService.class, new String[] { "dependency-historical" }, "m_services"));
all.add(C(ModelService.class, "metric-local", LocalMetricService.class) // all.add(C(ModelService.class, "metric-local", LocalMetricService.class) //
.req(ReportService.class) // .req(BucketManager.class) //
.req(MessageConsumer.class)); .req(MessageConsumer.class));
all.add(C(ModelService.class, "metric-historical", HistoricalMetricService.class) // all.add(C(ModelService.class, "metric-historical", HistoricalMetricService.class) //
.req(BucketManager.class, ReportService.class)); .req(BucketManager.class, ReportService.class));
......
package com.dianping.cat.report.page.model.cross; package com.dianping.cat.report.page.model.cross;
import java.util.Date;
import org.unidal.lookup.annotation.Inject; import org.unidal.lookup.annotation.Inject;
import com.dianping.cat.consumer.cross.CrossAnalyzer; import com.dianping.cat.consumer.cross.CrossAnalyzer;
import com.dianping.cat.consumer.cross.model.entity.CrossReport; import com.dianping.cat.consumer.cross.model.entity.CrossReport;
import com.dianping.cat.helper.TimeUtil; import com.dianping.cat.consumer.cross.model.transform.DefaultSaxParser;
import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService; import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService;
import com.dianping.cat.report.service.ReportService;
import com.dianping.cat.service.ModelPeriod; import com.dianping.cat.service.ModelPeriod;
import com.dianping.cat.service.ModelRequest; import com.dianping.cat.service.ModelRequest;
import com.dianping.cat.storage.Bucket;
import com.dianping.cat.storage.BucketManager;
public class LocalCrossService extends BaseLocalModelService<CrossReport> { public class LocalCrossService extends BaseLocalModelService<CrossReport> {
@Inject @Inject
private ReportService m_reportService; private BucketManager m_bucketManager;
public LocalCrossService() { public LocalCrossService() {
super(CrossAnalyzer.ID); super(CrossAnalyzer.ID);
...@@ -26,12 +25,20 @@ public class LocalCrossService extends BaseLocalModelService<CrossReport> { ...@@ -26,12 +25,20 @@ public class LocalCrossService extends BaseLocalModelService<CrossReport> {
CrossReport report = super.getReport(request, period, domain); CrossReport report = super.getReport(request, period, domain);
if (report == null && period.isLast()) { if (report == null && period.isLast()) {
long startTime = request.getStartTime(); report = getReportFromLocalDisk(request.getStartTime(), domain);
Date start = new Date(startTime);
Date end = new Date(startTime + TimeUtil.ONE_HOUR);
report = m_reportService.queryCrossReport(domain, start, end);
} }
return report; return report;
} }
private CrossReport getReportFromLocalDisk(long timestamp, String domain) throws Exception {
Bucket<String> bucket = null;
try {
bucket = m_bucketManager.getReportBucket(timestamp, CrossAnalyzer.ID);
String xml = bucket.findById(domain);
return xml == null ? null : DefaultSaxParser.parse(xml);
} finally {
bucket.close();
}
}
} }
package com.dianping.cat.report.page.model.dependency; package com.dianping.cat.report.page.model.dependency;
import java.util.Date;
import org.unidal.lookup.annotation.Inject; import org.unidal.lookup.annotation.Inject;
import com.dianping.cat.consumer.dependency.DependencyAnalyzer; import com.dianping.cat.consumer.dependency.DependencyAnalyzer;
import com.dianping.cat.consumer.dependency.model.entity.DependencyReport; import com.dianping.cat.consumer.dependency.model.entity.DependencyReport;
import com.dianping.cat.helper.TimeUtil; import com.dianping.cat.consumer.dependency.model.transform.DefaultSaxParser;
import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService; import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService;
import com.dianping.cat.report.service.ReportService;
import com.dianping.cat.service.ModelPeriod; import com.dianping.cat.service.ModelPeriod;
import com.dianping.cat.service.ModelRequest; import com.dianping.cat.service.ModelRequest;
import com.dianping.cat.storage.Bucket;
import com.dianping.cat.storage.BucketManager;
public class LocalDependencyService extends BaseLocalModelService<DependencyReport> { public class LocalDependencyService extends BaseLocalModelService<DependencyReport> {
@Inject @Inject
private ReportService m_reportService; private BucketManager m_bucketManager;
public LocalDependencyService() { public LocalDependencyService() {
super(DependencyAnalyzer.ID); super(DependencyAnalyzer.ID);
...@@ -26,12 +25,20 @@ public class LocalDependencyService extends BaseLocalModelService<DependencyRepo ...@@ -26,12 +25,20 @@ public class LocalDependencyService extends BaseLocalModelService<DependencyRepo
DependencyReport report = super.getReport(request, period, domain); DependencyReport report = super.getReport(request, period, domain);
if (report == null && period.isLast()) { if (report == null && period.isLast()) {
long startTime = request.getStartTime(); report = getReportFromLocalDisk(request.getStartTime(), domain);
Date start = new Date(startTime);
Date end = new Date(startTime + TimeUtil.ONE_HOUR);
report = m_reportService.queryDependencyReport(domain, start, end);
} }
return report; return report;
} }
private DependencyReport getReportFromLocalDisk(long timestamp, String domain) throws Exception {
Bucket<String> bucket = null;
try {
bucket = m_bucketManager.getReportBucket(timestamp, DependencyAnalyzer.ID);
String xml = bucket.findById(domain);
return xml == null ? null : DefaultSaxParser.parse(xml);
} finally {
bucket.close();
}
}
} }
package com.dianping.cat.report.page.model.event; package com.dianping.cat.report.page.model.event;
import java.util.Date;
import org.unidal.lookup.annotation.Inject; import org.unidal.lookup.annotation.Inject;
import com.dianping.cat.consumer.event.EventAnalyzer; import com.dianping.cat.consumer.event.EventAnalyzer;
import com.dianping.cat.consumer.event.model.entity.EventReport; import com.dianping.cat.consumer.event.model.entity.EventReport;
import com.dianping.cat.helper.TimeUtil; import com.dianping.cat.consumer.event.model.transform.DefaultSaxParser;
import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService; import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService;
import com.dianping.cat.report.service.ReportService;
import com.dianping.cat.service.ModelPeriod; import com.dianping.cat.service.ModelPeriod;
import com.dianping.cat.service.ModelRequest; import com.dianping.cat.service.ModelRequest;
import com.dianping.cat.storage.Bucket;
import com.dianping.cat.storage.BucketManager;
public class LocalEventService extends BaseLocalModelService<EventReport> { public class LocalEventService extends BaseLocalModelService<EventReport> {
@Inject @Inject
private ReportService m_reportService; private BucketManager m_bucketManager;
public LocalEventService() { public LocalEventService() {
super(EventAnalyzer.ID); super(EventAnalyzer.ID);
...@@ -26,12 +25,20 @@ public class LocalEventService extends BaseLocalModelService<EventReport> { ...@@ -26,12 +25,20 @@ public class LocalEventService extends BaseLocalModelService<EventReport> {
EventReport report = super.getReport(request, period, domain); EventReport report = super.getReport(request, period, domain);
if (report == null && period.isLast()) { if (report == null && period.isLast()) {
long startTime = request.getStartTime(); report = getReportFromLocalDisk(request.getStartTime(), domain);
Date start = new Date(startTime);
Date end = new Date(startTime + TimeUtil.ONE_HOUR);
report = m_reportService.queryEventReport(domain, start, end);
} }
return report; return report;
} }
private EventReport getReportFromLocalDisk(long timestamp, String domain) throws Exception {
Bucket<String> bucket = null;
try {
bucket = m_bucketManager.getReportBucket(timestamp, EventAnalyzer.ID);
String xml = bucket.findById(domain);
return xml == null ? null : DefaultSaxParser.parse(xml);
} finally {
bucket.close();
}
}
} }
package com.dianping.cat.report.page.model.heartbeat; package com.dianping.cat.report.page.model.heartbeat;
import java.util.Date;
import org.unidal.lookup.annotation.Inject; import org.unidal.lookup.annotation.Inject;
import com.dianping.cat.consumer.heartbeat.HeartbeatAnalyzer; import com.dianping.cat.consumer.heartbeat.HeartbeatAnalyzer;
import com.dianping.cat.consumer.heartbeat.model.entity.HeartbeatReport; import com.dianping.cat.consumer.heartbeat.model.entity.HeartbeatReport;
import com.dianping.cat.helper.TimeUtil; import com.dianping.cat.consumer.heartbeat.model.transform.DefaultSaxParser;
import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService; import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService;
import com.dianping.cat.report.service.ReportService;
import com.dianping.cat.service.ModelPeriod; import com.dianping.cat.service.ModelPeriod;
import com.dianping.cat.service.ModelRequest; import com.dianping.cat.service.ModelRequest;
import com.dianping.cat.storage.Bucket;
import com.dianping.cat.storage.BucketManager;
public class LocalHeartbeatService extends BaseLocalModelService<HeartbeatReport> { public class LocalHeartbeatService extends BaseLocalModelService<HeartbeatReport> {
@Inject @Inject
private ReportService m_reportService; private BucketManager m_bucketManager;
public LocalHeartbeatService() { public LocalHeartbeatService() {
super(HeartbeatAnalyzer.ID); super(HeartbeatAnalyzer.ID);
...@@ -25,12 +24,20 @@ public class LocalHeartbeatService extends BaseLocalModelService<HeartbeatReport ...@@ -25,12 +24,20 @@ public class LocalHeartbeatService extends BaseLocalModelService<HeartbeatReport
HeartbeatReport report = super.getReport(request, period, domain); HeartbeatReport report = super.getReport(request, period, domain);
if (report == null && period.isLast()) { if (report == null && period.isLast()) {
long startTime = request.getStartTime(); report = getReportFromLocalDisk(request.getStartTime(), domain);
Date start = new Date(startTime);
Date end = new Date(startTime + TimeUtil.ONE_HOUR);
report = m_reportService.queryHeartbeatReport(domain, start, end);
} }
return report; return report;
} }
private HeartbeatReport getReportFromLocalDisk(long timestamp, String domain) throws Exception {
Bucket<String> bucket = null;
try {
bucket = m_bucketManager.getReportBucket(timestamp, HeartbeatAnalyzer.ID);
String xml = bucket.findById(domain);
return xml == null ? null : DefaultSaxParser.parse(xml);
} finally {
bucket.close();
}
}
} }
package com.dianping.cat.report.page.model.matrix; package com.dianping.cat.report.page.model.matrix;
import java.util.Date;
import org.unidal.lookup.annotation.Inject; import org.unidal.lookup.annotation.Inject;
import com.dianping.cat.consumer.matrix.MatrixAnalyzer; import com.dianping.cat.consumer.matrix.MatrixAnalyzer;
import com.dianping.cat.consumer.matrix.model.entity.MatrixReport; import com.dianping.cat.consumer.matrix.model.entity.MatrixReport;
import com.dianping.cat.helper.TimeUtil; import com.dianping.cat.consumer.matrix.model.transform.DefaultSaxParser;
import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService; import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService;
import com.dianping.cat.report.service.ReportService;
import com.dianping.cat.service.ModelPeriod; import com.dianping.cat.service.ModelPeriod;
import com.dianping.cat.service.ModelRequest; import com.dianping.cat.service.ModelRequest;
import com.dianping.cat.storage.Bucket;
import com.dianping.cat.storage.BucketManager;
public class LocalMatrixService extends BaseLocalModelService<MatrixReport> { public class LocalMatrixService extends BaseLocalModelService<MatrixReport> {
@Inject @Inject
private ReportService m_reportService; private BucketManager m_bucketManager;
public LocalMatrixService() { public LocalMatrixService() {
super(MatrixAnalyzer.ID); super(MatrixAnalyzer.ID);
...@@ -26,12 +25,20 @@ public class LocalMatrixService extends BaseLocalModelService<MatrixReport> { ...@@ -26,12 +25,20 @@ public class LocalMatrixService extends BaseLocalModelService<MatrixReport> {
MatrixReport report = super.getReport(request, period, domain); MatrixReport report = super.getReport(request, period, domain);
if (report == null && period.isLast()) { if (report == null && period.isLast()) {
long startTime = request.getStartTime(); report = getReportFromLocalDisk(request.getStartTime(), domain);
Date start = new Date(startTime);
Date end = new Date(startTime + TimeUtil.ONE_HOUR);
report = m_reportService.queryMatrixReport(domain, start, end);
} }
return report; return report;
} }
private MatrixReport getReportFromLocalDisk(long timestamp, String domain) throws Exception {
Bucket<String> bucket = null;
try {
bucket = m_bucketManager.getReportBucket(timestamp, MatrixAnalyzer.ID);
String xml = bucket.findById(domain);
return xml == null ? null : DefaultSaxParser.parse(xml);
} finally {
bucket.close();
}
}
} }
package com.dianping.cat.report.page.model.metric; package com.dianping.cat.report.page.model.metric;
import java.util.Date;
import org.unidal.lookup.annotation.Inject; import org.unidal.lookup.annotation.Inject;
import com.dianping.cat.consumer.metric.model.entity.MetricReport; import com.dianping.cat.consumer.metric.model.entity.MetricReport;
import com.dianping.cat.helper.TimeUtil; import com.dianping.cat.consumer.metric.model.transform.DefaultSaxParser;
import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService; import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService;
import com.dianping.cat.report.service.ReportService;
import com.dianping.cat.service.ModelPeriod; import com.dianping.cat.service.ModelPeriod;
import com.dianping.cat.service.ModelRequest; import com.dianping.cat.service.ModelRequest;
import com.dianping.cat.storage.Bucket;
import com.dianping.cat.storage.BucketManager;
public class LocalMetricService extends BaseLocalModelService<MetricReport> { public class LocalMetricService extends BaseLocalModelService<MetricReport> {
@Inject @Inject
private ReportService m_reportService; private BucketManager m_bucketManager;
public LocalMetricService() { public LocalMetricService() {
super("metric"); super("metric");
...@@ -24,12 +23,20 @@ public class LocalMetricService extends BaseLocalModelService<MetricReport> { ...@@ -24,12 +23,20 @@ public class LocalMetricService extends BaseLocalModelService<MetricReport> {
MetricReport report = super.getReport(request, period, domain); MetricReport report = super.getReport(request, period, domain);
if (report == null && period.isLast()) { if (report == null && period.isLast()) {
long startTime = request.getStartTime(); report = getReportFromLocalDisk(request.getStartTime(), domain);
Date start = new Date(startTime);
Date end = new Date(startTime + TimeUtil.ONE_HOUR);
report = m_reportService.queryMetricReport(domain, start, end);
} }
return report; return report;
} }
private MetricReport getReportFromLocalDisk(long timestamp, String domain) throws Exception {
Bucket<String> bucket = null;
try {
bucket = m_bucketManager.getReportBucket(timestamp, "metric");
String xml = bucket.findById(domain);
return xml == null ? null : DefaultSaxParser.parse(xml);
} finally {
bucket.close();
}
}
} }
package com.dianping.cat.report.page.model.problem; package com.dianping.cat.report.page.model.problem;
import java.util.Date;
import org.unidal.lookup.annotation.Inject; import org.unidal.lookup.annotation.Inject;
import com.dianping.cat.consumer.problem.ProblemAnalyzer; import com.dianping.cat.consumer.problem.ProblemAnalyzer;
import com.dianping.cat.consumer.problem.model.entity.ProblemReport; import com.dianping.cat.consumer.problem.model.entity.ProblemReport;
import com.dianping.cat.helper.TimeUtil; import com.dianping.cat.consumer.problem.model.transform.DefaultSaxParser;
import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService; import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService;
import com.dianping.cat.report.service.ReportService;
import com.dianping.cat.service.ModelPeriod; import com.dianping.cat.service.ModelPeriod;
import com.dianping.cat.service.ModelRequest; import com.dianping.cat.service.ModelRequest;
import com.dianping.cat.storage.Bucket;
import com.dianping.cat.storage.BucketManager;
public class LocalProblemService extends BaseLocalModelService<ProblemReport> { public class LocalProblemService extends BaseLocalModelService<ProblemReport> {
@Inject @Inject
private ReportService m_reportService; private BucketManager m_bucketManager;
public LocalProblemService() { public LocalProblemService() {
super(ProblemAnalyzer.ID); super(ProblemAnalyzer.ID);
...@@ -26,12 +25,21 @@ public class LocalProblemService extends BaseLocalModelService<ProblemReport> { ...@@ -26,12 +25,21 @@ public class LocalProblemService extends BaseLocalModelService<ProblemReport> {
ProblemReport report = super.getReport(request, period, domain); ProblemReport report = super.getReport(request, period, domain);
if (report == null && period.isLast()) { if (report == null && period.isLast()) {
long startTime = request.getStartTime(); report = getReportFromLocalDisk(request.getStartTime(), domain);
Date start = new Date(startTime);
Date end = new Date(startTime + TimeUtil.ONE_HOUR);
report = m_reportService.queryProblemReport(domain, start, end);
} }
return report; return report;
} }
private ProblemReport getReportFromLocalDisk(long timestamp, String domain) throws Exception {
Bucket<String> bucket = null;
try {
bucket = m_bucketManager.getReportBucket(timestamp, ProblemAnalyzer.ID);
String xml = bucket.findById(domain);
return xml == null ? null : DefaultSaxParser.parse(xml);
} finally {
bucket.close();
}
}
} }
package com.dianping.cat.report.page.model.sql; package com.dianping.cat.report.page.model.sql;
import java.util.Date;
import org.unidal.lookup.annotation.Inject; import org.unidal.lookup.annotation.Inject;
import com.dianping.cat.consumer.sql.SqlAnalyzer; import com.dianping.cat.consumer.sql.SqlAnalyzer;
import com.dianping.cat.consumer.sql.model.entity.SqlReport; import com.dianping.cat.consumer.sql.model.entity.SqlReport;
import com.dianping.cat.helper.TimeUtil; import com.dianping.cat.consumer.sql.model.transform.DefaultSaxParser;
import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService; import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService;
import com.dianping.cat.report.service.ReportService;
import com.dianping.cat.service.ModelPeriod; import com.dianping.cat.service.ModelPeriod;
import com.dianping.cat.service.ModelRequest; import com.dianping.cat.service.ModelRequest;
import com.dianping.cat.storage.Bucket;
import com.dianping.cat.storage.BucketManager;
public class LocalSqlService extends BaseLocalModelService<SqlReport> { public class LocalSqlService extends BaseLocalModelService<SqlReport> {
@Inject @Inject
private ReportService m_reportService; private BucketManager m_bucketManager;
public LocalSqlService() { public LocalSqlService() {
super(SqlAnalyzer.ID); super(SqlAnalyzer.ID);
...@@ -25,12 +24,20 @@ public class LocalSqlService extends BaseLocalModelService<SqlReport> { ...@@ -25,12 +24,20 @@ public class LocalSqlService extends BaseLocalModelService<SqlReport> {
SqlReport report = super.getReport(request, period, domain); SqlReport report = super.getReport(request, period, domain);
if (report == null && period.isLast()) { if (report == null && period.isLast()) {
long startTime = request.getStartTime(); report = getReportFromLocalDisk(request.getStartTime(), domain);
Date start = new Date(startTime);
Date end = new Date(startTime + TimeUtil.ONE_HOUR);
report = m_reportService.querySqlReport(domain, start, end);
} }
return report; return report;
} }
private SqlReport getReportFromLocalDisk(long timestamp, String domain) throws Exception {
Bucket<String> bucket = null;
try {
bucket = m_bucketManager.getReportBucket(timestamp, SqlAnalyzer.ID);
String xml = bucket.findById(domain);
return xml == null ? null : DefaultSaxParser.parse(xml);
} finally {
bucket.close();
}
}
} }
package com.dianping.cat.report.page.model.state; package com.dianping.cat.report.page.model.state;
import java.util.Date;
import org.unidal.lookup.annotation.Inject; import org.unidal.lookup.annotation.Inject;
import com.dianping.cat.consumer.state.StateAnalyzer; import com.dianping.cat.consumer.state.StateAnalyzer;
import com.dianping.cat.consumer.state.model.entity.StateReport; import com.dianping.cat.consumer.state.model.entity.StateReport;
import com.dianping.cat.helper.TimeUtil; import com.dianping.cat.consumer.state.model.transform.DefaultSaxParser;
import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService; import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService;
import com.dianping.cat.report.service.ReportService;
import com.dianping.cat.service.ModelPeriod; import com.dianping.cat.service.ModelPeriod;
import com.dianping.cat.service.ModelRequest; import com.dianping.cat.service.ModelRequest;
import com.dianping.cat.storage.Bucket;
import com.dianping.cat.storage.BucketManager;
public class LocalStateService extends BaseLocalModelService<StateReport> { public class LocalStateService extends BaseLocalModelService<StateReport> {
@Inject @Inject
private ReportService m_reportService; private BucketManager m_bucketManager;
public LocalStateService() { public LocalStateService() {
super(StateAnalyzer.ID); super(StateAnalyzer.ID);
...@@ -25,12 +24,20 @@ public class LocalStateService extends BaseLocalModelService<StateReport> { ...@@ -25,12 +24,20 @@ public class LocalStateService extends BaseLocalModelService<StateReport> {
StateReport report = super.getReport(request, period, domain); StateReport report = super.getReport(request, period, domain);
if (report == null && period.isLast()) { if (report == null && period.isLast()) {
long startTime = request.getStartTime(); report = getReportFromLocalDisk(request.getStartTime(), domain);
Date start = new Date(startTime);
Date end = new Date(startTime + TimeUtil.ONE_HOUR);
report = m_reportService.queryStateReport(domain, start, end);
} }
return report; return report;
} }
private StateReport getReportFromLocalDisk(long timestamp, String domain) throws Exception {
Bucket<String> bucket = null;
try {
bucket = m_bucketManager.getReportBucket(timestamp, StateAnalyzer.ID);
String xml = bucket.findById(domain);
return xml == null ? null : DefaultSaxParser.parse(xml);
} finally {
bucket.close();
}
}
} }
package com.dianping.cat.report.page.model.top; package com.dianping.cat.report.page.model.top;
import java.util.Date;
import org.unidal.lookup.annotation.Inject; import org.unidal.lookup.annotation.Inject;
import com.dianping.cat.consumer.top.TopAnalyzer; import com.dianping.cat.consumer.top.TopAnalyzer;
import com.dianping.cat.consumer.top.model.entity.TopReport; import com.dianping.cat.consumer.top.model.entity.TopReport;
import com.dianping.cat.helper.TimeUtil; import com.dianping.cat.consumer.top.model.transform.DefaultSaxParser;
import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService; import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService;
import com.dianping.cat.report.service.ReportService;
import com.dianping.cat.service.ModelPeriod; import com.dianping.cat.service.ModelPeriod;
import com.dianping.cat.service.ModelRequest; import com.dianping.cat.service.ModelRequest;
import com.dianping.cat.storage.Bucket;
import com.dianping.cat.storage.BucketManager;
public class LocalTopService extends BaseLocalModelService<TopReport> { public class LocalTopService extends BaseLocalModelService<TopReport> {
@Inject @Inject
private ReportService m_reportService; private BucketManager m_bucketManager;
public LocalTopService() { public LocalTopService() {
super(TopAnalyzer.ID); super(TopAnalyzer.ID);
...@@ -25,12 +24,20 @@ public class LocalTopService extends BaseLocalModelService<TopReport> { ...@@ -25,12 +24,20 @@ public class LocalTopService extends BaseLocalModelService<TopReport> {
TopReport report = super.getReport(request, period, domain); TopReport report = super.getReport(request, period, domain);
if (report == null && period.isLast()) { if (report == null && period.isLast()) {
long startTime = request.getStartTime(); report = getReportFromLocalDisk(request.getStartTime(), domain);
Date start = new Date(startTime);
Date end = new Date(startTime + TimeUtil.ONE_HOUR);
report = m_reportService.queryTopReport(domain, start, end);
} }
return report; return report;
} }
private TopReport getReportFromLocalDisk(long timestamp, String domain) throws Exception {
Bucket<String> bucket = null;
try {
bucket = m_bucketManager.getReportBucket(timestamp, TopAnalyzer.ID);
String xml = bucket.findById(domain);
return xml == null ? null : DefaultSaxParser.parse(xml);
} finally {
bucket.close();
}
}
} }
package com.dianping.cat.report.page.model.transaction; package com.dianping.cat.report.page.model.transaction;
import java.util.Date;
import org.unidal.lookup.annotation.Inject; import org.unidal.lookup.annotation.Inject;
import com.dianping.cat.consumer.transaction.TransactionAnalyzer; import com.dianping.cat.consumer.transaction.TransactionAnalyzer;
import com.dianping.cat.consumer.transaction.model.entity.TransactionReport; import com.dianping.cat.consumer.transaction.model.entity.TransactionReport;
import com.dianping.cat.helper.TimeUtil; import com.dianping.cat.consumer.transaction.model.transform.DefaultSaxParser;
import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService; import com.dianping.cat.report.page.model.spi.internal.BaseLocalModelService;
import com.dianping.cat.report.service.ReportService;
import com.dianping.cat.service.ModelPeriod; import com.dianping.cat.service.ModelPeriod;
import com.dianping.cat.service.ModelRequest; import com.dianping.cat.service.ModelRequest;
import com.dianping.cat.storage.Bucket;
import com.dianping.cat.storage.BucketManager;
public class LocalTransactionService extends BaseLocalModelService<TransactionReport> { public class LocalTransactionService extends BaseLocalModelService<TransactionReport> {
@Inject @Inject
private ReportService m_reportService; private BucketManager m_bucketManager;
public LocalTransactionService() { public LocalTransactionService() {
super(TransactionAnalyzer.ID); super(TransactionAnalyzer.ID);
...@@ -25,13 +24,20 @@ public class LocalTransactionService extends BaseLocalModelService<TransactionRe ...@@ -25,13 +24,20 @@ public class LocalTransactionService extends BaseLocalModelService<TransactionRe
TransactionReport report = super.getReport(request, period, domain); TransactionReport report = super.getReport(request, period, domain);
if (report == null && period.isLast()) { if (report == null && period.isLast()) {
long startTime = request.getStartTime(); report = getReportFromLocalDisk(request.getStartTime(), domain);
Date start = new Date(startTime);
Date end = new Date(startTime + TimeUtil.ONE_HOUR);
report = m_reportService.queryTransactionReport(domain, start, end);
} }
return report; return report;
} }
private TransactionReport getReportFromLocalDisk(long timestamp, String domain) throws Exception {
Bucket<String> bucket = null;
try {
bucket = m_bucketManager.getReportBucket(timestamp, TransactionAnalyzer.ID);
String xml = bucket.findById(domain);
return xml == null ? null : DefaultSaxParser.parse(xml);
} finally {
bucket.close();
}
}
} }
...@@ -1035,7 +1035,7 @@ ...@@ -1035,7 +1035,7 @@
<implementation>com.dianping.cat.report.page.model.transaction.LocalTransactionService</implementation> <implementation>com.dianping.cat.report.page.model.transaction.LocalTransactionService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -1078,7 +1078,7 @@ ...@@ -1078,7 +1078,7 @@
<implementation>com.dianping.cat.report.page.model.event.LocalEventService</implementation> <implementation>com.dianping.cat.report.page.model.event.LocalEventService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -1121,7 +1121,7 @@ ...@@ -1121,7 +1121,7 @@
<implementation>com.dianping.cat.report.page.model.problem.LocalProblemService</implementation> <implementation>com.dianping.cat.report.page.model.problem.LocalProblemService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -1164,7 +1164,7 @@ ...@@ -1164,7 +1164,7 @@
<implementation>com.dianping.cat.report.page.model.heartbeat.LocalHeartbeatService</implementation> <implementation>com.dianping.cat.report.page.model.heartbeat.LocalHeartbeatService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -1207,7 +1207,7 @@ ...@@ -1207,7 +1207,7 @@
<implementation>com.dianping.cat.report.page.model.matrix.LocalMatrixService</implementation> <implementation>com.dianping.cat.report.page.model.matrix.LocalMatrixService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -1250,7 +1250,7 @@ ...@@ -1250,7 +1250,7 @@
<implementation>com.dianping.cat.report.page.model.state.LocalStateService</implementation> <implementation>com.dianping.cat.report.page.model.state.LocalStateService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -1293,7 +1293,7 @@ ...@@ -1293,7 +1293,7 @@
<implementation>com.dianping.cat.report.page.model.cross.LocalCrossService</implementation> <implementation>com.dianping.cat.report.page.model.cross.LocalCrossService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -1336,7 +1336,7 @@ ...@@ -1336,7 +1336,7 @@
<implementation>com.dianping.cat.report.page.model.sql.LocalSqlService</implementation> <implementation>com.dianping.cat.report.page.model.sql.LocalSqlService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -1379,7 +1379,7 @@ ...@@ -1379,7 +1379,7 @@
<implementation>com.dianping.cat.report.page.model.top.LocalTopService</implementation> <implementation>com.dianping.cat.report.page.model.top.LocalTopService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -1422,7 +1422,7 @@ ...@@ -1422,7 +1422,7 @@
<implementation>com.dianping.cat.report.page.model.dependency.LocalDependencyService</implementation> <implementation>com.dianping.cat.report.page.model.dependency.LocalDependencyService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -1465,7 +1465,7 @@ ...@@ -1465,7 +1465,7 @@
<implementation>com.dianping.cat.report.page.model.metric.LocalMetricService</implementation> <implementation>com.dianping.cat.report.page.model.metric.LocalMetricService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -2416,7 +2416,7 @@ ...@@ -2416,7 +2416,7 @@
<implementation>com.dianping.cat.report.page.model.event.LocalEventService</implementation> <implementation>com.dianping.cat.report.page.model.event.LocalEventService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -2428,7 +2428,7 @@ ...@@ -2428,7 +2428,7 @@
<implementation>com.dianping.cat.report.page.model.heartbeat.LocalHeartbeatService</implementation> <implementation>com.dianping.cat.report.page.model.heartbeat.LocalHeartbeatService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -2457,7 +2457,7 @@ ...@@ -2457,7 +2457,7 @@
<implementation>com.dianping.cat.report.page.model.matrix.LocalMatrixService</implementation> <implementation>com.dianping.cat.report.page.model.matrix.LocalMatrixService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -2469,7 +2469,7 @@ ...@@ -2469,7 +2469,7 @@
<implementation>com.dianping.cat.report.page.model.problem.LocalProblemService</implementation> <implementation>com.dianping.cat.report.page.model.problem.LocalProblemService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -2481,7 +2481,7 @@ ...@@ -2481,7 +2481,7 @@
<implementation>com.dianping.cat.report.page.model.transaction.LocalTransactionService</implementation> <implementation>com.dianping.cat.report.page.model.transaction.LocalTransactionService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -2493,7 +2493,7 @@ ...@@ -2493,7 +2493,7 @@
<implementation>com.dianping.cat.report.page.model.cross.LocalCrossService</implementation> <implementation>com.dianping.cat.report.page.model.cross.LocalCrossService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -2505,7 +2505,7 @@ ...@@ -2505,7 +2505,7 @@
<implementation>com.dianping.cat.report.page.model.sql.LocalSqlService</implementation> <implementation>com.dianping.cat.report.page.model.sql.LocalSqlService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -2517,7 +2517,7 @@ ...@@ -2517,7 +2517,7 @@
<implementation>com.dianping.cat.report.page.model.state.LocalStateService</implementation> <implementation>com.dianping.cat.report.page.model.state.LocalStateService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -2529,7 +2529,7 @@ ...@@ -2529,7 +2529,7 @@
<implementation>com.dianping.cat.report.page.model.top.LocalTopService</implementation> <implementation>com.dianping.cat.report.page.model.top.LocalTopService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -2541,7 +2541,7 @@ ...@@ -2541,7 +2541,7 @@
<implementation>com.dianping.cat.report.page.model.metric.LocalMetricService</implementation> <implementation>com.dianping.cat.report.page.model.metric.LocalMetricService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
...@@ -2553,7 +2553,7 @@ ...@@ -2553,7 +2553,7 @@
<implementation>com.dianping.cat.report.page.model.dependency.LocalDependencyService</implementation> <implementation>com.dianping.cat.report.page.model.dependency.LocalDependencyService</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.service.ReportService</role> <role>com.dianping.cat.storage.BucketManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.message.spi.core.MessageConsumer</role> <role>com.dianping.cat.message.spi.core.MessageConsumer</role>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册