Search in sources :

Example 1 with DataSourceDataCollector

use of com.navercorp.pinpoint.batch.alarm.collector.DataSourceDataCollector in project pinpoint by naver.

the class CheckerRegistry method setup.

private void setup() {
    put(CheckerCategory.SLOW_COUNT, new AlarmCheckerFactory() {

        @Override
        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new SlowCountChecker((ResponseTimeDataCollector) dataCollector, rule);
        }
    });
    put(CheckerCategory.SLOW_RATE, new AlarmCheckerFactory() {

        @Override
        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new SlowRateChecker((ResponseTimeDataCollector) dataCollector, rule);
        }
    });
    put(CheckerCategory.ERROR_COUNT, new AlarmCheckerFactory() {

        @Override
        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new ErrorCountChecker((ResponseTimeDataCollector) dataCollector, rule);
        }
    });
    put(CheckerCategory.ERROR_RATE, new AlarmCheckerFactory() {

        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new ErrorRateChecker((ResponseTimeDataCollector) dataCollector, rule);
        }
    });
    put(CheckerCategory.TOTAL_COUNT, new AlarmCheckerFactory() {

        @Override
        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new ResponseCountChecker((ResponseTimeDataCollector) dataCollector, rule);
        }
    });
    put(CheckerCategory.SLOW_COUNT_TO_CALLEE, new AlarmCheckerFactory() {

        @Override
        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new SlowCountToCalleeChecker((MapStatisticsCallerDataCollector) dataCollector, rule);
        }
    });
    put(CheckerCategory.SLOW_RATE_TO_CALLEE, new AlarmCheckerFactory() {

        @Override
        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new SlowRateToCalleeChecker(dataCollector, rule);
        }
    });
    put(CheckerCategory.ERROR_COUNT_TO_CALLEE, new AlarmCheckerFactory() {

        @Override
        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new ErrorCountToCalleeChecker((MapStatisticsCallerDataCollector) dataCollector, rule);
        }
    });
    put(CheckerCategory.ERROR_RATE_TO_CALLEE, new AlarmCheckerFactory() {

        @Override
        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new ErrorRateToCalleeChecker(dataCollector, rule);
        }
    });
    put(CheckerCategory.TOTAL_COUNT_TO_CALLEE, new AlarmCheckerFactory() {

        @Override
        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new TotalCountToCalleeChecker((MapStatisticsCallerDataCollector) dataCollector, rule);
        }
    });
    put(CheckerCategory.HEAP_USAGE_RATE, new AlarmCheckerFactory() {

        @Override
        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new HeapUsageRateChecker((AgentStatDataCollector) dataCollector, rule);
        }
    });
    // put(CheckerCategory.GC_COUNT, new AlarmCheckerFactory() {
    // @Override
    // public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
    // return new GcCountChecker((AgentStatDataCollector)dataCollector, rule);
    // }
    // });
    put(CheckerCategory.JVM_CPU_USAGE_RATE, new AlarmCheckerFactory() {

        @Override
        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new JvmCpuUsageRateChecker((AgentStatDataCollector) dataCollector, rule);
        }
    });
    put(CheckerCategory.SYSTEM_CPU_USAGE_RATE, new AlarmCheckerFactory() {

        @Override
        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new SystemCpuUsageRateChecker((AgentStatDataCollector) dataCollector, rule);
        }
    });
    put(CheckerCategory.DATASOURCE_CONNECTION_USAGE_RATE, new AlarmCheckerFactory() {

        @Override
        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new DataSourceConnectionUsageRateChecker((DataSourceDataCollector) dataCollector, rule);
        }
    });
    put(CheckerCategory.DEADLOCK_OCCURRENCE, new AlarmCheckerFactory() {

        @Override
        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new DeadlockChecker((AgentEventDataCollector) dataCollector, rule);
        }
    });
    put(CheckerCategory.FILE_DESCRIPTOR_COUNT, new AlarmCheckerFactory() {

        @Override
        public AlarmChecker<?> createChecker(DataCollector dataCollector, Rule rule) {
            return new FileDescriptorChecker((FileDescriptorDataCollector) dataCollector, rule);
        }
    });
}
Also used : JvmCpuUsageRateChecker(com.navercorp.pinpoint.batch.alarm.checker.JvmCpuUsageRateChecker) SlowCountToCalleeChecker(com.navercorp.pinpoint.batch.alarm.checker.SlowCountToCalleeChecker) ResponseCountChecker(com.navercorp.pinpoint.batch.alarm.checker.ResponseCountChecker) MapStatisticsCallerDataCollector(com.navercorp.pinpoint.batch.alarm.collector.MapStatisticsCallerDataCollector) DataSourceDataCollector(com.navercorp.pinpoint.batch.alarm.collector.DataSourceDataCollector) FileDescriptorDataCollector(com.navercorp.pinpoint.batch.alarm.collector.FileDescriptorDataCollector) ErrorRateToCalleeChecker(com.navercorp.pinpoint.batch.alarm.checker.ErrorRateToCalleeChecker) ResponseTimeDataCollector(com.navercorp.pinpoint.batch.alarm.collector.ResponseTimeDataCollector) SlowRateToCalleeChecker(com.navercorp.pinpoint.batch.alarm.checker.SlowRateToCalleeChecker) HeapUsageRateChecker(com.navercorp.pinpoint.batch.alarm.checker.HeapUsageRateChecker) FileDescriptorChecker(com.navercorp.pinpoint.batch.alarm.checker.FileDescriptorChecker) AgentStatDataCollector(com.navercorp.pinpoint.batch.alarm.collector.AgentStatDataCollector) SystemCpuUsageRateChecker(com.navercorp.pinpoint.batch.alarm.checker.SystemCpuUsageRateChecker) TotalCountToCalleeChecker(com.navercorp.pinpoint.batch.alarm.checker.TotalCountToCalleeChecker) SlowCountChecker(com.navercorp.pinpoint.batch.alarm.checker.SlowCountChecker) SlowRateChecker(com.navercorp.pinpoint.batch.alarm.checker.SlowRateChecker) AgentStatDataCollector(com.navercorp.pinpoint.batch.alarm.collector.AgentStatDataCollector) DataSourceDataCollector(com.navercorp.pinpoint.batch.alarm.collector.DataSourceDataCollector) MapStatisticsCallerDataCollector(com.navercorp.pinpoint.batch.alarm.collector.MapStatisticsCallerDataCollector) ResponseTimeDataCollector(com.navercorp.pinpoint.batch.alarm.collector.ResponseTimeDataCollector) DataCollector(com.navercorp.pinpoint.batch.alarm.collector.DataCollector) AgentEventDataCollector(com.navercorp.pinpoint.batch.alarm.collector.AgentEventDataCollector) FileDescriptorDataCollector(com.navercorp.pinpoint.batch.alarm.collector.FileDescriptorDataCollector) DataSourceConnectionUsageRateChecker(com.navercorp.pinpoint.batch.alarm.checker.DataSourceConnectionUsageRateChecker) DeadlockChecker(com.navercorp.pinpoint.batch.alarm.checker.DeadlockChecker) ErrorRateChecker(com.navercorp.pinpoint.batch.alarm.checker.ErrorRateChecker) ErrorCountChecker(com.navercorp.pinpoint.batch.alarm.checker.ErrorCountChecker) ErrorCountToCalleeChecker(com.navercorp.pinpoint.batch.alarm.checker.ErrorCountToCalleeChecker) AgentEventDataCollector(com.navercorp.pinpoint.batch.alarm.collector.AgentEventDataCollector) Rule(com.navercorp.pinpoint.web.alarm.vo.Rule) AlarmChecker(com.navercorp.pinpoint.batch.alarm.checker.AlarmChecker)

