提交 3f3d94cb 编写于 作者: Y youyong205

modify the server config manager

上级 2ea4d385
...@@ -86,7 +86,7 @@ public class ComponentsConfigurator extends AbstractResourceConfigurator { ...@@ -86,7 +86,7 @@ public class ComponentsConfigurator extends AbstractResourceConfigurator {
.req(ReportDelegate.class, ID) // .req(ReportDelegate.class, ID) //
.req(BucketManager.class, HourlyReportDao.class, HourlyReportContentDao.class) // .req(BucketManager.class, HourlyReportDao.class, HourlyReportContentDao.class) //
.config(E("name").value(ID))); .config(E("name").value(ID)));
all.add(C(ReportDelegate.class, ID, EventDelegate.class).req(TaskManager.class)); all.add(C(ReportDelegate.class, ID, EventDelegate.class).req(TaskManager.class, ServerConfigManager.class));
return all; return all;
} }
......
...@@ -6,6 +6,7 @@ import java.util.Set; ...@@ -6,6 +6,7 @@ import java.util.Set;
import org.unidal.lookup.annotation.Inject; import org.unidal.lookup.annotation.Inject;
import com.dianping.cat.ServerConfigManager;
import com.dianping.cat.consumer.event.model.entity.EventReport; import com.dianping.cat.consumer.event.model.entity.EventReport;
import com.dianping.cat.consumer.event.model.transform.DefaultNativeBuilder; import com.dianping.cat.consumer.event.model.transform.DefaultNativeBuilder;
import com.dianping.cat.consumer.event.model.transform.DefaultNativeParser; import com.dianping.cat.consumer.event.model.transform.DefaultNativeParser;
...@@ -19,6 +20,9 @@ public class EventDelegate implements ReportDelegate<EventReport> { ...@@ -19,6 +20,9 @@ public class EventDelegate implements ReportDelegate<EventReport> {
@Inject @Inject
private TaskManager m_taskManager; private TaskManager m_taskManager;
@Inject
private ServerConfigManager m_manager;
@Override @Override
public void afterLoad(Map<String, EventReport> reports) { public void afterLoad(Map<String, EventReport> reports) {
} }
...@@ -47,7 +51,13 @@ public class EventDelegate implements ReportDelegate<EventReport> { ...@@ -47,7 +51,13 @@ public class EventDelegate implements ReportDelegate<EventReport> {
@Override @Override
public boolean createHourlyTask(EventReport report) { public boolean createHourlyTask(EventReport report) {
return m_taskManager.createTask(report.getStartTime(), report.getDomain(), EventAnalyzer.ID, TaskProlicy.ALL); String domain = report.getDomain();
if (m_manager.validateDomain(domain)) {
return m_taskManager.createTask(report.getStartTime(), report.getDomain(), EventAnalyzer.ID, TaskProlicy.ALL);
}else{
return true;
}
} }
@Override @Override
......
...@@ -72,7 +72,7 @@ public class TopAnalyzer extends AbstractMessageAnalyzer<TopReport> implements L ...@@ -72,7 +72,7 @@ public class TopAnalyzer extends AbstractMessageAnalyzer<TopReport> implements L
for (String name : domains) { for (String name : domains) {
try { try {
if (m_serverConfigManager.filterDomain(name) && !name.equals(Constants.ALL)) { if (m_serverConfigManager.validateDomain(name) || Constants.FRONT_END.equals(domain)) {
TransactionReport report = m_transactionAnalyzer.getRawReport(name); TransactionReport report = m_transactionAnalyzer.getRawReport(name);
transactionReportVisitor.visitTransactionReport(report); transactionReportVisitor.visitTransactionReport(report);
...@@ -94,7 +94,7 @@ public class TopAnalyzer extends AbstractMessageAnalyzer<TopReport> implements L ...@@ -94,7 +94,7 @@ public class TopAnalyzer extends AbstractMessageAnalyzer<TopReport> implements L
for (String name : domains) { for (String name : domains) {
try { try {
if (m_serverConfigManager.filterDomain(name) && !name.equals(Constants.ALL)) { if (m_serverConfigManager.validateDomain(name) || Constants.FRONT_END.equals(domain)) {
ProblemReport report = m_problemAnalyzer.getReport(name); ProblemReport report = m_problemAnalyzer.getReport(name);
problemReportVisitor.visitProblemReport(report); problemReportVisitor.visitProblemReport(report);
......
...@@ -110,6 +110,9 @@ ...@@ -110,6 +110,9 @@
<requirement> <requirement>
<role>com.dianping.cat.task.TaskManager</role> <role>com.dianping.cat.task.TaskManager</role>
</requirement> </requirement>
<requirement>
<role>com.dianping.cat.ServerConfigManager</role>
</requirement>
</requirements> </requirements>
</component> </component>
<component> <component>
......
...@@ -39,6 +39,8 @@ public class ServerConfigManager implements Initializable, LogEnabled { ...@@ -39,6 +39,8 @@ public class ServerConfigManager implements Initializable, LogEnabled {
private Set<String> m_unusedNames = new HashSet<String>(); private Set<String> m_unusedNames = new HashSet<String>();
private Set<String> m_invalidateDomains = new HashSet<String>();
public boolean discardTransaction(Transaction t) { public boolean discardTransaction(Transaction t) {
// pigeon default heartbeat is no use // pigeon default heartbeat is no use
String type = t.getType(); String type = t.getType();
...@@ -249,6 +251,13 @@ public class ServerConfigManager implements Initializable, LogEnabled { ...@@ -249,6 +251,13 @@ public class ServerConfigManager implements Initializable, LogEnabled {
m_unusedNames.add("/inspect/healthcheck"); m_unusedNames.add("/inspect/healthcheck");
m_unusedNames.add("/MonitorServlet"); m_unusedNames.add("/MonitorServlet");
m_unusedNames.add("/monitorServlet?client=f5"); m_unusedNames.add("/monitorServlet?client=f5");
m_invalidateDomains.add("PhoenixAgent");
m_invalidateDomains.add("cat-agent");
m_invalidateDomains.add("AndroidCrashLog");
m_invalidateDomains.add("iOSCrashLog");
m_invalidateDomains.add(Constants.ALL);
m_invalidateDomains.add(Constants.FRONT_END);
} }
public void initialize(File configFile) throws Exception { public void initialize(File configFile) throws Exception {
...@@ -349,12 +358,8 @@ public class ServerConfigManager implements Initializable, LogEnabled { ...@@ -349,12 +358,8 @@ public class ServerConfigManager implements Initializable, LogEnabled {
} }
} }
public boolean filterDomain(String domain) {
return !domain.equals("PhoenixAgent") && !domain.equals("cat-agent") && !domain.equals(Constants.ALL);
}
public boolean validateDomain(String domain) { public boolean validateDomain(String domain) {
return !domain.equals(Constants.FRONT_END) && filterDomain(domain); return !m_invalidateDomains.contains(domain);
} }
public boolean isOffline() { public boolean isOffline() {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册