提交 0ffbce74 编写于 作者: L leon.li

change build default rule logic

上级 df21f6a0
......@@ -122,7 +122,7 @@ public class ComponentsConfigurator extends AbstractResourceConfigurator {
all.addAll(defineMetricComponents());
all.add(C(Module.class, CatHomeModule.ID, CatHomeModule.class));
all.add(C(ModuleManager.class, DefaultModuleManager.class) //
.config(E("topLevelModules").value(CatHomeModule.ID)));
......@@ -159,7 +159,7 @@ public class ComponentsConfigurator extends AbstractResourceConfigurator {
all.add(C(BugConfigManager.class).req(ConfigDao.class));
all.add(C(MetricGroupConfigManager.class).req(ConfigDao.class));
all.add(C(NetworkRuleConfigManager.class).req(ConfigDao.class));
all.add(C(BusinessRuleConfigManager.class).req(ConfigDao.class));
all.add(C(BusinessRuleConfigManager.class).req(ConfigDao.class, MetricConfigManager.class));
all.add(C(AlertConfigManager.class).req(ConfigDao.class));
all.add(C(NetGraphConfigManager.class).req(ConfigDao.class));
all.add(C(ThirdPartyConfigManager.class).req(ConfigDao.class));
......
......@@ -8,9 +8,12 @@ import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable;
import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException;
import org.unidal.dal.jdbc.DalNotFoundException;
import org.unidal.helper.Files;
import org.unidal.lookup.annotation.Inject;
import org.xml.sax.SAXException;
import com.dianping.cat.Cat;
import com.dianping.cat.advanced.metric.config.entity.MetricItemConfig;
import com.dianping.cat.consumer.metric.MetricConfigManager;
import com.dianping.cat.core.config.Config;
import com.dianping.cat.core.config.ConfigEntity;
import com.dianping.cat.home.rule.entity.Condition;
......@@ -28,6 +31,9 @@ public class BusinessRuleConfigManager extends BaseRuleConfigManager implements
private static final String CONFIG_NAME = "businessRuleConfig";
@Inject
protected MetricConfigManager m_metricConfigManager;
public String updateRule(String ruleContent) throws SAXException, IOException {
Rule rule = DefaultSaxParser.parseEntity(Rule.class, ruleContent);
String metricKey = rule.getId();
......@@ -56,7 +62,17 @@ public class BusinessRuleConfigManager extends BaseRuleConfigManager implements
item.setProductText(product);
item.setMetricItemText(metricKey);
item.setMonitorCount(true);
MetricItemConfig metricItem = m_metricConfigManager.queryMetricItemConfig(metricKey);
if (metricItem.isShowAvg()) {
item.setMonitorAvg(true);
}
if (metricItem.isShowCount()) {
item.setMonitorCount(true);
}
if (metricItem.isShowSum()) {
item.setMonitorSum(true);
}
rule.addMetricItem(item);
rule.addConfig(buildDefaultConfig());
......
......@@ -177,6 +177,9 @@
<requirement>
<role>com.dianping.cat.core.config.ConfigDao</role>
</requirement>
<requirement>
<role>com.dianping.cat.consumer.metric.MetricConfigManager</role>
</requirement>
</requirements>
</component>
<component>
......@@ -4701,6 +4704,9 @@
<role>com.dianping.cat.system.config.BusinessRuleConfigManager</role>
<implementation>com.dianping.cat.system.config.BusinessRuleConfigManager</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.consumer.metric.MetricConfigManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.core.config.ConfigDao</role>
</requirement>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册