提交 5c4d5e1d 编写于 作者: Y youyong205

refactor all report config merge

上级 50da4131
......@@ -49,7 +49,7 @@
</goals>
<configuration>
<manifest>${basedir}/src/main/resources/META-INF/dal/model/transaction-report-manifest.xml,
${basedir}/src/main/resources/META-INF/dal/model/all-transaction-report-manifest.xml,
${basedir}/src/main/resources/META-INF/dal/model/all-report-manifest.xml,
${basedir}/src/main/resources/META-INF/dal/model/event-report-manifest.xml,
${basedir}/src/main/resources/META-INF/dal/model/problem-report-manifest.xml,
${basedir}/src/main/resources/META-INF/dal/model/heartbeat-report-manifest.xml,
......
......@@ -15,6 +15,7 @@ import com.dianping.cat.config.content.DefaultContentFetcher;
import com.dianping.cat.config.server.ServerConfigManager;
import com.dianping.cat.config.server.ServerFilterConfigManager;
import com.dianping.cat.consumer.CatConsumerModule;
import com.dianping.cat.consumer.config.AllReportConfigManager;
import com.dianping.cat.consumer.config.ProductLineConfigManager;
import com.dianping.cat.consumer.cross.CrossAnalyzer;
import com.dianping.cat.consumer.cross.CrossDelegate;
......@@ -45,7 +46,6 @@ import com.dianping.cat.consumer.storage.StorageDelegate;
import com.dianping.cat.consumer.storage.StorageReportUpdater;
import com.dianping.cat.consumer.top.TopAnalyzer;
import com.dianping.cat.consumer.top.TopDelegate;
import com.dianping.cat.consumer.transaction.AllTransactionConfigManager;
import com.dianping.cat.consumer.transaction.TransactionAnalyzer;
import com.dianping.cat.consumer.transaction.TransactionDelegate;
import com.dianping.cat.core.config.ConfigDao;
......@@ -86,7 +86,7 @@ public class ComponentsConfigurator extends AbstractResourceConfigurator {
all.addAll(defineMetricComponents());
all.addAll(defineStorageComponents());
all.add(C(AllTransactionConfigManager.class).req(ConfigDao.class, ContentFetcher.class));
all.add(C(AllReportConfigManager.class).req(ConfigDao.class, ContentFetcher.class));
all.add(C(Module.class, CatConsumerModule.ID, CatConsumerModule.class));
all.addAll(new CatDatabaseConfigurator().defineComponents());
return all;
......@@ -147,7 +147,8 @@ public class ComponentsConfigurator extends AbstractResourceConfigurator {
.req(ReportDelegate.class, ID) //
.req(ReportBucketManager.class, HourlyReportDao.class, HourlyReportContentDao.class, DomainValidator.class) //
.config(E("name").value(ID)));
all.add(C(ReportDelegate.class, ID, EventDelegate.class).req(TaskManager.class, ServerFilterConfigManager.class));
all.add(C(ReportDelegate.class, ID, EventDelegate.class).req(TaskManager.class, ServerFilterConfigManager.class,
AllReportConfigManager.class));
return all;
}
......@@ -241,8 +242,8 @@ public class ComponentsConfigurator extends AbstractResourceConfigurator {
final List<Component> all = new ArrayList<Component>();
final String ID = TopAnalyzer.ID;
all.add(C(MessageAnalyzer.class, ID, TopAnalyzer.class).is(PER_LOOKUP)
.req(ReportManager.class, ID).req(ServerConfigManager.class, ServerFilterConfigManager.class)
all.add(C(MessageAnalyzer.class, ID, TopAnalyzer.class).is(PER_LOOKUP).req(ReportManager.class, ID)
.req(ServerConfigManager.class, ServerFilterConfigManager.class)
.config(E("errorType").value("Error,RuntimeException,Exception")));
all.add(C(ReportManager.class, ID, DefaultReportManager.class).is(PER_LOOKUP) //
.req(ReportDelegate.class, ID) //
......@@ -257,15 +258,14 @@ public class ComponentsConfigurator extends AbstractResourceConfigurator {
final List<Component> all = new ArrayList<Component>();
final String ID = TransactionAnalyzer.ID;
all.add(C(MessageAnalyzer.class, ID, TransactionAnalyzer.class).is(PER_LOOKUP)
.req(ReportManager.class, ID).req(ReportDelegate.class, ID)
.req(ServerConfigManager.class, ServerFilterConfigManager.class));
all.add(C(MessageAnalyzer.class, ID, TransactionAnalyzer.class).is(PER_LOOKUP).req(ReportManager.class, ID)
.req(ReportDelegate.class, ID).req(ServerConfigManager.class, ServerFilterConfigManager.class));
all.add(C(ReportManager.class, ID, DefaultReportManager.class).is(PER_LOOKUP) //
.req(ReportDelegate.class, ID) //
.req(ReportBucketManager.class, HourlyReportDao.class, HourlyReportContentDao.class, DomainValidator.class) //
.config(E("name").value(ID)));
all.add(C(ReportDelegate.class, ID, TransactionDelegate.class).req(TaskManager.class,
ServerFilterConfigManager.class, AllTransactionConfigManager.class));
ServerFilterConfigManager.class, AllReportConfigManager.class));
return all;
}
......@@ -275,8 +275,8 @@ public class ComponentsConfigurator extends AbstractResourceConfigurator {
final String ID = StorageAnalyzer.ID;
all.add(C(com.dianping.cat.consumer.storage.DatabaseParser.class));
all.add(C(StorageReportUpdater.class));
all.add(C(MessageAnalyzer.class, ID, StorageAnalyzer.class).is(PER_LOOKUP)
.req(ReportManager.class, ID).req(ReportDelegate.class, ID).req(ServerConfigManager.class)
all.add(C(MessageAnalyzer.class, ID, StorageAnalyzer.class).is(PER_LOOKUP).req(ReportManager.class, ID)
.req(ReportDelegate.class, ID).req(ServerConfigManager.class)
.req(com.dianping.cat.consumer.storage.DatabaseParser.class).req(StorageReportUpdater.class));
all.add(C(ReportManager.class, ID, DefaultReportManager.class).is(PER_LOOKUP) //
.req(ReportDelegate.class, ID) //
......
package com.dianping.cat.consumer.transaction;
package com.dianping.cat.consumer.config;
import java.io.IOException;
import java.util.Date;
......@@ -16,15 +16,16 @@ import org.xml.sax.SAXException;
import com.dianping.cat.Cat;
import com.dianping.cat.config.content.ContentFetcher;
import com.dianping.cat.consumer.transaction.config.entity.AllTransactionConfig;
import com.dianping.cat.consumer.transaction.config.entity.Name;
import com.dianping.cat.consumer.transaction.config.entity.Type;
import com.dianping.cat.consumer.transaction.config.transform.DefaultSaxParser;
import com.dianping.cat.consumer.all.config.entity.AllConfig;
import com.dianping.cat.consumer.all.config.entity.Name;
import com.dianping.cat.consumer.all.config.entity.Report;
import com.dianping.cat.consumer.all.config.entity.Type;
import com.dianping.cat.consumer.all.config.transform.DefaultSaxParser;
import com.dianping.cat.core.config.Config;
import com.dianping.cat.core.config.ConfigDao;
import com.dianping.cat.core.config.ConfigEntity;
public class AllTransactionConfigManager implements Initializable, LogEnabled {
public class AllReportConfigManager implements Initializable, LogEnabled {
@Inject
private ConfigDao m_configDao;
......@@ -34,20 +35,20 @@ public class AllTransactionConfigManager implements Initializable, LogEnabled {
private int m_configId;
private volatile AllTransactionConfig m_config;
private volatile AllConfig m_config;
private Logger m_logger;
private long m_modifyTime;
private static final String CONFIG_NAME = "all-transaction-config";
private static final String CONFIG_NAME = "all-report-config";
@Override
public void enableLogging(Logger logger) {
m_logger = logger;
}
public AllTransactionConfig getConfig() {
public AllConfig getConfig() {
return m_config;
}
......@@ -81,7 +82,7 @@ public class AllTransactionConfigManager implements Initializable, LogEnabled {
Cat.logError(e);
}
if (m_config == null) {
m_config = new AllTransactionConfig();
m_config = new AllConfig();
}
}
......@@ -105,7 +106,7 @@ public class AllTransactionConfigManager implements Initializable, LogEnabled {
synchronized (this) {
if (modifyTime > m_modifyTime) {
String content = config.getContent();
AllTransactionConfig blackList = DefaultSaxParser.parse(content);
AllConfig blackList = DefaultSaxParser.parse(content);
m_config = blackList;
m_modifyTime = modifyTime;
......@@ -131,24 +132,34 @@ public class AllTransactionConfigManager implements Initializable, LogEnabled {
return true;
}
public boolean validate(String type) {
Map<String, Type> types = m_config.getTypes();
return types.containsKey(type) || types.containsKey("*");
public boolean validate(String reportName, String type) {
Report report = m_config.getReports().get(reportName);
if (report != null) {
Map<String, Type> types = report.getTypes();
return types.containsKey(type) || types.containsKey("*");
} else {
return false;
}
}
public boolean validate(String type, String name) {
Map<String, Type> types = m_config.getTypes();
Type typeConfig = types.get(type);
public boolean validate(String reportName, String type, String name) {
Report report = m_config.getReports().get(reportName);
if (report != null) {
Map<String, Type> types = report.getTypes();
Type typeConfig = types.get(type);
if (typeConfig != null) {
List<Name> list = typeConfig.getNameList();
if (typeConfig != null) {
List<Name> list = typeConfig.getNameList();
for (Name nameConfig : list) {
String configId = nameConfig.getId();
for (Name nameConfig : list) {
String configId = nameConfig.getId();
if (configId.equals(name) || "*".equals(configId)) {
return true;
if (configId.equals(name) || "*".equals(configId)) {
return true;
}
}
}
}
......
......@@ -6,7 +6,10 @@ import java.util.Set;
import org.unidal.lookup.annotation.Inject;
import com.dianping.cat.Cat;
import com.dianping.cat.Constants;
import com.dianping.cat.config.server.ServerFilterConfigManager;
import com.dianping.cat.consumer.config.AllReportConfigManager;
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.DefaultNativeParser;
......@@ -23,6 +26,9 @@ public class EventDelegate implements ReportDelegate<EventReport> {
@Inject
private ServerFilterConfigManager m_configManager;
@Inject
private AllReportConfigManager m_allManager;
private EventTpsStatisticsComputer m_computer = new EventTpsStatisticsComputer();
@Override
......@@ -37,6 +43,11 @@ public class EventDelegate implements ReportDelegate<EventReport> {
domainNames.clear();
domainNames.addAll(reports.keySet());
}
if (reports.size() > 0) {
EventReport all = createAggregatedReport(reports);
reports.put(all.getDomain(), all);
}
}
@Override
......@@ -57,13 +68,36 @@ public class EventDelegate implements ReportDelegate<EventReport> {
public boolean createHourlyTask(EventReport report) {
String domain = report.getDomain();
if (m_configManager.validateDomain(domain)) {
if (domain.equals(Constants.ALL)) {
return m_taskManager.createTask(report.getStartTime(), domain, EventAnalyzer.ID,
TaskProlicy.ALL_EXCLUED_HOURLY);
} else if (m_configManager.validateDomain(domain)) {
return m_taskManager.createTask(report.getStartTime(), report.getDomain(), EventAnalyzer.ID, TaskProlicy.ALL);
} else {
return true;
}
}
public EventReport createAggregatedReport(Map<String, EventReport> reports) {
EventReport first = reports.values().iterator().next();
EventReport all = makeReport(Constants.ALL, first.getStartTime().getTime(), Constants.HOUR);
EventReportTypeAggregator visitor = new EventReportTypeAggregator(all, m_allManager);
try {
for (EventReport report : reports.values()) {
String domain = report.getDomain();
all.getIps().add(domain);
all.getDomainNames().add(domain);
visitor.visitEventReport(report);
}
} catch (Exception e) {
Cat.logError(e);
}
return all;
}
@Override
public String getDomain(EventReport report) {
return report.getDomain();
......
package com.dianping.cat.consumer.event;
import com.dianping.cat.consumer.config.AllReportConfigManager;
import com.dianping.cat.consumer.event.model.entity.EventName;
import com.dianping.cat.consumer.event.model.entity.EventReport;
import com.dianping.cat.consumer.event.model.entity.EventType;
import com.dianping.cat.consumer.event.model.entity.Machine;
import com.dianping.cat.consumer.event.model.transform.BaseVisitor;
public class EventReportTypeAggregator extends BaseVisitor {
private EventReport m_report;
public String m_currentDomain;
private String m_currentType;
private AllReportConfigManager m_configManager;
public EventReportTypeAggregator(EventReport report, AllReportConfigManager configManager) {
m_report = report;
m_configManager = configManager;
}
private void mergeName(EventName old, EventName other) {
long totalCountSum = old.getTotalCount() + other.getTotalCount();
old.setTotalCount(totalCountSum);
old.setFailCount(old.getFailCount() + other.getFailCount());
if (old.getTotalCount() > 0) {
old.setFailPercent(old.getFailCount() * 100.0 / old.getTotalCount());
}
if (old.getSuccessMessageUrl() == null) {
old.setSuccessMessageUrl(other.getSuccessMessageUrl());
}
if (old.getFailMessageUrl() == null) {
old.setFailMessageUrl(other.getFailMessageUrl());
}
}
private void mergeType(EventType old, EventType other) {
long totalCountSum = old.getTotalCount() + other.getTotalCount();
old.setTotalCount(totalCountSum);
old.setFailCount(old.getFailCount() + other.getFailCount());
if (old.getTotalCount() > 0) {
old.setFailPercent(old.getFailCount() * 100.0 / old.getTotalCount());
}
if (old.getSuccessMessageUrl() == null) {
old.setSuccessMessageUrl(other.getSuccessMessageUrl());
}
if (old.getFailMessageUrl() == null) {
old.setFailMessageUrl(other.getFailMessageUrl());
}
}
private boolean validateName(String type, String name) {
return m_configManager.validate(EventAnalyzer.ID, type, name);
}
private boolean validateType(String type) {
return m_configManager.validate(EventAnalyzer.ID, type);
}
@Override
public void visitName(EventName name) {
if (validateName(m_currentType, name.getId())) {
Machine machine = m_report.findOrCreateMachine(m_currentDomain);
EventType curentType = machine.findOrCreateType(m_currentType);
EventName currentName = curentType.findOrCreateName(name.getId());
mergeName(currentName, name);
}
}
@Override
public void visitEventReport(EventReport eventReport) {
m_currentDomain = eventReport.getDomain();
m_report.setStartTime(eventReport.getStartTime());
m_report.setEndTime(eventReport.getEndTime());
super.visitEventReport(eventReport);
}
@Override
public void visitType(EventType type) {
String typeName = type.getId();
if (validateType(typeName)) {
Machine machine = m_report.findOrCreateMachine(m_currentDomain);
EventType result = machine.findOrCreateType(typeName);
m_currentType = typeName;
mergeType(result, type);
super.visitType(type);
}
}
}
\ No newline at end of file
......@@ -11,6 +11,7 @@ import org.unidal.lookup.annotation.Inject;
import com.dianping.cat.Cat;
import com.dianping.cat.Constants;
import com.dianping.cat.config.server.ServerFilterConfigManager;
import com.dianping.cat.consumer.config.AllReportConfigManager;
import com.dianping.cat.consumer.transaction.model.entity.TransactionReport;
import com.dianping.cat.consumer.transaction.model.transform.DefaultNativeBuilder;
import com.dianping.cat.consumer.transaction.model.transform.DefaultNativeParser;
......@@ -28,7 +29,7 @@ public class TransactionDelegate implements ReportDelegate<TransactionReport> {
private ServerFilterConfigManager m_configManager;
@Inject
private AllTransactionConfigManager m_transactionManager;
private AllReportConfigManager m_transactionManager;
private TransactionStatisticsComputer m_computer = new TransactionStatisticsComputer();
......
package com.dianping.cat.consumer.transaction;
import com.dianping.cat.consumer.config.AllReportConfigManager;
import com.dianping.cat.consumer.transaction.model.entity.Machine;
import com.dianping.cat.consumer.transaction.model.entity.TransactionName;
import com.dianping.cat.consumer.transaction.model.entity.TransactionReport;
......@@ -14,9 +15,9 @@ public class TransactionReportTypeAggregator extends BaseVisitor {
private String m_currentType;
private AllTransactionConfigManager m_configManager;
private AllReportConfigManager m_configManager;
public TransactionReportTypeAggregator(TransactionReport report, AllTransactionConfigManager configManager) {
public TransactionReportTypeAggregator(TransactionReport report, AllReportConfigManager configManager) {
m_report = report;
m_configManager = configManager;
}
......@@ -88,11 +89,11 @@ public class TransactionReportTypeAggregator extends BaseVisitor {
}
private boolean validateName(String type, String name) {
return m_configManager.validate(type, name);
return m_configManager.validate(TransactionAnalyzer.ID, type, name);
}
private boolean validateType(String type) {
return m_configManager.validate(type);
return m_configManager.validate(TransactionAnalyzer.ID, type);
}
@Override
......@@ -117,7 +118,7 @@ public class TransactionReportTypeAggregator extends BaseVisitor {
@Override
public void visitType(TransactionType type) {
String typeName = type.getId();
if (validateType(typeName)) {
Machine machine = m_report.findOrCreateMachine(m_currentDomain);
TransactionType result = machine.findOrCreateType(typeName);
......
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<file path="all-transaction-report-codegen.xml" />
<file path="all-transaction-report-model.xml" />
<file path="all-report-codegen.xml" />
<file path="all-report-model.xml" />
</manifest>
<?xml version="1.0" encoding="UTF-8"?>
<model model-package="com.dianping.cat.consumer.transaction.config" enable-merger="true" enable-sax-parser="true"
<model model-package="com.dianping.cat.consumer.all.config" enable-merger="true" enable-sax-parser="true"
enable-base-visitor="true">
<entity name="all-transaction-config" root="true">
<entity name="all-config" root="true">
<entity-ref name="report" type="map" names="reports" method-find-or-create="true" />
</entity>
<entity name="report">
<attribute name="id" value-type="String" key="true" />
<entity-ref name="type" type="map" names="types" method-find-or-create="true" />
</entity>
<entity name="type">
......
......@@ -61,7 +61,7 @@
<role>com.dianping.cat.config.server.ServerFilterConfigManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.consumer.transaction.AllTransactionConfigManager</role>
<role>com.dianping.cat.consumer.config.AllReportConfigManager</role>
</requirement>
</requirements>
</component>
......@@ -121,6 +121,9 @@
<requirement>
<role>com.dianping.cat.config.server.ServerFilterConfigManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.consumer.config.AllReportConfigManager</role>
</requirement>
</requirements>
</component>
<component>
......@@ -750,8 +753,8 @@
</configuration>
</component>
<component>
<role>com.dianping.cat.consumer.transaction.AllTransactionConfigManager</role>
<implementation>com.dianping.cat.consumer.transaction.AllTransactionConfigManager</implementation>
<role>com.dianping.cat.consumer.config.AllReportConfigManager</role>
<implementation>com.dianping.cat.consumer.config.AllReportConfigManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.core.config.ConfigDao</role>
......
......@@ -5,6 +5,7 @@ import junit.framework.Assert;
import org.junit.Test;
import org.unidal.helper.Files;
import com.dianping.cat.consumer.config.AllReportConfigManager;
import com.dianping.cat.consumer.transaction.model.entity.TransactionReport;
import com.dianping.cat.consumer.transaction.model.transform.DefaultSaxParser;
......@@ -35,15 +36,15 @@ public class TransactionReportTypeAggergatorTest {
return DefaultSaxParser.parse(source);
}
public static class ExtendAllTransactionConfigManager extends AllTransactionConfigManager {
public static class ExtendAllTransactionConfigManager extends AllReportConfigManager {
@Override
public boolean validate(String type) {
public boolean validate(String report, String type) {
return true;
}
@Override
public boolean validate(String type, String name) {
public boolean validate(String report, String type, String name) {
return true;
}
}
......
......@@ -162,11 +162,9 @@ public class DefaultCommandFormatlHandler implements CommandFormatHandler, LogEn
@Override
public void register(List<Rule> rules) {
System.out.println("start register");
m_formats.clear();
for (Rule rule : rules) {
System.out.println("---"+rule.getPattern()+"----");
String format = rule.getPattern();
if (format == null || format.isEmpty()) {
......
......@@ -24,11 +24,11 @@ import com.dianping.cat.config.content.DefaultContentFetcher;
import com.dianping.cat.config.server.BlackListManager;
import com.dianping.cat.config.server.ServerConfigManager;
import com.dianping.cat.config.server.ServerFilterConfigManager;
import com.dianping.cat.consumer.config.AllReportConfigManager;
import com.dianping.cat.consumer.config.ProductLineConfigManager;
import com.dianping.cat.consumer.dependency.DependencyAnalyzer;
import com.dianping.cat.consumer.metric.MetricAnalyzer;
import com.dianping.cat.consumer.metric.MetricConfigManager;
import com.dianping.cat.consumer.transaction.AllTransactionConfigManager;
import com.dianping.cat.core.config.ConfigDao;
import com.dianping.cat.helper.JsonBuilder;
import com.dianping.cat.home.dal.report.AlertDao;
......@@ -205,7 +205,7 @@ public class ComponentsConfigurator extends AbstractResourceConfigurator {
all.add(C(SenderConfigManager.class).req(ConfigDao.class, ContentFetcher.class));
all.add(C(ActivityConfigManager.class).req(ConfigDao.class, ContentFetcher.class));
all.add(C(ConfigReloadTask.class).req(MetricConfigManager.class, ProductLineConfigManager.class,
RouterConfigManager.class, BlackListManager.class, AllTransactionConfigManager.class));
RouterConfigManager.class, BlackListManager.class, AllReportConfigManager.class));
return all;
}
......
......@@ -5,9 +5,9 @@ import org.unidal.lookup.annotation.Inject;
import com.dianping.cat.Cat;
import com.dianping.cat.config.server.BlackListManager;
import com.dianping.cat.consumer.config.AllReportConfigManager;
import com.dianping.cat.consumer.config.ProductLineConfigManager;
import com.dianping.cat.consumer.metric.MetricConfigManager;
import com.dianping.cat.consumer.transaction.AllTransactionConfigManager;
import com.dianping.cat.system.page.router.config.RouterConfigManager;
public class ConfigReloadTask implements Task {
......@@ -25,7 +25,7 @@ public class ConfigReloadTask implements Task {
private BlackListManager m_blackListManager;
@Inject
private AllTransactionConfigManager m_allTransactionConfigManager;
private AllReportConfigManager m_allTransactionConfigManager;
@Override
public String getName() {
......
......@@ -221,7 +221,7 @@ public enum Action implements org.unidal.web.mvc.Action {
SERVER_FILTER_CONFIG_UPDATE("serverFilterConfigUpdate"),
TRANSACTION_ALL_CONFIG("transactionAllConfig"),
ALL_REPORT_CONFIG("allReportConfig"),
BLACK_CONFIG_UPDATE("blackConfigUpdate");
......
......@@ -121,7 +121,7 @@ public class Handler implements PageHandler<Context> {
case BLACK_CONFIG_UPDATE:
case STORAGE_GROUP_CONFIG_UPDATE:
case SERVER_FILTER_CONFIG_UPDATE:
case TRANSACTION_ALL_CONFIG:
case ALL_REPORT_CONFIG:
m_globalConfigProcessor.process(action, payload, model);
break;
......
......@@ -145,7 +145,7 @@ public enum JspFile {
BLACK_CONFIG_UPDATE("/jsp/system/black/blackConfigUpdate.jsp"),
TRANSACTION_ALL_CONFIG("/jsp/system/transactionRule/transactionConfig.jsp");
ALL_REPORT_CONFIG("/jsp/system/transactionRule/allReportConfig.jsp");
private String m_path;
......
......@@ -212,8 +212,8 @@ public class JspViewer extends BaseJspViewer<SystemPage, Action, Context, Model>
return JspFile.SERVER_FILTER_CONFIG_UPDATE.getPath();
case BLACK_CONFIG_UPDATE:
return JspFile.BLACK_CONFIG_UPDATE.getPath();
case TRANSACTION_ALL_CONFIG:
return JspFile.TRANSACTION_ALL_CONFIG.getPath();
case ALL_REPORT_CONFIG:
return JspFile.ALL_REPORT_CONFIG.getPath();
}
throw new RuntimeException("Unknown action: " + action);
......
......@@ -12,7 +12,7 @@ import com.dianping.cat.Cat;
import com.dianping.cat.Constants;
import com.dianping.cat.config.server.BlackListManager;
import com.dianping.cat.config.server.ServerFilterConfigManager;
import com.dianping.cat.consumer.transaction.AllTransactionConfigManager;
import com.dianping.cat.consumer.config.AllReportConfigManager;
import com.dianping.cat.core.dal.Project;
import com.dianping.cat.home.group.entity.Domain;
import com.dianping.cat.report.alert.sender.config.SenderConfigManager;
......@@ -52,7 +52,7 @@ public class GlobalConfigProcessor {
private ServerFilterConfigManager m_serverFilterConfigManager;
@Inject
private AllTransactionConfigManager m_transactionConfigManager;
private AllReportConfigManager m_transactionConfigManager;
private boolean deleteProject(Payload payload) {
Project proto = new Project();
......@@ -162,7 +162,7 @@ public class GlobalConfigProcessor {
}
model.setContent(m_serverFilterConfigManager.getConfig().toString());
break;
case TRANSACTION_ALL_CONFIG:
case ALL_REPORT_CONFIG:
String transactionConfig = payload.getContent();
if (!StringUtils.isEmpty(transactionConfig)) {
model.setOpState(m_transactionConfigManager.insert(transactionConfig));
......
......@@ -442,7 +442,7 @@
<role>com.dianping.cat.config.server.BlackListManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.consumer.transaction.AllTransactionConfigManager</role>
<role>com.dianping.cat.consumer.config.AllReportConfigManager</role>
</requirement>
</requirements>
</component>
......@@ -6039,7 +6039,7 @@
<role>com.dianping.cat.config.server.ServerFilterConfigManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.consumer.transaction.AllTransactionConfigManager</role>
<role>com.dianping.cat.consumer.config.AllReportConfigManager</role>
</requirement>
</requirements>
</component>
......@@ -6056,8 +6056,8 @@
</requirements>
</component>
<component>
<role>com.dianping.cat.consumer.transaction.AllTransactionConfigManager</role>
<implementation>com.dianping.cat.consumer.transaction.AllTransactionConfigManager</implementation>
<role>com.dianping.cat.consumer.config.AllReportConfigManager</role>
<implementation>com.dianping.cat.consumer.config.AllReportConfigManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.core.config.ConfigDao</role>
......
<all-config>
<report id="transaction">
<type id="URL">
<name id="*"></name>
</type>
</report>
<report id="event">
<type id="URL">
<name id="*"></name>
</type>
<type id="SQL">
<name id="*"></name>
</type>
</report>
</all-config>
\ No newline at end of file
<all-transaction-config>
<type id="URL">
<name id="*"></name>
</type>
</all-transaction-config>
\ No newline at end of file
......@@ -96,8 +96,8 @@
<li id="transactionRule"><a href="/cat/s/config?op=transactionRule">
<i class="menu-icon fa fa-caret-right"></i>Transaction告警</a>
<b class="arrow"></b></li>
<li id="transactionAllConfig"><a href="/cat/s/config?op=transactionAllConfig">
<i class="menu-icon fa fa-caret-right"></i>Transaction合并</a>
<li id="allReportConfig"><a href="/cat/s/config?op=allReportConfig">
<i class="menu-icon fa fa-caret-right"></i>报表合并配置</a>
<b class="arrow"></b></li>
<li id="exception"><a href="/cat/s/config?op=exception">
<i class="menu-icon fa fa-caret-right"></i>异常告警配置</a>
......
......@@ -12,9 +12,9 @@
<res:useJs value="${res.js.local['alarm_js']}" target="head-js" />
<res:useCss value="${res.css.local['select2.css']}" target="head-css" />
<res:useJs value="${res.js.local['select2.min.js']}" target="head-js" />
<h4 class="text-center text-danger">Transaction All Report合并</h4>
<h4 class="text-center text-danger">Report All合并</h4>
<form name="transactionAllConfig" id="form" method="post"
action="${model.pageUri}?op=transactionAllConfig">
action="${model.pageUri}?op=allReportConfig">
<table class="table table-striped table-condensed table-hover">
<tr>
<td><textarea name="content" style="width:100%" rows="20" cols="150">${model.content}</textarea></td>
......@@ -30,7 +30,7 @@
<script type="text/javascript">
$(document).ready(function() {
$('#application_config').addClass('active open');
$('#transactionAllConfig').addClass('active');
$('#allReportConfig').addClass('active');
var state = '${model.opState}';
if(state=='Success'){
$('#state').html('操作成功');
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册