Example 2 with DataSourceDataCollector

use of com.navercorp.pinpoint.batch.alarm.collector.DataSourceDataCollector in project pinpoint by naver.

the class DataSourceConnectionUsageRateCheckerTest method checkTest1.

@Test
public void checkTest1() {
    Rule rule = new Rule(APPLICATION_NAME, SERVICE_TYPE, CheckerCategory.ERROR_COUNT.getName(), 50, "testGroup", false, false, false, "");
    Application application = new Application(APPLICATION_NAME, ServiceType.STAND_ALONE);
    DataSourceDataCollector collector = new DataSourceDataCollector(DataCollectorCategory.DATA_SOURCE_STAT, application, mockDataSourceDao, mockApplicationIndexDao, CURRENT_TIME_MILLIS, INTERVAL_MILLIS);
    DataSourceConnectionUsageRateChecker checker = new DataSourceConnectionUsageRateChecker(collector, rule);
    checker.check();
    Assert.assertTrue(checker.isDetected());
    String emailMessage = checker.getEmailMessage();
    Assert.assertTrue(StringUtils.hasLength(emailMessage));
    List<String> smsMessage = checker.getSmsMessage();
    Assert.assertEquals(2, smsMessage.size());
}
Also used : Rule(com.navercorp.pinpoint.web.alarm.vo.Rule) DataSourceDataCollector(com.navercorp.pinpoint.batch.alarm.collector.DataSourceDataCollector) Application(com.navercorp.pinpoint.web.vo.Application) Test(org.junit.Test)

