From bf4503799a6b0cbec74ee4e5097d6aa0e9283bdb Mon Sep 17 00:00:00 2001 From: Minwoo Jung Date: Tue, 14 Oct 2014 18:25:51 +0900 Subject: [PATCH] [#17] arrange & delete unnecessary class and config --- .../pinpoint/web/alarm/AlarmEvent.java | 12 - .../pinpoint/web/alarm/AlarmJob.java | 8 - .../web/alarm/AlarmJobsRepository.java | 15 -- .../pinpoint/web/alarm/AlarmMailTemplate.java | 6 +- .../pinpoint/web/alarm/AlarmProcessor.java | 6 +- .../pinpoint/web/alarm/AlarmReader.java | 10 +- .../pinpoint/web/alarm/AlarmWriter.java | 17 +- .../pinpoint/web/alarm/CheckerCategory.java | 36 +-- .../pinpoint/web/alarm/DefaultAlarmEvent.java | 16 -- .../pinpoint/web/alarm/DefaultAlarmJob.java | 71 ------ .../web/alarm/DefaultAlarmJobsRepository.java | 68 ------ .../pinpoint/web/alarm/MainCategory.java | 48 ---- .../pinpoint/web/alarm/SubCategory.java | 151 ------------ .../{filter => checker}/AgentChecker.java | 4 +- .../AlarmChecker.java} | 6 +- .../ErrorCountChecker.java | 4 +- .../{filter => checker}/ErrorRateChecker.java | 4 +- .../{filter => checker}/GcCountChecker.java | 2 +- .../HeapUsageRateChecker.java | 2 +- .../JvmCpuUsageRateChecker.java | 2 +- .../ResponseCountChecker.java | 4 +- .../{filter => checker}/SlowCountFilter.java | 4 +- .../{filter => checker}/SlowRatesFilter.java | 4 +- .../alarm/filter/AlarmCheckCountFilter.java | 11 - .../alarm/filter/AlarmCheckRatesFilter.java | 36 --- .../web/alarm/filter/AlarmFilter.java | 10 - .../web/alarm/filter/AlarmMailSendFilter.java | 99 -------- .../web/alarm/filter/AlarmSendFilter.java | 15 -- .../web/alarm/filter/AlarmSmsSendFilter.java | 79 ------ .../web/alarm/filter/FailureCountFilter.java | 100 -------- .../web/alarm/filter/FailureRatesFilter.java | 101 -------- .../web/alarm/resource/MailResource.java | 17 -- .../web/alarm/resource/MailResourceImpl.java | 80 ------- .../web/alarm/resource/SmsResource.java | 13 - .../web/alarm/resource/SmsResourceImpl.java | 57 ----- .../alarm/vo/AlarmContactGroupResource.java | 97 -------- .../web/alarm/vo/AlarmContactResource.java | 44 ---- .../pinpoint/web/alarm/vo/AlarmResource.java | 70 ------ .../web/alarm/vo/AlarmRuleGroupResource.java | 55 ----- .../web/alarm/vo/AlarmRuleResource.java | 147 ------------ .../pinpoint/web/dao/AlarmResourceDao.java | 32 +-- .../web/dao/mysql/MySqlAlarmResourceDao.java | 66 ----- .../web/scheduler/AlarmScheduler.java | 10 - .../web/scheduler/DefaultAlarmScheduler.java | 226 ------------------ .../applicationContext-scheduler.xml | 25 -- web/src/main/resources/mapper/AlarmMapper.xml | 156 ------------ .../pinpoint/web/alarm/AlarmJobTest.java | 91 ------- .../pinpoint/web/alarm/CheckFilterTest.java | 98 -------- .../web/alarm/CheckerCategoryTest.java | 2 +- .../pinpoint/web/alarm/ProcessorTest.java | 4 +- .../pinpoint/web/alarm/SubCategoryTest.java | 43 ---- .../pinpoint/web/alarm/WriterTest.java | 8 +- .../alarm/filter/ErrorCountCheckerTest.java | 1 + .../alarm/filter/ErrorRateCheckerTest.java | 1 + .../web/alarm/filter/GcCountCheckerTest.java | 2 + .../filter/HeapUsageRateCheckerTest.java | 2 + .../filter/JvmCpuUsageRateCheckerTest.java | 2 + .../filter/ResponseCountCheckerTest.java | 1 + .../web/alarm/filter/SlowCountFilterTest.java | 1 + .../web/alarm/filter/SlowRatesFilterTest.java | 1 + .../resources/applicationContext-test.xml | 10 - 61 files changed, 83 insertions(+), 2230 deletions(-) delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmEvent.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmJob.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmJobsRepository.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/DefaultAlarmEvent.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/DefaultAlarmJob.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/DefaultAlarmJobsRepository.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/MainCategory.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/SubCategory.java rename web/src/main/java/com/navercorp/pinpoint/web/alarm/{filter => checker}/AgentChecker.java (95%) rename web/src/main/java/com/navercorp/pinpoint/web/alarm/{filter/AlarmCheckFilter.java => checker/AlarmChecker.java} (92%) rename web/src/main/java/com/navercorp/pinpoint/web/alarm/{filter => checker}/ErrorCountChecker.java (79%) rename web/src/main/java/com/navercorp/pinpoint/web/alarm/{filter => checker}/ErrorRateChecker.java (79%) rename web/src/main/java/com/navercorp/pinpoint/web/alarm/{filter => checker}/GcCountChecker.java (91%) rename web/src/main/java/com/navercorp/pinpoint/web/alarm/{filter => checker}/HeapUsageRateChecker.java (91%) rename web/src/main/java/com/navercorp/pinpoint/web/alarm/{filter => checker}/JvmCpuUsageRateChecker.java (91%) rename web/src/main/java/com/navercorp/pinpoint/web/alarm/{filter => checker}/ResponseCountChecker.java (78%) rename web/src/main/java/com/navercorp/pinpoint/web/alarm/{filter => checker}/SlowCountFilter.java (79%) rename web/src/main/java/com/navercorp/pinpoint/web/alarm/{filter => checker}/SlowRatesFilter.java (80%) delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmCheckCountFilter.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmCheckRatesFilter.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmFilter.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmMailSendFilter.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmSendFilter.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmSmsSendFilter.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/FailureCountFilter.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/FailureRatesFilter.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/MailResource.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/MailResourceImpl.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/SmsResource.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/SmsResourceImpl.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmContactGroupResource.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmContactResource.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmResource.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmRuleGroupResource.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmRuleResource.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/scheduler/AlarmScheduler.java delete mode 100644 web/src/main/java/com/navercorp/pinpoint/web/scheduler/DefaultAlarmScheduler.java delete mode 100644 web/src/main/resources/applicationContext-scheduler.xml delete mode 100644 web/src/test/java/com/navercorp/pinpoint/web/alarm/CheckFilterTest.java delete mode 100644 web/src/test/java/com/navercorp/pinpoint/web/alarm/SubCategoryTest.java diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmEvent.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmEvent.java deleted file mode 100644 index b0e2836e4..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmEvent.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.nhn.pinpoint.web.alarm; - - -/** - * - * @author koo.taejin - */ -public interface AlarmEvent { - - // 머가 더 들어가야 할까 - long getEventStartTimeMillis(); -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmJob.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmJob.java deleted file mode 100644 index 38a623849..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmJob.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.nhn.pinpoint.web.alarm; - - -public interface AlarmJob { - - boolean execute(AlarmEvent event); - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmJobsRepository.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmJobsRepository.java deleted file mode 100644 index b502ac6fc..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmJobsRepository.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.nhn.pinpoint.web.alarm; - -import java.util.List; - -import com.nhn.pinpoint.web.vo.Application; - -public interface AlarmJobsRepository { - - int getTotalJobCount(); - - List getAlarmJob(Application application); - - List getRegistedApplicationList(); - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmMailTemplate.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmMailTemplate.java index 8f7978233..28e74eb36 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmMailTemplate.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmMailTemplate.java @@ -1,6 +1,6 @@ package com.nhn.pinpoint.web.alarm; -import com.nhn.pinpoint.web.alarm.filter.AlarmCheckFilter; +import com.nhn.pinpoint.web.alarm.checker.AlarmChecker; import com.nhn.pinpoint.web.alarm.vo.Rule; public class AlarmMailTemplate { @@ -9,9 +9,9 @@ public class AlarmMailTemplate { private static final String LINK_FORMAT = "%s"; private final String pinpointUrl; - private final AlarmCheckFilter checker; + private final AlarmChecker checker; - public AlarmMailTemplate(AlarmCheckFilter checker, String pinpointUrl) { + public AlarmMailTemplate(AlarmChecker checker, String pinpointUrl) { this.checker = checker; this.pinpointUrl =pinpointUrl; } diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmProcessor.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmProcessor.java index a3d91b0bb..38c874009 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmProcessor.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmProcessor.java @@ -2,11 +2,11 @@ package com.nhn.pinpoint.web.alarm; import org.springframework.batch.item.ItemProcessor; -import com.nhn.pinpoint.web.alarm.filter.AlarmCheckFilter; +import com.nhn.pinpoint.web.alarm.checker.AlarmChecker; -public class AlarmProcessor implements ItemProcessor { +public class AlarmProcessor implements ItemProcessor { - public AlarmCheckFilter process(AlarmCheckFilter checker) { + public AlarmChecker process(AlarmChecker checker) { checker.check(); return checker; } diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmReader.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmReader.java index a0c69dfad..778fcd5e3 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmReader.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmReader.java @@ -13,14 +13,14 @@ import org.springframework.batch.item.ItemReader; import org.springframework.beans.factory.annotation.Autowired; import com.nhn.pinpoint.web.alarm.DataCollectorFactory.DataCollectorCategory; +import com.nhn.pinpoint.web.alarm.checker.AlarmChecker; import com.nhn.pinpoint.web.alarm.collector.DataCollector; -import com.nhn.pinpoint.web.alarm.filter.AlarmCheckFilter; import com.nhn.pinpoint.web.alarm.vo.Rule; import com.nhn.pinpoint.web.dao.AlarmResourceDao; import com.nhn.pinpoint.web.dao.ApplicationIndexDao; import com.nhn.pinpoint.web.vo.Application; -public class AlarmReader implements ItemReader, StepExecutionListener { +public class AlarmReader implements ItemReader, StepExecutionListener { @Autowired private DataCollectorFactory dataCollectorFactory; @@ -31,7 +31,7 @@ public class AlarmReader implements ItemReader, StepExecutionL @Autowired private AlarmResourceDao alarmResourceDao; - private final Queue checkers = new LinkedList(); + private final Queue checkers = new LinkedList(); public AlarmReader() { } @@ -42,7 +42,7 @@ public class AlarmReader implements ItemReader, StepExecutionL this.alarmResourceDao = alarmResourceDao; } - public AlarmCheckFilter read() { + public AlarmChecker read() { return checkers.poll(); } @@ -81,7 +81,7 @@ public class AlarmReader implements ItemReader, StepExecutionL collectorMap.put(collector.getDataCollectorCategory(), collector); } - AlarmCheckFilter checker = checkerCategory.createChecker(collector, rule); + AlarmChecker checker = checkerCategory.createChecker(collector, rule); checkers.add(checker); } diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmWriter.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmWriter.java index 8c1172810..54a5c41cf 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmWriter.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/alarm/AlarmWriter.java @@ -20,8 +20,7 @@ import org.springframework.batch.item.ItemWriter; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; -import com.nhn.pinpoint.web.alarm.filter.AlarmCheckFilter; -import com.nhn.pinpoint.web.alarm.vo.Rule; +import com.nhn.pinpoint.web.alarm.checker.AlarmChecker; import com.nhn.pinpoint.web.dao.mysql.MySqlAlarmResourceDao; import com.nhncorp.lucy.net.call.Fault; import com.nhncorp.lucy.net.call.Reply; @@ -30,7 +29,7 @@ import com.nhncorp.lucy.net.invoker.InvocationFuture; import com.nhncorp.lucy.npc.connector.NpcConnectionFactory; import com.nhncorp.lucy.npc.connector.NpcHessianConnector; -public class AlarmWriter implements ItemWriter { +public class AlarmWriter implements ItemWriter { private final Logger logger = LoggerFactory.getLogger(this.getClass()); @@ -56,13 +55,13 @@ public class AlarmWriter implements ItemWriter { private static final String SMS_SERVICE_ID = "EMG00058"; @Override - public void write(List checkers) throws Exception { - for(AlarmCheckFilter checker : checkers) { + public void write(List checkers) throws Exception { + for(AlarmChecker checker : checkers) { send(checker); } } - private void send(AlarmCheckFilter checker) { + private void send(AlarmChecker checker) { if (!checker.isDetected()) { return; } @@ -74,7 +73,7 @@ public class AlarmWriter implements ItemWriter { } } - private void sendSms(AlarmCheckFilter checker) { + private void sendSms(AlarmChecker checker) { List receivers = dao.selectEmpGroupPhoneNumber(checker.getEmpGroup()); if (receivers.size() == 0) { @@ -117,7 +116,7 @@ public class AlarmWriter implements ItemWriter { return result.toString(); } - private void sendEmail(AlarmCheckFilter checker) { + private void sendEmail(AlarmChecker checker) { NpcConnectionFactory factory = new NpcConnectionFactory(); factory.setBoxDirectoryServiceHostName(emailServerUrl); factory.setCharset(Charset.forName("UTF-8")); @@ -150,7 +149,7 @@ public class AlarmWriter implements ItemWriter { } } - private Object[] createSendMailParams(AlarmCheckFilter checker) { + private Object[] createSendMailParams(AlarmChecker checker) { AlarmMailTemplate mailTemplate = new AlarmMailTemplate(checker, pinpointUrl); List receivers = dao.selectEmpGroupEmail(checker.getEmpGroup()); return new Object[] { EMAIL_SERVICE_ID, OPTION, SENDER_EMAIL_ADDRESS, "", joinAddresses(receivers), mailTemplate.createSubject(), mailTemplate.createBody()}; diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/CheckerCategory.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/CheckerCategory.java index 48a544dee..b73a0be04 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/CheckerCategory.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/alarm/CheckerCategory.java @@ -4,74 +4,74 @@ import java.util.LinkedList; import java.util.List; import com.nhn.pinpoint.web.alarm.DataCollectorFactory.DataCollectorCategory; +import com.nhn.pinpoint.web.alarm.checker.AlarmChecker; +import com.nhn.pinpoint.web.alarm.checker.ErrorCountChecker; +import com.nhn.pinpoint.web.alarm.checker.ErrorRateChecker; +import com.nhn.pinpoint.web.alarm.checker.GcCountChecker; +import com.nhn.pinpoint.web.alarm.checker.HeapUsageRateChecker; +import com.nhn.pinpoint.web.alarm.checker.JvmCpuUsageRateChecker; +import com.nhn.pinpoint.web.alarm.checker.ResponseCountChecker; +import com.nhn.pinpoint.web.alarm.checker.SlowCountFilter; +import com.nhn.pinpoint.web.alarm.checker.SlowRatesFilter; import com.nhn.pinpoint.web.alarm.collector.AgentStatDataCollector; import com.nhn.pinpoint.web.alarm.collector.DataCollector; import com.nhn.pinpoint.web.alarm.collector.ResponseTimeDataCollector; -import com.nhn.pinpoint.web.alarm.filter.AlarmCheckFilter; -import com.nhn.pinpoint.web.alarm.filter.ErrorCountChecker; -import com.nhn.pinpoint.web.alarm.filter.ErrorRateChecker; -import com.nhn.pinpoint.web.alarm.filter.GcCountChecker; -import com.nhn.pinpoint.web.alarm.filter.HeapUsageRateChecker; -import com.nhn.pinpoint.web.alarm.filter.JvmCpuUsageRateChecker; -import com.nhn.pinpoint.web.alarm.filter.ResponseCountChecker; -import com.nhn.pinpoint.web.alarm.filter.SlowCountFilter; -import com.nhn.pinpoint.web.alarm.filter.SlowRatesFilter; import com.nhn.pinpoint.web.alarm.vo.Rule; public enum CheckerCategory { SLOW_COUNT("SLOW_COUNT", DataCollectorCategory.RESPONSE_TIME) { @Override - public AlarmCheckFilter createChecker(DataCollector dataCollector, Rule rule) { + public AlarmChecker createChecker(DataCollector dataCollector, Rule rule) { return new SlowCountFilter((ResponseTimeDataCollector)dataCollector, rule); } }, SLOW_RATE("SLOW_RATE", DataCollectorCategory.RESPONSE_TIME) { @Override - public AlarmCheckFilter createChecker(DataCollector dataCollector, Rule rule) { + public AlarmChecker createChecker(DataCollector dataCollector, Rule rule) { return new SlowRatesFilter((ResponseTimeDataCollector)dataCollector, rule); } }, ERROR_COUNT("ERROR_COUNT", DataCollectorCategory.RESPONSE_TIME) { @Override - public AlarmCheckFilter createChecker(DataCollector dataCollector, Rule rule) { + public AlarmChecker createChecker(DataCollector dataCollector, Rule rule) { return new ErrorCountChecker((ResponseTimeDataCollector)dataCollector, rule); } }, ERROR_RATE("ERROR_RATE", DataCollectorCategory.RESPONSE_TIME) { @Override - public AlarmCheckFilter createChecker(DataCollector dataCollector, Rule rule) { + public AlarmChecker createChecker(DataCollector dataCollector, Rule rule) { return new ErrorRateChecker((ResponseTimeDataCollector)dataCollector, rule); } }, RESPONSE_COUNT("RESPONSE_COUNT", DataCollectorCategory.RESPONSE_TIME) { @Override - public AlarmCheckFilter createChecker(DataCollector dataCollector, Rule rule) { + public AlarmChecker createChecker(DataCollector dataCollector, Rule rule) { return new ResponseCountChecker((ResponseTimeDataCollector)dataCollector, rule); } }, HEAP_USAGE_RATE("HEAP_USAGE_RATE", DataCollectorCategory.AGENT_STAT) { @Override - public AlarmCheckFilter createChecker(DataCollector dataCollector, Rule rule) { + public AlarmChecker createChecker(DataCollector dataCollector, Rule rule) { return new HeapUsageRateChecker((AgentStatDataCollector)dataCollector, rule); } }, GC_COUNT("GC_COUNT", DataCollectorCategory.AGENT_STAT) { @Override - public AlarmCheckFilter createChecker(DataCollector dataCollector, Rule rule) { + public AlarmChecker createChecker(DataCollector dataCollector, Rule rule) { return new GcCountChecker((AgentStatDataCollector)dataCollector, rule); } }, JVM_CPU_USAGE_RATE("JVM_CPU_USAGE_RATE", DataCollectorCategory.AGENT_STAT) { @Override - public AlarmCheckFilter createChecker(DataCollector dataCollector, Rule rule) { + public AlarmChecker createChecker(DataCollector dataCollector, Rule rule) { return new JvmCpuUsageRateChecker((AgentStatDataCollector)dataCollector, rule); } }; @@ -112,6 +112,6 @@ public enum CheckerCategory { return name; } - public abstract AlarmCheckFilter createChecker(DataCollector dataCollector, Rule rule); + public abstract AlarmChecker createChecker(DataCollector dataCollector, Rule rule); } diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/DefaultAlarmEvent.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/DefaultAlarmEvent.java deleted file mode 100644 index 566dda1d9..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/DefaultAlarmEvent.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.nhn.pinpoint.web.alarm; - - -public class DefaultAlarmEvent implements AlarmEvent { - - private final long startEventTimeMillis; - - public DefaultAlarmEvent(long startEventTimeMillis) { - this.startEventTimeMillis = startEventTimeMillis; - } - - @Override - public long getEventStartTimeMillis() { - return startEventTimeMillis; - } -} \ No newline at end of file diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/DefaultAlarmJob.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/DefaultAlarmJob.java deleted file mode 100644 index 485878f93..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/DefaultAlarmJob.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.nhn.pinpoint.web.alarm; - -import java.util.ArrayList; -import java.util.List; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import com.nhn.pinpoint.web.alarm.filter.AlarmCheckFilter; -import com.nhn.pinpoint.web.alarm.filter.AlarmFilter; -import com.nhn.pinpoint.web.alarm.filter.AlarmSendFilter; -import com.nhn.pinpoint.web.vo.Application; - -/** - * - * @author koo.taejin - */ -public class DefaultAlarmJob implements AlarmJob { - - private final Logger logger = LoggerFactory.getLogger(this.getClass()); - - private final Application application; - - public DefaultAlarmJob(Application application) { - this.application = application; - } - - private final List checkFilterList = new ArrayList(); - private final List sendFilterList = new ArrayList(); - - @Override - public boolean execute(AlarmEvent event) { - logger.debug("{} {} execute. CheckFilterList={}, SendFilterList={}", application, this.getClass().getSimpleName(), checkFilterList, sendFilterList); - - for (AlarmCheckFilter checkFilter : this.checkFilterList) { - checkFilter.check(); - boolean isSatisfy = false; - logger.debug("{} filter Satisfy({})", checkFilter.getClass().getSimpleName(), isSatisfy); - if (!isSatisfy) { - return false; - } - } - - for (AlarmSendFilter sendFilter : this.sendFilterList) { - sendFilter.send(this.checkFilterList, event); - } - - return true; - } - - public void addFilter(List filterList) { - for (AlarmFilter filter : filterList) { - addFilter(filter); - } - } - - public boolean addFilter(AlarmFilter filter) { - if (filter instanceof AlarmSendFilter) { - sendFilterList.add((AlarmSendFilter) filter); - return true; - } - - if (filter instanceof AlarmCheckFilter) { - checkFilterList.add((AlarmCheckFilter) filter); - return true; - } - - return false; - } - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/DefaultAlarmJobsRepository.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/DefaultAlarmJobsRepository.java deleted file mode 100644 index 117572174..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/DefaultAlarmJobsRepository.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.nhn.pinpoint.web.alarm; - -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; - -import org.apache.commons.collections.CollectionUtils; -import org.apache.commons.collections.MapUtils; - -import com.nhn.pinpoint.web.vo.Application; - -public class DefaultAlarmJobsRepository implements AlarmJobsRepository { - - private final Map> repository = new HashMap>(); - - public DefaultAlarmJobsRepository() { - } - - @Override - public int getTotalJobCount() { - int totalCount = 0; - - Collection> values = repository.values(); - for (List value : values) { - totalCount += value.size(); - } - - return totalCount; - } - - public List addAlarmJob(Application application, AlarmJob job) { - List registedJobs = (List) MapUtils.getObject(repository, application, new ArrayList()); - registedJobs.add(job); - - repository.put(application, registedJobs); - - return registedJobs; - } - - public List getAlarmJob(Application application) { - List alarmJobList = repository.get(application); - - if (alarmJobList == null || alarmJobList.size() == 0) { - return Collections.emptyList(); - } - - List shallowCopyResult = new ArrayList(); - shallowCopyResult.addAll(alarmJobList); - return shallowCopyResult; - } - - public List getRegistedApplicationList() { - Set keyList = repository.keySet(); - - if (CollectionUtils.isEmpty(keyList)) { - return Collections.emptyList(); - } - - List shallowCopyResult = new ArrayList(); - shallowCopyResult.addAll(keyList); - return shallowCopyResult; - } - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/MainCategory.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/MainCategory.java deleted file mode 100644 index dc26faee5..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/MainCategory.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.nhn.pinpoint.web.alarm; - - -public enum MainCategory { - - // 받은 요청, 보낸 요청 등으로 나누면 될듯 - REQUEST_SENDED("REQUEST_SENDED", 1), - REQUEST_RECEIVED("REQUEST_RECEIVED", 2) - ; - - private final String name; - private final int code; - - private MainCategory(String name, int code) { - this.name = name; - this.code = code; - } - - public String getName() { - return name; - } - - public int getCode() { - return code; - } - - public static MainCategory getValue(String value) { - MainCategory[] categories = MainCategory.values(); - for (MainCategory category : categories) { - if (category.getName().equalsIgnoreCase(value)) { - return category; - } - } - - return null; - } - - public static MainCategory getValue(int code) { - for (MainCategory eachCategory : MainCategory.values()) { - if (eachCategory.getCode() == code) { - return eachCategory; - } - } - - return null; - } - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/SubCategory.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/SubCategory.java deleted file mode 100644 index b44878a4e..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/SubCategory.java +++ /dev/null @@ -1,151 +0,0 @@ -package com.nhn.pinpoint.web.alarm; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - -import com.nhn.pinpoint.web.alarm.filter.AlarmCheckFilter; -import com.nhn.pinpoint.web.alarm.filter.AlarmFilter; -import com.nhn.pinpoint.web.alarm.filter.FailureCountFilter; -import com.nhn.pinpoint.web.alarm.filter.FailureRatesFilter; -import com.nhn.pinpoint.web.alarm.filter.SlowCountFilter; -import com.nhn.pinpoint.web.alarm.filter.SlowRatesFilter; -import com.nhn.pinpoint.web.alarm.vo.AlarmRuleResource; -import com.nhn.pinpoint.web.vo.Application; - -/** - * - * @author koo.taejin - */ -public enum SubCategory { - - // 이후에 Filter가 늘어나게 되면 Decorator패턴으로 변경하는 것도 좋은 방법일듯함 - // 보낸 요청 받은 요청 - FAIL_RATE("FAIL_RATE", 1, "%", MainCategory.REQUEST_SENDED) { - @Override - public AlarmCheckFilter createAlarmFilter(Application application, MainCategory parent, AlarmRuleResource rule) { - AlarmCheckFilter filter = null; - if (MainCategory.REQUEST_SENDED == parent) { - filter = new FailureRatesFilter(application); - } - - if (filter != null) { -// filter.initialize(rule); - } - - return filter; - } - }, - FAIL_COUNT("FAIL_COUNT", 2, " ", MainCategory.REQUEST_SENDED) { - @Override - public AlarmCheckFilter createAlarmFilter(Application application, MainCategory parent, AlarmRuleResource rule) { - AlarmCheckFilter filter = null; - if (MainCategory.REQUEST_SENDED == parent) { - filter = new FailureCountFilter(application); - } - - if (filter != null) { -// filter.initialize(rule); - } - - return filter; - } - }, - SLOW_RATE("SLOW_RATE", 3, "%", MainCategory.REQUEST_SENDED) { - @Override - public AlarmCheckFilter createAlarmFilter(Application application, MainCategory parent, AlarmRuleResource rule) { - AlarmCheckFilter filter = null; - if (MainCategory.REQUEST_SENDED == parent) { -// filter = new SlowRatesFilter(application); - } - - if (filter != null) { -// filter.initialize(rule); - } - - return filter; - } - }, - SLOW_COUNT("SLOW_COUNT", 4, " ", MainCategory.REQUEST_SENDED) { - @Override - public AlarmCheckFilter createAlarmFilter(Application application, MainCategory parent, AlarmRuleResource rule) { - AlarmCheckFilter filter = null; - if (MainCategory.REQUEST_SENDED == parent) { -// filter = new SlowCountFilter(null, 0, false, false); - } - - if (filter != null) { -// filter.initialize(rule); - } - - return filter; - } - }; - - private final String name; - private final int code; - private final List parentSupportCategoryList; - private final String unit; - - private SubCategory(String name, int code, String unit, MainCategory firstParentSupportCategory, MainCategory... otherParentSupportCategories) { - this.name = name; - this.code = code; - this.unit = unit; - - parentSupportCategoryList = new ArrayList(); - - parentSupportCategoryList.add(firstParentSupportCategory); - - Collections.addAll(parentSupportCategoryList, otherParentSupportCategories); - } - - public String getName() { - return name; - } - - public int getCode() { - return code; - } - - public String getUnit() { - return unit; - } - - private List getParentSupportCategoryList() { - return parentSupportCategoryList; - } - - AlarmFilter createAlarmFilter(Application application, AlarmRuleResource rule) throws Exception { - List parentSupportCategoryList = getParentSupportCategoryList(); - if (parentSupportCategoryList.size() == 1) { -// return createAlarmFilter(application, parentSupportCategoryList.get(0), rule); - return null; - } else { - throw new Exception("Ambiguous ParentCategory Exception"); - } - } - - public abstract AlarmCheckFilter createAlarmFilter(Application application, MainCategory parent, AlarmRuleResource rule); - - public static SubCategory getValue(String value) { - SubCategory[] categories = SubCategory.values(); - for (SubCategory category : categories) { - if (category.getName().equalsIgnoreCase(value)) { - return category; - } - } - - return null; - } - - public static SubCategory getValue(int code) { - for (SubCategory eachCategory : SubCategory.values()) { - if (eachCategory.getCode() == code) { - return eachCategory; - } - } - - return null; - } - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AgentChecker.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/AgentChecker.java similarity index 95% rename from web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AgentChecker.java rename to web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/AgentChecker.java index 9ed8d380f..e7b4f28eb 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AgentChecker.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/AgentChecker.java @@ -1,4 +1,4 @@ -package com.nhn.pinpoint.web.alarm.filter; +package com.nhn.pinpoint.web.alarm.checker; import java.util.HashMap; import java.util.LinkedList; @@ -9,7 +9,7 @@ import java.util.Map.Entry; import com.nhn.pinpoint.web.alarm.collector.DataCollector; import com.nhn.pinpoint.web.alarm.vo.Rule; -public abstract class AgentChecker extends AlarmCheckFilter { +public abstract class AgentChecker extends AlarmChecker { protected Map detectedAgents = new HashMap(); diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmCheckFilter.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/AlarmChecker.java similarity index 92% rename from web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmCheckFilter.java rename to web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/AlarmChecker.java index f139663b8..ea6994959 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmCheckFilter.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/AlarmChecker.java @@ -1,4 +1,4 @@ -package com.nhn.pinpoint.web.alarm.filter; +package com.nhn.pinpoint.web.alarm.checker; import java.util.LinkedList; import java.util.List; @@ -13,7 +13,7 @@ import com.nhn.pinpoint.web.alarm.vo.Rule; * * @author koo.taejin */ -public abstract class AlarmCheckFilter { +public abstract class AlarmChecker { protected final Logger logger = LoggerFactory.getLogger(this.getClass()); protected final DataCollector dataCollector; @@ -21,7 +21,7 @@ public abstract class AlarmCheckFilter { protected boolean detected = false; protected final String unit; - protected AlarmCheckFilter(Rule rule, String unit, DataCollector dataCollector) { + protected AlarmChecker(Rule rule, String unit, DataCollector dataCollector) { this.rule = rule; this.unit = unit; this.dataCollector = dataCollector; diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/ErrorCountChecker.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/ErrorCountChecker.java similarity index 79% rename from web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/ErrorCountChecker.java rename to web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/ErrorCountChecker.java index 4241aa7b4..d168948c9 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/ErrorCountChecker.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/ErrorCountChecker.java @@ -1,9 +1,9 @@ -package com.nhn.pinpoint.web.alarm.filter; +package com.nhn.pinpoint.web.alarm.checker; import com.nhn.pinpoint.web.alarm.collector.ResponseTimeDataCollector; import com.nhn.pinpoint.web.alarm.vo.Rule; -public class ErrorCountChecker extends AlarmCheckFilter { +public class ErrorCountChecker extends AlarmChecker { public ErrorCountChecker(ResponseTimeDataCollector dataCollector, Rule rule) { super(rule, "", dataCollector); diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/ErrorRateChecker.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/ErrorRateChecker.java similarity index 79% rename from web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/ErrorRateChecker.java rename to web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/ErrorRateChecker.java index eff8108c4..f91c497f0 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/ErrorRateChecker.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/ErrorRateChecker.java @@ -1,9 +1,9 @@ -package com.nhn.pinpoint.web.alarm.filter; +package com.nhn.pinpoint.web.alarm.checker; import com.nhn.pinpoint.web.alarm.collector.ResponseTimeDataCollector; import com.nhn.pinpoint.web.alarm.vo.Rule; -public class ErrorRateChecker extends AlarmCheckFilter { +public class ErrorRateChecker extends AlarmChecker { public ErrorRateChecker(ResponseTimeDataCollector dataCollector, Rule rule) { super(rule, "%", dataCollector); diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/GcCountChecker.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/GcCountChecker.java similarity index 91% rename from web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/GcCountChecker.java rename to web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/GcCountChecker.java index 68b695328..5245e6e59 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/GcCountChecker.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/GcCountChecker.java @@ -1,4 +1,4 @@ -package com.nhn.pinpoint.web.alarm.filter; +package com.nhn.pinpoint.web.alarm.checker; import java.util.Map; diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/HeapUsageRateChecker.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/HeapUsageRateChecker.java similarity index 91% rename from web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/HeapUsageRateChecker.java rename to web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/HeapUsageRateChecker.java index 7c00391db..afc40ea05 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/HeapUsageRateChecker.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/HeapUsageRateChecker.java @@ -1,4 +1,4 @@ -package com.nhn.pinpoint.web.alarm.filter; +package com.nhn.pinpoint.web.alarm.checker; import java.util.Map; diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/JvmCpuUsageRateChecker.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/JvmCpuUsageRateChecker.java similarity index 91% rename from web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/JvmCpuUsageRateChecker.java rename to web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/JvmCpuUsageRateChecker.java index 91f53a22b..b5bc713e5 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/JvmCpuUsageRateChecker.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/JvmCpuUsageRateChecker.java @@ -1,4 +1,4 @@ -package com.nhn.pinpoint.web.alarm.filter; +package com.nhn.pinpoint.web.alarm.checker; import java.util.Map; diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/ResponseCountChecker.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/ResponseCountChecker.java similarity index 78% rename from web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/ResponseCountChecker.java rename to web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/ResponseCountChecker.java index 418a1d54c..a40b67087 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/ResponseCountChecker.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/ResponseCountChecker.java @@ -1,9 +1,9 @@ -package com.nhn.pinpoint.web.alarm.filter; +package com.nhn.pinpoint.web.alarm.checker; import com.nhn.pinpoint.web.alarm.collector.ResponseTimeDataCollector; import com.nhn.pinpoint.web.alarm.vo.Rule; -public class ResponseCountChecker extends AlarmCheckFilter { +public class ResponseCountChecker extends AlarmChecker { public ResponseCountChecker(ResponseTimeDataCollector dataCollector, Rule rule) { super(rule, "", dataCollector); diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/SlowCountFilter.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/SlowCountFilter.java similarity index 79% rename from web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/SlowCountFilter.java rename to web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/SlowCountFilter.java index d40d40c34..d78a0c4fc 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/SlowCountFilter.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/SlowCountFilter.java @@ -1,9 +1,9 @@ -package com.nhn.pinpoint.web.alarm.filter; +package com.nhn.pinpoint.web.alarm.checker; import com.nhn.pinpoint.web.alarm.collector.ResponseTimeDataCollector; import com.nhn.pinpoint.web.alarm.vo.Rule; -public class SlowCountFilter extends AlarmCheckFilter { +public class SlowCountFilter extends AlarmChecker { public SlowCountFilter(ResponseTimeDataCollector dataCollector, Rule rule) { super(rule, "", dataCollector); diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/SlowRatesFilter.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/SlowRatesFilter.java similarity index 80% rename from web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/SlowRatesFilter.java rename to web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/SlowRatesFilter.java index 8dcc2db0a..eaba1f7a9 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/SlowRatesFilter.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/alarm/checker/SlowRatesFilter.java @@ -1,4 +1,4 @@ -package com.nhn.pinpoint.web.alarm.filter; +package com.nhn.pinpoint.web.alarm.checker; import com.nhn.pinpoint.web.alarm.collector.ResponseTimeDataCollector; import com.nhn.pinpoint.web.alarm.vo.Rule; @@ -7,7 +7,7 @@ import com.nhn.pinpoint.web.alarm.vo.Rule; * * @author koo.taejin */ -public class SlowRatesFilter extends AlarmCheckFilter { +public class SlowRatesFilter extends AlarmChecker { public SlowRatesFilter(ResponseTimeDataCollector dataCollector, Rule rule) { super(rule, "%", dataCollector); diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmCheckCountFilter.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmCheckCountFilter.java deleted file mode 100644 index d962ee610..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmCheckCountFilter.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.nhn.pinpoint.web.alarm.filter; - -import com.nhn.pinpoint.web.alarm.collector.DataCollector; -import com.nhn.pinpoint.web.alarm.vo.Rule; - -public abstract class AlarmCheckCountFilter extends AlarmCheckFilter { - - protected AlarmCheckCountFilter(Rule rule, String unit, DataCollector dataCollector) { - super(rule, unit, dataCollector); - } -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmCheckRatesFilter.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmCheckRatesFilter.java deleted file mode 100644 index b737eca21..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmCheckRatesFilter.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.nhn.pinpoint.web.alarm.filter; - -import com.nhn.pinpoint.web.alarm.collector.DataCollector; -import com.nhn.pinpoint.web.alarm.vo.Rule; - - -public abstract class AlarmCheckRatesFilter extends AlarmCheckFilter { - - protected AlarmCheckRatesFilter(Rule rule, DataCollector dataCollector) { - super(rule, "%", dataCollector); - } - - protected boolean check(long count, long totalCount) { - int rates = getRates(count, totalCount); - - int threshold = getRule().getThreshold(); - - if (rates >= threshold) { - return true; - } else { - return false; - } - } - - private int getRates(long count, long totalCount) { - int percent = 0; - if (count == 0 || totalCount == 0) { - return percent; - } else { - percent = Math.round((count * 100) / totalCount); - } - - return percent; - } - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmFilter.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmFilter.java deleted file mode 100644 index 26ce17c5f..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmFilter.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.nhn.pinpoint.web.alarm.filter; - - -/** - * - * @author koo.taejin - */ -public interface AlarmFilter { - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmMailSendFilter.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmMailSendFilter.java deleted file mode 100644 index 0436d737e..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmMailSendFilter.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.nhn.pinpoint.web.alarm.filter; - -import java.nio.charset.Charset; -import java.util.List; - -import org.apache.commons.lang3.StringUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import com.nhn.pinpoint.web.alarm.AlarmEvent; -import com.nhn.pinpoint.web.alarm.AlarmMailTemplate; -import com.nhn.pinpoint.web.alarm.resource.MailResource; -import com.nhn.pinpoint.web.vo.Application; -import com.nhncorp.lucy.net.call.Fault; -import com.nhncorp.lucy.net.call.Reply; -import com.nhncorp.lucy.net.call.ReturnValue; -import com.nhncorp.lucy.net.invoker.InvocationFuture; -import com.nhncorp.lucy.npc.connector.NpcConnectionFactory; -import com.nhncorp.lucy.npc.connector.NpcHessianConnector; - -/** - * - * @author koo.taejin - */ -public class AlarmMailSendFilter extends AlarmSendFilter { - - private final Logger logger = LoggerFactory.getLogger(this.getClass()); - - private static final String ADDR_SEPARATOR = ";"; - - private final Application application; - private final MailResource mailResource; - private final List receiverList; - - public AlarmMailSendFilter(Application application, MailResource mailResource, List receiverList) { - this.application = application; - this.mailResource = mailResource; - this.receiverList = receiverList; - } - - @Override - public boolean send(List alarmCheckFilterList, AlarmEvent event) { - NpcConnectionFactory factory = new NpcConnectionFactory(); - factory.setBoxDirectoryServiceHostName(mailResource.getUrl()); - factory.setCharset(Charset.forName("UTF-8")); - factory.setLightWeight(true); - - NpcHessianConnector connector = null; - try { - connector = factory.create(); - -// AlarmMailTemplate mailTemplate = new AlarmMailTemplate(application, mailResource, event); - AlarmMailTemplate mailTemplate = new AlarmMailTemplate(null, null); - - Object[] params = createSendMailParams(alarmCheckFilterList, mailTemplate); - - InvocationFuture future = connector.invoke(null, "send", params); - future.await(); - Reply reply = (Reply) future.getReturnValue(); - if (reply instanceof ReturnValue) { - Object result = ((ReturnValue) reply).get(); - logger.debug("MessageId:{}", result); - return true; - } else if (reply instanceof Fault) { - String code = ((Fault) reply).getCode(); - String message = ((Fault) reply).getMessage(); - logger.warn("Unexpected result:code={}, message={}", code, message); - } else { - logger.warn("Unexpected clazz({}).", reply.getClass()); - } - } catch (Exception e) { - logger.warn(e.getMessage(), e); - } finally { - if (connector != null) { - connector.dispose(); - } - } - - // TODO Auto-generated method stub - return false; - } - - private Object[] createSendMailParams(List alarmCheckFilterList, AlarmMailTemplate mailTemplate) { - return new Object[] { - mailResource.getServiceId(), - mailResource.getOption(), - mailResource.getSenderEmailAddress(), /* 보낸이 */ - "", /* 답장 받을 주소 */ - joinAddresses(receiverList), /* 받는이 */ - mailTemplate.createSubject(), - mailTemplate.createBody() - }; - } - - private String joinAddresses(List addresses) { - return StringUtils.join(addresses, ADDR_SEPARATOR); - } - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmSendFilter.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmSendFilter.java deleted file mode 100644 index 5b397d910..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmSendFilter.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.nhn.pinpoint.web.alarm.filter; - -import java.util.List; - -import com.nhn.pinpoint.web.alarm.AlarmEvent; - -/** - * - * @author koo.taejin - */ -public abstract class AlarmSendFilter implements AlarmFilter { - - abstract public boolean send(List checkFilterList, AlarmEvent event); - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmSmsSendFilter.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmSmsSendFilter.java deleted file mode 100644 index 9cbd4e4d3..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/AlarmSmsSendFilter.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.nhn.pinpoint.web.alarm.filter; - -import java.util.ArrayList; -import java.util.List; - -import org.apache.http.HttpEntity; -import org.apache.http.HttpResponse; -import org.apache.http.NameValuePair; -import org.apache.http.client.methods.HttpGet; -import org.apache.http.client.utils.URLEncodedUtils; -import org.apache.http.impl.client.DefaultHttpClient; -import org.apache.http.message.BasicNameValuePair; -import org.apache.http.util.EntityUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import com.nhn.pinpoint.web.alarm.AlarmEvent; -import com.nhn.pinpoint.web.alarm.resource.SmsResource; -import com.nhn.pinpoint.web.vo.Application; - -/** - * - * @author koo.taejin - */ -public class AlarmSmsSendFilter extends AlarmSendFilter { - - private final Logger logger = LoggerFactory.getLogger(this.getClass()); - - private static final String QUOTATATION = "\""; - - private final Application application; - private final SmsResource smsResource; - private final List receiverList; - - public AlarmSmsSendFilter(Application application, SmsResource smsResource, List receiverList) { - this.application = application; - this.smsResource = smsResource; - this.receiverList = receiverList; - } - - @Override - public boolean send(List alarmCheckFilterList, AlarmEvent event) { - DefaultHttpClient client = new DefaultHttpClient(); - - List nvps = new ArrayList(); - nvps.add(new BasicNameValuePair("serviceId", smsResource.getServiceId())); - nvps.add(new BasicNameValuePair("sendMdn", QUOTATATION + smsResource.getSenderPhoneNumber() + QUOTATATION)); - nvps.add(new BasicNameValuePair("receiveMdnList", convertToReceiverFormat(receiverList))); - nvps.add(new BasicNameValuePair("content", QUOTATATION + null + QUOTATATION)); - - HttpGet get = new HttpGet(smsResource.getUrl() + "?" + URLEncodedUtils.format(nvps, "UTF-8")); - - logger.debug("{}", get.getURI()); - - try { - HttpResponse response = client.execute(get); - if (response != null) { - HttpEntity entity = response.getEntity(); - // 이작업 자체가 닫는거랑 같음 - logger.debug("result={}", EntityUtils.toString(entity)); - } - } catch (Exception e) { - logger.warn(e.getMessage(), e); - } finally { - // 이건 일단 이렇게 하고 나중에 성능을 위해서 바꾸장 - client.getConnectionManager().shutdown(); - } - return false; - } - - private String convertToReceiverFormat(List receivers) { - List result = new ArrayList(); - for (String receiver : receivers) { - result.add(QUOTATATION + receiver + QUOTATATION); - } - return result.toString(); - } - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/FailureCountFilter.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/FailureCountFilter.java deleted file mode 100644 index 9ad70efdb..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/FailureCountFilter.java +++ /dev/null @@ -1,100 +0,0 @@ -package com.nhn.pinpoint.web.alarm.filter; - -import java.util.Collection; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import com.nhn.pinpoint.web.alarm.AlarmEvent; -import com.nhn.pinpoint.web.applicationmap.histogram.TimeHistogram; -import com.nhn.pinpoint.web.applicationmap.rawdata.AgentHistogram; -import com.nhn.pinpoint.web.applicationmap.rawdata.AgentHistogramList; -import com.nhn.pinpoint.web.applicationmap.rawdata.LinkData; -import com.nhn.pinpoint.web.applicationmap.rawdata.LinkDataMap; -import com.nhn.pinpoint.web.dao.MapStatisticsCallerDao; -import com.nhn.pinpoint.web.vo.Application; -import com.nhn.pinpoint.web.vo.Range; - -/** - * - * @author koo.taejin - */ -public class FailureCountFilter extends AlarmCheckCountFilter { - - private final Logger logger = LoggerFactory.getLogger(this.getClass()); - - private final Application application; - - public FailureCountFilter(Application application) { - super(null, null, null); - this.application = application; - } - - public void check() { -// return true; - } - -// @Override - public boolean check(AlarmEvent event) { - logger.debug("{} check.", this.getClass().getSimpleName()); - -// MapStatisticsCallerDao dao = event.getMapStatisticsCallerDao(); - MapStatisticsCallerDao dao = null; - - if (dao == null) { - logger.warn("{} object is null.", MapStatisticsCallerDao.class.getSimpleName()); - return false; - } - - long startEventTimeMillis = event.getEventStartTimeMillis(); - - // 이것도 CheckTImeMillis의 시간이 길면 나누어야 함 - // 추가적으로 시간이 범위에 있는 만큼 다 안들어 오면 ?? - // 일단은 아주 단순하게 -// int continuationTime = getRule().getContinuosTime(); - int continuationTime = 300000; - Range range = Range.createUncheckedRange(startEventTimeMillis - continuationTime, startEventTimeMillis); - - LinkDataMap linkDataMap = dao.selectCaller(application, range); - for (LinkData linkData : linkDataMap.getLinkDataList()) { - Application toApplication = linkData.getToApplication(); -// if (toApplication.getServiceType().isTerminal() || toApplication.getServiceType().isUnknown()) { -// logger.debug("Application({}) is invalid serviceType. this is skip.", toApplication.getName()); -// continue; -// } - - AgentHistogramList sourceList = linkData.getSourceList(); - Collection agentHistogramList = sourceList.getAgentHistogramList(); - - boolean isSatisFied = checkCounts(toApplication, agentHistogramList); - if (isSatisFied) { - return true; - } - } - - return false; - } - - private boolean checkCounts(Application toApplication, Collection agentHistogramList) { - long totalCount = 0; - long successCount = 0; - long errorCount = 0; - - for (AgentHistogram agent : agentHistogramList) { - for (TimeHistogram time : agent.getTimeHistogram()) { - totalCount += time.getTotalCount(); - successCount += time.getSuccessCount(); - errorCount = time.getErrorCount(); - } - } - logger.info("{} -> {} {}/{}(error={})", application.getName(), toApplication.getName(), successCount, totalCount, errorCount); - - return decideResult(errorCount); - } - - @Override - protected long getDetectedValue() { - return 0; - } - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/FailureRatesFilter.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/FailureRatesFilter.java deleted file mode 100644 index e9c5f0d0d..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/filter/FailureRatesFilter.java +++ /dev/null @@ -1,101 +0,0 @@ -package com.nhn.pinpoint.web.alarm.filter; - -import java.util.Collection; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import com.nhn.pinpoint.web.alarm.AlarmEvent; -import com.nhn.pinpoint.web.applicationmap.histogram.TimeHistogram; -import com.nhn.pinpoint.web.applicationmap.rawdata.AgentHistogram; -import com.nhn.pinpoint.web.applicationmap.rawdata.AgentHistogramList; -import com.nhn.pinpoint.web.applicationmap.rawdata.LinkData; -import com.nhn.pinpoint.web.applicationmap.rawdata.LinkDataMap; -import com.nhn.pinpoint.web.dao.MapStatisticsCallerDao; -import com.nhn.pinpoint.web.vo.Application; -import com.nhn.pinpoint.web.vo.Range; - -/** - * - * @author koo.taejin - */ -public class FailureRatesFilter extends AlarmCheckRatesFilter { - - private final Logger logger = LoggerFactory.getLogger(this.getClass()); - - private final Application application; - - public FailureRatesFilter(Application application) { - super(null, null); - this.application = application; - } - - public void check() { - } - -// @Override - public boolean check(AlarmEvent event) { - logger.debug("{} check.", this.getClass().getSimpleName()); - -// MapStatisticsCallerDao dao = event.getMapStatisticsCallerDao(); - MapStatisticsCallerDao dao = null; - - if (dao == null) { - logger.warn("{} object is null.", MapStatisticsCallerDao.class.getSimpleName()); - return false; - } - - long startEventTimeMillis = event.getEventStartTimeMillis(); - - // 이것도 CheckTImeMillis의 시간이 길면 나누어야 함 - // 추가적으로 시간이 범위에 있는 만큼 다 안들어 오면 ?? - // 일단은 아주 단순하게 -// int continuationTime = getRule().getContinuosTime(); - int continuationTime = 300000; - Range range = Range.createUncheckedRange(startEventTimeMillis - continuationTime, startEventTimeMillis); - - LinkDataMap linkDataMap = dao.selectCaller(application, range); - for (LinkData linkData : linkDataMap.getLinkDataList()) { - Application toApplication = linkData.getToApplication(); -// if (toApplication.getServiceType().isTerminal() || toApplication.getServiceType().isUnknown()) { -// logger.debug("Application({}) is invalid serviceType. this is skip.", toApplication.getName()); -// continue; -// } - - AgentHistogramList sourceList = linkData.getSourceList(); - Collection agentHistogramList = sourceList.getAgentHistogramList(); - - boolean isSatisFied = checkRates(toApplication, agentHistogramList); - if (isSatisFied) { - return true; - } - } - - return false; - } - - private boolean checkRates(Application toApplication, Collection agentHistogramList) { - long totalCount = 0; - long successCount = 0; - long slowCount = 0; - long errorCount = 0; - - for (AgentHistogram agent : agentHistogramList) { - for (TimeHistogram time : agent.getTimeHistogram()) { - totalCount += time.getTotalCount(); - successCount += time.getSuccessCount(); - slowCount += time.getSlowCount(); - errorCount = time.getErrorCount(); - } - } - logger.info("{} -> {} {}/{}(slow={}, error={})", application.getName(), toApplication.getName(), successCount, totalCount, slowCount, errorCount); - - return check(errorCount, totalCount); - } - - @Override - protected long getDetectedValue() { - // TODO Auto-generated method stub - return 0; - } -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/MailResource.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/MailResource.java deleted file mode 100644 index aafdb73a2..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/MailResource.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.nhn.pinpoint.web.alarm.resource; - -public interface MailResource { - - String getPinpointUrl(); - - String getUrl(); - - String getServiceId(); - - String getSenderEmailAddress(); - - String getOption(); - - String getSubject(); - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/MailResourceImpl.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/MailResourceImpl.java deleted file mode 100644 index df983e2cc..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/MailResourceImpl.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.nhn.pinpoint.web.alarm.resource; - -import org.springframework.beans.factory.annotation.Value; - -/** - * - * @author koo.taejin - */ -public class MailResourceImpl implements MailResource { - - @Value("#{dataProps['pinpoint.url']}") - private String pinpointUrl; - @Value("#{dataProps['alarm.mail.url']}") - private String url; - @Value("#{dataProps['alarm.mail.serviceId']}") - private String serviceId; - @Value("#{dataProps['alarm.mail.sender.emailAddress']}") - private String senderEmailAddress; - @Value("#{dataProps['alarm.mail.option']}") - private String option; - @Value("#{dataProps['alarm.mail.subject']}") - private String subject; - - - - @Override - public String getPinpointUrl() { - return pinpointUrl; - } - public void setPinpointUrl(String pinpointUrl) { - this.pinpointUrl = pinpointUrl; - } - - @Override - public String getUrl() { - return url; - } - public void setUrl(String url) { - this.url = url; - } - - @Override - public String getServiceId() { - return serviceId; - } - public void setServiceId(String serviceId) { - this.serviceId = serviceId; - } - - @Override - public String getSenderEmailAddress() { - return senderEmailAddress; - } - public void setSenderEmailAddress(String senderEmailAddress) { - this.senderEmailAddress = senderEmailAddress; - } - - @Override - public String getOption() { - return option; - } - public void setOption(String option) { - this.option = option; - } - - @Override - public String getSubject() { - return subject; - } - public void setSubject(String subject) { - this.subject = subject; - } - - @Override - public String toString() { - return "MailResourceImpl [pinpointUrl=" + pinpointUrl + ", url=" + url + ", serviceId=" + serviceId + ", senderEmailAddress=" + senderEmailAddress - + ", option=" + option + ", subject=" + subject + "]"; - } - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/SmsResource.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/SmsResource.java deleted file mode 100644 index 472e2969a..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/SmsResource.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.nhn.pinpoint.web.alarm.resource; - -public interface SmsResource { - - String getPinpointUrl(); - - String getUrl(); - - String getServiceId(); - - String getSenderPhoneNumber(); - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/SmsResourceImpl.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/SmsResourceImpl.java deleted file mode 100644 index 120255082..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/resource/SmsResourceImpl.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.nhn.pinpoint.web.alarm.resource; - -import org.springframework.beans.factory.annotation.Value; - -/** - * - * @author koo.taejin - */ -public class SmsResourceImpl implements SmsResource { - - @Value("#{dataProps['pinpoint.url']}") - private String pinpointUrl; - @Value("#{dataProps['alarm.sms.url']}") - private String url; - @Value("#{dataProps['alarm.sms.serviceId']}") - private String serviceId; - @Value("#{dataProps['alarm.sms.sender.phoneNumber']}") - private String senderPhoneNumber; - - @Override - public String getPinpointUrl() { - return pinpointUrl; - } - public void setPinpointUrl(String pinpointUrl) { - this.pinpointUrl = pinpointUrl; - } - - @Override - public String getUrl() { - return url; - } - public void setUrl(String url) { - this.url = url; - } - - @Override - public String getServiceId() { - return serviceId; - } - public void setServiceId(String serviceId) { - this.serviceId = serviceId; - } - - @Override - public String getSenderPhoneNumber() { - return senderPhoneNumber; - } - public void setSenderPhoneNumber(String senderPhoneNumber) { - this.senderPhoneNumber = senderPhoneNumber; - } - - @Override - public String toString() { - return "SmsResourceImpl [pinpointUrl=" + pinpointUrl + ", url=" + url + ", serviceId=" + serviceId + ", senderPhoneNumber=" + senderPhoneNumber + "]"; - } - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmContactGroupResource.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmContactGroupResource.java deleted file mode 100644 index 94427d4de..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmContactGroupResource.java +++ /dev/null @@ -1,97 +0,0 @@ -package com.nhn.pinpoint.web.alarm.vo; - - -import java.util.Date; -import java.util.List; - -import org.apache.ibatis.type.Alias; - -@Alias("alarmContactGroup") -public class AlarmContactGroupResource { - - private Integer id; - - private String alarmContactGroupName; - private String alarmContactGroupDescrption; - - private Date registerTime; - private String registerEmployeeNumber; - - private Date modifyTime; - private String modifyEmployeeNumber; - - private List alarmContactList; - - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - - public String getAlarmContactGroupName() { - return alarmContactGroupName; - } - - public void setAlarmContactGroupName(String alarmContactGroupName) { - this.alarmContactGroupName = alarmContactGroupName; - } - - public String getAlarmContactGroupDescrption() { - return alarmContactGroupDescrption; - } - - public void setAlarmContactGroupDescrption(String alarmContactGroupDescrption) { - this.alarmContactGroupDescrption = alarmContactGroupDescrption; - } - - public List getAlarmContactList() { - return alarmContactList; - } - - public void setAlarmContactList(List alarmContactList) { - this.alarmContactList = alarmContactList; - } - - - public Date getRegisterTime() { - return registerTime; - } - - public void setRegisterTime(Date registerTime) { - this.registerTime = registerTime; - } - - public String getRegisterEmployeeNumber() { - return registerEmployeeNumber; - } - - public void setRegisterEmployeeNumber(String registerEmployeeNumber) { - this.registerEmployeeNumber = registerEmployeeNumber; - } - - public Date getModifyTime() { - return modifyTime; - } - - public void setModifyTime(Date modifyTime) { - this.modifyTime = modifyTime; - } - - public String getModifyEmployeeNumber() { - return modifyEmployeeNumber; - } - - public void setModifyEmployeeNumber(String modifyEmployeeNumber) { - this.modifyEmployeeNumber = modifyEmployeeNumber; - } - - @Override - public String toString() { - return "AlarmContactGroupResource [id=" + id + ", alarmContactGroupName=" + alarmContactGroupName + ", alarmContactGroupDescrption=" - + alarmContactGroupDescrption + ", registerTime=" + registerTime + ", registerEmployeeNumber=" + registerEmployeeNumber + ", modifyTime=" - + modifyTime + ", modifyEmployeeNumber=" + modifyEmployeeNumber + ", alarmContactList=" + alarmContactList + "]"; - } - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmContactResource.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmContactResource.java deleted file mode 100644 index d89bafeaa..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmContactResource.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.nhn.pinpoint.web.alarm.vo; - -import org.apache.ibatis.type.Alias; - -@Alias("alarmContact") -public class AlarmContactResource { - - private Integer id; - private Integer alarmContactGroupId; - private String phoneNum; - private String emailAddress; - - public Integer getId() { - return id; - } - public void setId(Integer id) { - this.id = id; - } - public Integer getAlarmContactGroupId() { - return alarmContactGroupId; - } - public void setAlarmContactGroupId(Integer alarmContactGroupId) { - this.alarmContactGroupId = alarmContactGroupId; - } - public String getPhoneNum() { - return phoneNum; - } - public void setPhoneNum(String phoneNum) { - this.phoneNum = phoneNum; - } - public String getEmailAddress() { - return emailAddress; - } - public void setEmailAddress(String emailAddress) { - this.emailAddress = emailAddress; - } - - @Override - public String toString() { - return "AlarmContactResource [id=" + id + ", alarmContactGroupId=" + alarmContactGroupId + ", phoneNum=" + phoneNum + ", emailAddress=" + emailAddress - + "]"; - } - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmResource.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmResource.java deleted file mode 100644 index bf90ded3e..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmResource.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.nhn.pinpoint.web.alarm.vo; - -import org.apache.ibatis.type.Alias; - -@Alias("alarm") -public class AlarmResource { - - private Integer id; - - private String agentId; - - private String alarmGroupName; - private String alarmGroupDescrption; - - private AlarmRuleGroupResource alarmRuleGroup; - private AlarmContactGroupResource alarmContactGroup; - - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - - public String getAgentId() { - return agentId; - } - - public void setAgentId(String agentId) { - this.agentId = agentId; - } - - public String getAlarmGroupName() { - return alarmGroupName; - } - public void setAlarmGroupName(String alarmGroupName) { - this.alarmGroupName = alarmGroupName; - } - - public String getAlarmGroupDescrption() { - return alarmGroupDescrption; - } - public void setAlarmGroupDescrption(String alarmGroupDescrption) { - this.alarmGroupDescrption = alarmGroupDescrption; - } - - public AlarmRuleGroupResource getAlarmRuleGroup() { - return alarmRuleGroup; - } - - public void setAlarmRuleGroup(AlarmRuleGroupResource alarmRuleGroup) { - this.alarmRuleGroup = alarmRuleGroup; - } - - public AlarmContactGroupResource getAlarmContactGroup() { - return alarmContactGroup; - } - - public void setAlarmContactGroup(AlarmContactGroupResource alarmContactGroup) { - this.alarmContactGroup = alarmContactGroup; - } - - @Override - public String toString() { - return "AlarmResource [id=" + id + ", agentId=" + agentId + ", alarmGroupName=" + alarmGroupName + ", alarmGroupDescrption=" + alarmGroupDescrption - + ", alarmRuleGroup=" + alarmRuleGroup + ", alarmContactGroup=" + alarmContactGroup + "]"; - } - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmRuleGroupResource.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmRuleGroupResource.java deleted file mode 100644 index 60d65d0dc..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmRuleGroupResource.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.nhn.pinpoint.web.alarm.vo; - -import java.util.List; - -import org.apache.ibatis.type.Alias; - -@Alias("alarmRuleGroup") -public class AlarmRuleGroupResource { - - private Integer id; - - private String alarmRuleGroupName; - private String alarmRuleGroupDescrption; - - private List alarmRuleList; - - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - - public String getAlarmRuleGroupName() { - return alarmRuleGroupName; - } - - public void setAlarmRuleGroupName(String alarmRuleGroupName) { - this.alarmRuleGroupName = alarmRuleGroupName; - } - - public String getAlarmRuleGroupDescrption() { - return alarmRuleGroupDescrption; - } - - public void setAlarmRuleGroupDescrption(String alarmRuleGroupDescrption) { - this.alarmRuleGroupDescrption = alarmRuleGroupDescrption; - } - - public List getAlarmRuleList() { - return alarmRuleList; - } - - public void setAlarmRuleList(List alarmRuleList) { - this.alarmRuleList = alarmRuleList; - } - - @Override - public String toString() { - return "AlarmRuleGroupResource [id=" + id + ", alarmRuleGroupName=" + alarmRuleGroupName + ", alarmRuleGroupDescrption=" - + alarmRuleGroupDescrption + ", alarmRuleList=" + alarmRuleList + "]"; - } - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmRuleResource.java b/web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmRuleResource.java deleted file mode 100644 index afbf17df6..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/alarm/vo/AlarmRuleResource.java +++ /dev/null @@ -1,147 +0,0 @@ -package com.nhn.pinpoint.web.alarm.vo; - -import org.apache.ibatis.type.Alias; - -import com.nhn.pinpoint.web.alarm.MainCategory; -import com.nhn.pinpoint.web.alarm.SubCategory; - -/** - * - * @author koo.taejin - */ -@Alias("alarmRule") -public class AlarmRuleResource { - - private Integer id; - private Integer alarmRuleGroupId; - private Integer alarmRuleSubCategoryId; - private Integer thresholdRule; - private boolean compareRule; - private Integer continuosTime; - private String alarmRuleName; - private String alarmRuleDescrption; - -// private MainCategory mainCategory; -// private SubCategory subCategory; - - private String mainCategory; - private String subCategory; - - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - - public Integer getAlarmRuleGroupId() { - return alarmRuleGroupId; - } - - public void setAlarmRuleGroupId(Integer alarmRuleGroupId) { - this.alarmRuleGroupId = alarmRuleGroupId; - } - - public Integer getAlarmRuleSubCategoryId() { - return alarmRuleSubCategoryId; - } - - public void setAlarmRuleSubCategoryId(Integer alarmRuleSubCategoryId) { - this.alarmRuleSubCategoryId = alarmRuleSubCategoryId; - } - - public Integer getThresholdRule() { - return thresholdRule; - } - - public void setThresholdRule(Integer thresholdRule) { - this.thresholdRule = thresholdRule; - } - - public boolean isCompareRule() { - return compareRule; - } - - public void setCompareRule(boolean compareRule) { - this.compareRule = compareRule; - } - - public Integer getContinuosTime() { - return continuosTime; - } - - public void setContinuosTime(Integer continuosTime) { - this.continuosTime = continuosTime; - } - - public String getAlarmRuleName() { - return alarmRuleName; - } - - public void setAlarmRuleName(String alarmRuleName) { - this.alarmRuleName = alarmRuleName; - } - - public String getAlarmRuleDescrption() { - return alarmRuleDescrption; - } - - public void setAlarmRuleDescrption(String alarmRuleDescrption) { - this.alarmRuleDescrption = alarmRuleDescrption; - } - - - public MainCategory getMainCategory() { - return MainCategory.getValue(mainCategory); - } - - public void setMainCategory(String mainCategory) { - this.mainCategory = mainCategory; - } - - public SubCategory getSubCategory() { - return SubCategory.getValue(subCategory); - } - - public void setSubCategory(String subCategory) { - this.subCategory = subCategory; - } - - public String ruleToString() { - StringBuilder rule = new StringBuilder(); - - rule.append(getMainCategory().getName() + " "); - rule.append(getSubCategory().getName() + " "); - rule.append(">=" + thresholdRule + getSubCategory().getUnit() + " "); - rule.append("(" + getContinuosTime() + "ms)"); - - return rule.toString(); - } - - @Override - public String toString() { - return "AlarmRuleResource [id=" + id + ", alarmRuleGroupId=" + alarmRuleGroupId + ", alarmRuleSubCategoryId=" + alarmRuleSubCategoryId - + ", thresholdRule=" + thresholdRule + ", compareRule=" + compareRule + ", continuosTime=" + continuosTime + ", alarmRuleName=" + alarmRuleName - + ", alarmRuleDescrption=" + alarmRuleDescrption + ", mainCategory=" + mainCategory + ", subCategory=" + subCategory + "]"; - } - - -// public String getMainCategory() { -// return mainCategory; -// } -// -// public void setMainCategory(String mainCategory) { -// this.mainCategory = mainCategory; -// } -// -// public String getSubCategory() { -// return subCategory; -// } -// -// public void setSubCategory(String subCategory) { -// this.subCategory = subCategory; -// } - - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/dao/AlarmResourceDao.java b/web/src/main/java/com/navercorp/pinpoint/web/dao/AlarmResourceDao.java index 44c746919..49afc9265 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/dao/AlarmResourceDao.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/dao/AlarmResourceDao.java @@ -2,39 +2,27 @@ package com.nhn.pinpoint.web.dao; import java.util.List; -import com.nhn.pinpoint.web.alarm.vo.AlarmContactGroupResource; -import com.nhn.pinpoint.web.alarm.vo.AlarmContactResource; -import com.nhn.pinpoint.web.alarm.vo.AlarmResource; -import com.nhn.pinpoint.web.alarm.vo.AlarmRuleGroupResource; -import com.nhn.pinpoint.web.alarm.vo.AlarmRuleResource; +import com.nhn.pinpoint.web.alarm.vo.AlarmEmp; import com.nhn.pinpoint.web.alarm.vo.Rule; public interface AlarmResourceDao { - + public List selectAppRule(String applicationName); + + public void insertAppRule(List rules); + public void deleteAppRule(String applicationName); + public List selectEmpGroupPhoneNumber(String empGroup); public List selectEmpGroupEmail(String empGroup); - int selectAlarmCount(); + public List selectEmpGroupName(); - List selectAlarmList(); + public List selectEmpGroupMember(String alarmGroup); - List selectAlarmRuleList(); - - List selectAlarmRuleGroupList(); - - void insertAlarmContact(AlarmContactResource resource); - List selectAlarmContactList(); - void updateAlarmCountact(AlarmContactResource resource); - void deleteAlarmCountact(AlarmContactResource resource); - - void insertAlarmContactGroup(AlarmContactGroupResource resource); - List selectAlarmContactGroupList(); - void updateAlarmContactGroup(AlarmContactGroupResource resource); - void deleteAlarmCountactGroup(AlarmContactGroupResource resource); + public void insertEmpGroupMember(List emps); - + public void deleteEmpGroupMember(String groupName); } diff --git a/web/src/main/java/com/navercorp/pinpoint/web/dao/mysql/MySqlAlarmResourceDao.java b/web/src/main/java/com/navercorp/pinpoint/web/dao/mysql/MySqlAlarmResourceDao.java index cfcdd0bbb..784ce771b 100644 --- a/web/src/main/java/com/navercorp/pinpoint/web/dao/mysql/MySqlAlarmResourceDao.java +++ b/web/src/main/java/com/navercorp/pinpoint/web/dao/mysql/MySqlAlarmResourceDao.java @@ -7,12 +7,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Repository; -import com.nhn.pinpoint.web.alarm.vo.AlarmContactGroupResource; -import com.nhn.pinpoint.web.alarm.vo.AlarmContactResource; import com.nhn.pinpoint.web.alarm.vo.AlarmEmp; -import com.nhn.pinpoint.web.alarm.vo.AlarmResource; -import com.nhn.pinpoint.web.alarm.vo.AlarmRuleGroupResource; -import com.nhn.pinpoint.web.alarm.vo.AlarmRuleResource; import com.nhn.pinpoint.web.alarm.vo.Rule; import com.nhn.pinpoint.web.dao.AlarmResourceDao; @@ -64,65 +59,4 @@ public class MySqlAlarmResourceDao implements AlarmResourceDao { public void deleteEmpGroupMember(String groupName) { getSqlSessionTemplate().insert(NAMESPACE + "deleteAlarmGroupMember", groupName); } - - @Override - public int selectAlarmCount() { - return 1; - } - - @Override - public List selectAlarmList() { - return getSqlSessionTemplate().selectList(NAMESPACE + "selectAlarmList"); - } - - @Override - public List selectAlarmRuleList() { - return getSqlSessionTemplate().selectList(NAMESPACE + "selectAlarmRuleList", 1); - } - - @Override - public List selectAlarmRuleGroupList() { - return getSqlSessionTemplate().selectList(NAMESPACE + "selectAlarmRuleGroupList", 1); - } - - @Override - public List selectAlarmContactList() { - return getSqlSessionTemplate().selectList(NAMESPACE + "selectAlarmContactList", 1); - } - - @Override - public List selectAlarmContactGroupList() { - return getSqlSessionTemplate().selectList(NAMESPACE + "selectAlarmContactGroupList", 1); - } - - - @Override - public void insertAlarmContact(AlarmContactResource resource) { - getSqlSessionTemplate().insert(NAMESPACE + "insertAlarmContact", resource); - } - - @Override - public void updateAlarmCountact(AlarmContactResource resource) { - getSqlSessionTemplate().update(NAMESPACE + "updateAlarmContact", resource); - } - - @Override - public void deleteAlarmCountact(AlarmContactResource resource) { - getSqlSessionTemplate().update(NAMESPACE + "deleteAlarmContact", resource.getId()); - } - - @Override - public void insertAlarmContactGroup(AlarmContactGroupResource resource) { - getSqlSessionTemplate().insert(NAMESPACE + "insertAlarmContactGroup", resource); - } - - @Override - public void updateAlarmContactGroup(AlarmContactGroupResource resource) { - getSqlSessionTemplate().insert(NAMESPACE + "updateAlarmContactGroup", resource); - } - - @Override - public void deleteAlarmCountactGroup(AlarmContactGroupResource resource) { - getSqlSessionTemplate().update(NAMESPACE + "deleteAlarmContactGroup", resource.getId()); - } } diff --git a/web/src/main/java/com/navercorp/pinpoint/web/scheduler/AlarmScheduler.java b/web/src/main/java/com/navercorp/pinpoint/web/scheduler/AlarmScheduler.java deleted file mode 100644 index 893150207..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/scheduler/AlarmScheduler.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.nhn.pinpoint.web.scheduler; - - -public interface AlarmScheduler { - - void initialize(); - - void execute(); - -} diff --git a/web/src/main/java/com/navercorp/pinpoint/web/scheduler/DefaultAlarmScheduler.java b/web/src/main/java/com/navercorp/pinpoint/web/scheduler/DefaultAlarmScheduler.java deleted file mode 100644 index 7bd52dede..000000000 --- a/web/src/main/java/com/navercorp/pinpoint/web/scheduler/DefaultAlarmScheduler.java +++ /dev/null @@ -1,226 +0,0 @@ -package com.nhn.pinpoint.web.scheduler; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.atomic.AtomicInteger; - -import org.apache.commons.lang.StringUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.util.CollectionUtils; - -import com.nhn.pinpoint.web.alarm.AlarmEvent; -import com.nhn.pinpoint.web.alarm.AlarmJob; -import com.nhn.pinpoint.web.alarm.AlarmJobsRepository; -import com.nhn.pinpoint.web.alarm.DefaultAlarmEvent; -import com.nhn.pinpoint.web.alarm.DefaultAlarmJob; -import com.nhn.pinpoint.web.alarm.DefaultAlarmJobsRepository; -import com.nhn.pinpoint.web.alarm.MainCategory; -import com.nhn.pinpoint.web.alarm.SubCategory; -import com.nhn.pinpoint.web.alarm.filter.AlarmCheckFilter; -import com.nhn.pinpoint.web.alarm.filter.AlarmMailSendFilter; -import com.nhn.pinpoint.web.alarm.filter.AlarmSendFilter; -import com.nhn.pinpoint.web.alarm.filter.AlarmSmsSendFilter; -import com.nhn.pinpoint.web.alarm.resource.MailResource; -import com.nhn.pinpoint.web.alarm.resource.SmsResource; -import com.nhn.pinpoint.web.alarm.vo.AlarmContactGroupResource; -import com.nhn.pinpoint.web.alarm.vo.AlarmContactResource; -import com.nhn.pinpoint.web.alarm.vo.AlarmResource; -import com.nhn.pinpoint.web.alarm.vo.AlarmRuleGroupResource; -import com.nhn.pinpoint.web.alarm.vo.AlarmRuleResource; -import com.nhn.pinpoint.web.dao.AlarmResourceDao; -import com.nhn.pinpoint.web.dao.ApplicationIndexDao; -import com.nhn.pinpoint.web.dao.MapStatisticsCallerDao; -import com.nhn.pinpoint.web.vo.Application; - -/** - * - * @author koo.taejin - */ -public class DefaultAlarmScheduler implements AlarmScheduler { - - private final Logger logger = LoggerFactory.getLogger(this.getClass()); - - private AlarmJobsRepository repository; - - @Autowired - MailResource mailResource; - - @Autowired - SmsResource smsResource; - - @Autowired - private AlarmResourceDao alarmResourceDao; - - @Autowired - private ApplicationIndexDao applicationIndexDao; - - @Autowired - private MapStatisticsCallerDao mapStatisticsCallerDao; - - @Override - public void initialize() { - logger.info("{} initialize.", this.getClass().getName()); - - DefaultAlarmJobsRepository repository = new DefaultAlarmJobsRepository(); - - List applicationList = applicationIndexDao.selectAllApplicationNames(); - List alarmResourceList = alarmResourceDao.selectAlarmList(); - - for (AlarmResource alarmResource : alarmResourceList) { - String agentId = alarmResource.getAgentId(); - - Application application = findApplication(agentId, applicationList); - if (application == null) { - logger.warn("Can't find Application({}).", agentId); - continue; - } - - AlarmJob job = createAlarmJob(application, alarmResource); - if (job == null) { - continue; - } - - repository.addAlarmJob(application, job); - } - - logger.info("{} initilization success(Registred {} Jobs). ", this.getClass().getName(), repository.getTotalJobCount()); - - synchronized (this) { - this.repository = repository; - } - } - - @Override - public void execute() { - logger.info("{} execute.", this.getClass().getName()); - - AlarmEvent event = createAlarmEvent(); - - synchronized (this) { - if (this.repository == null) { - logger.warn("{}'s repository is null. this job will be skipped.", this.getClass().getName()); - return; - } - - int totalJobCount = this.repository.getTotalJobCount(); - - List applicationList = this.repository.getRegistedApplicationList(); - for (Application application : applicationList) { - executeEachApplication(application, event, totalJobCount); - } - } - - } - - private Application findApplication(String applicationName, List applicationList) { - for (Application application : applicationList) { - if (application.getName().equalsIgnoreCase(applicationName)) { - return application; - } - } - - return null; - } - - private AlarmJob createAlarmJob(Application application, AlarmResource resource) { - DefaultAlarmJob alarmJob = new DefaultAlarmJob(application); - - String applicationName = application.getName(); - String alarmName = resource.getAlarmGroupName(); - - AlarmContactGroupResource contactGroup = resource.getAlarmContactGroup(); - if (contactGroup == null || CollectionUtils.isEmpty(contactGroup.getAlarmContactList())) { - logger.warn("Application={}, Rule={} does not have contact resource.", applicationName, alarmName); - return null; - } - List contactResourceList = contactGroup.getAlarmContactList(); - List alarmSendFilterList = createAlarmSendFilter(application, contactResourceList); - if (CollectionUtils.isEmpty(alarmSendFilterList)) { - logger.warn("Application={}, Rule={} can't find valid contact resource.", applicationName, alarmName); - return null; - } - alarmJob.addFilter(alarmSendFilterList); - - AlarmRuleGroupResource ruleGroup = resource.getAlarmRuleGroup(); - if (ruleGroup == null || CollectionUtils.isEmpty(ruleGroup.getAlarmRuleList())) { - logger.warn("Application={}, Rule={} does not have rule resource.", applicationName, alarmName); - return null; - } - List alarmRuleList = ruleGroup.getAlarmRuleList(); - List alarmCheckFilterList = createAlarmCheckFilter(application, alarmRuleList); -// alarmJob.addFilter(alarmCheckFilterList); - if (CollectionUtils.isEmpty(alarmCheckFilterList)) { - logger.warn("Application={}, Rule={} can't find valid rule resource.", applicationName, alarmName); - return null; - } - - return alarmJob; - } - - private List createAlarmSendFilter(Application application, List contactResourceList) { - List phoneNumberList = new ArrayList(); - List emailAddressList = new ArrayList(); - - for (AlarmContactResource contactResource : contactResourceList) { - String phoneNumber = contactResource.getPhoneNum(); - if (!StringUtils.isEmpty(phoneNumber)) { - phoneNumberList.add(phoneNumber); - } - - String emailAddress = contactResource.getEmailAddress(); - if (!StringUtils.isEmpty(emailAddress)) { - emailAddressList.add(emailAddress); - } - } - - List alarmSendFilter = new ArrayList(); - - if (!CollectionUtils.isEmpty(phoneNumberList)) { - AlarmSendFilter smsSendFilter = new AlarmSmsSendFilter(application, smsResource, phoneNumberList); - alarmSendFilter.add(smsSendFilter); - } - - if (!CollectionUtils.isEmpty(emailAddressList)) { - AlarmSendFilter emailSendFilter = new AlarmMailSendFilter(application, mailResource, emailAddressList); - alarmSendFilter.add(emailSendFilter); - } - - return alarmSendFilter; - } - - private List createAlarmCheckFilter(Application application, List ruleResourceList) { - List alarmCheckFilterList = new ArrayList(); - - for (AlarmRuleResource ruleResource : ruleResourceList) { - MainCategory mainCategory = ruleResource.getMainCategory(); - SubCategory subCategory = ruleResource.getSubCategory(); - - AlarmCheckFilter alarmCheckFilter = subCategory.createAlarmFilter(application, mainCategory, ruleResource); - if (alarmCheckFilter == null) { - logger.warn("{}({}) can't build Filter.", ruleResource.getAlarmRuleName(), ruleResource.getId()); - continue; - } - alarmCheckFilterList.add(alarmCheckFilter); - } - - return alarmCheckFilterList; - } - - private AlarmEvent createAlarmEvent() { -// DefaultAlarmEvent event = new DefaultAlarmEvent(System.currentTimeMillis(), mapStatisticsCallerDao); - DefaultAlarmEvent event = null; - return event; - } - - private void executeEachApplication(Application application, AlarmEvent event, int totalJobCount) { - List jobList = repository.getAlarmJob(application); - AtomicInteger index = new AtomicInteger(1); - for (AlarmJob job : jobList) { - logger.debug("{} ({}/{}) jobs start(TotalJobCount={}).", application.getName(), index.getAndIncrement(), jobList.size(), totalJobCount); - job.execute(event); - } - } - -} diff --git a/web/src/main/resources/applicationContext-scheduler.xml b/web/src/main/resources/applicationContext-scheduler.xml deleted file mode 100644 index 24ad5ba43..000000000 --- a/web/src/main/resources/applicationContext-scheduler.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - Spring Batch infrastructure beans. - - - - - - - - - - - \ No newline at end of file diff --git a/web/src/main/resources/mapper/AlarmMapper.xml b/web/src/main/resources/mapper/AlarmMapper.xml index 216ec1752..54ef6fd34 100644 --- a/web/src/main/resources/mapper/AlarmMapper.xml +++ b/web/src/main/resources/mapper/AlarmMapper.xml @@ -3,162 +3,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - INSERT INTO alrm_cntt_info ( - alrm_cntt_grp_id, - phn_no, - mail_addr - ) VALUES ( - #{alarmContactGroupId}, - #{phoneNum}, - #{emailAddress} - ) - - - - UPDATE alrm_cntt_info - SET alrm_cntt_grp_id = #{alarmContactGroupId}, - phn_no = #{phoneNum}, - mail_addr = #{emailAddress} - WHERE id = #{id} - - - - DELETE FROM alrm_cntt_info - WHERE id = #{id} - - - - INSERT INTO alrm_cntt_grp ( - alrm_cntt_grp_nm, - alrm_cntt_grp_desc, - reg_ymd, - reg_emp_no, - mod_ymd, - mod_emp_no - ) VALUES ( - #{alarmContactGroupName}, - #{alarmContactGroupDescrption}, - now(), - #{registerEmployeeNumber}, - now(), - #{modifyEmployeeNumber} - ) - - - - UPDATE alrm_cntt_grp - SET alrm_cntt_grp_nm = #{alarmContactGroupName}, - alrm_cntt_grp_desc = #{alarmContactGroupDescrption}, - mod_ymd = CURRENT_DATETIME, - mod_emp_no = #{modifyEmployeeNumber} - WHERE id = #{id} - - - - DELETE FROM alrm_cntt_grp - WHERE id = #{id} - -