Example 3 with DataSourceDataCollector

use of com.navercorp.pinpoint.batch.alarm.collector.DataSourceDataCollector in project pinpoint by naver.

the class DataSourceConnectionUsageRateCheckerTest method checkTest2.

@Test
public void checkTest2() {
    Rule rule = new Rule(APPLICATION_NAME, SERVICE_TYPE, CheckerCategory.ERROR_COUNT.getName(), 80, "testGroup", false, false, false, "");
    Application application = new Application(APPLICATION_NAME, ServiceType.STAND_ALONE);
    DataSourceDataCollector collector = new DataSourceDataCollector(DataCollectorCategory.DATA_SOURCE_STAT, application, mockDataSourceDao, mockApplicationIndexDao, CURRENT_TIME_MILLIS, INTERVAL_MILLIS);
    DataSourceConnectionUsageRateChecker checker = new DataSourceConnectionUsageRateChecker(collector, rule);
    checker.check();
    Assert.assertFalse(checker.isDetected());
    String emailMessage = checker.getEmailMessage();
    Assert.assertTrue(StringUtils.isEmpty(emailMessage));
    List<String> smsMessage = checker.getSmsMessage();
    Assert.assertTrue(CollectionUtils.isEmpty(smsMessage));
}
Also used : Rule(com.navercorp.pinpoint.web.alarm.vo.Rule) DataSourceDataCollector(com.navercorp.pinpoint.batch.alarm.collector.DataSourceDataCollector) Application(com.navercorp.pinpoint.web.vo.Application) Test(org.junit.Test)

Aggregations

DataSourceDataCollector (com.navercorp.pinpoint.batch.alarm.collector.DataSourceDataCollector)3 Rule (com.navercorp.pinpoint.web.alarm.vo.Rule)3 Application (com.navercorp.pinpoint.web.vo.Application)2 Test (org.junit.Test)2 AlarmChecker (com.navercorp.pinpoint.batch.alarm.checker.AlarmChecker)1 DataSourceConnectionUsageRateChecker (com.navercorp.pinpoint.batch.alarm.checker.DataSourceConnectionUsageRateChecker)1 DeadlockChecker (com.navercorp.pinpoint.batch.alarm.checker.DeadlockChecker)1 ErrorCountChecker (com.navercorp.pinpoint.batch.alarm.checker.ErrorCountChecker)1 ErrorCountToCalleeChecker (com.navercorp.pinpoint.batch.alarm.checker.ErrorCountToCalleeChecker)1 ErrorRateChecker (com.navercorp.pinpoint.batch.alarm.checker.ErrorRateChecker)1 ErrorRateToCalleeChecker (com.navercorp.pinpoint.batch.alarm.checker.ErrorRateToCalleeChecker)1 FileDescriptorChecker (com.navercorp.pinpoint.batch.alarm.checker.FileDescriptorChecker)1 HeapUsageRateChecker (com.navercorp.pinpoint.batch.alarm.checker.HeapUsageRateChecker)1 JvmCpuUsageRateChecker (com.navercorp.pinpoint.batch.alarm.checker.JvmCpuUsageRateChecker)1 ResponseCountChecker (com.navercorp.pinpoint.batch.alarm.checker.ResponseCountChecker)1 SlowCountChecker (com.navercorp.pinpoint.batch.alarm.checker.SlowCountChecker)1 SlowCountToCalleeChecker (com.navercorp.pinpoint.batch.alarm.checker.SlowCountToCalleeChecker)1 SlowRateChecker (com.navercorp.pinpoint.batch.alarm.checker.SlowRateChecker)1 SlowRateToCalleeChecker (com.navercorp.pinpoint.batch.alarm.checker.SlowRateToCalleeChecker)1 SystemCpuUsageRateChecker (com.navercorp.pinpoint.batch.alarm.checker.SystemCpuUsageRateChecker)1