Search in sources :

Example 1 with NotificationService

use of org.graylog2.notifications.NotificationService in project graylog2-server by Graylog2.

the class LegacyAlertConditionMigratorTest method setUp.

@Before
public void setUp() throws Exception {
    final ObjectMapper objectMapper = new ObjectMapperProvider().get();
    objectMapper.registerSubtypes(new NamedType(AggregationEventProcessorConfig.class, AggregationEventProcessorConfig.TYPE_NAME));
    objectMapper.registerSubtypes(new NamedType(AggregationEventProcessorParameters.class, AggregationEventProcessorConfig.TYPE_NAME));
    objectMapper.registerSubtypes(new NamedType(EventProcessorExecutionJob.Config.class, EventProcessorExecutionJob.TYPE_NAME));
    objectMapper.registerSubtypes(new NamedType(EventProcessorExecutionJob.Data.class, EventProcessorExecutionJob.TYPE_NAME));
    objectMapper.registerSubtypes(new NamedType(IntervalJobSchedule.class, IntervalJobSchedule.TYPE_NAME));
    objectMapper.registerSubtypes(new NamedType(PersistToStreamsStorageHandler.Config.class, PersistToStreamsStorageHandler.Config.TYPE_NAME));
    objectMapper.registerSubtypes(new NamedType(PersistToStreamsStorageHandler.Config.class, PersistToStreamsStorageHandler.Config.TYPE_NAME));
    objectMapper.registerSubtypes(new NamedType(LegacyAlarmCallbackEventNotificationConfig.class, LegacyAlarmCallbackEventNotificationConfig.TYPE_NAME));
    objectMapper.registerSubtypes(new NamedType(EventNotificationExecutionJob.Config.class, EventNotificationExecutionJob.TYPE_NAME));
    final MongoJackObjectMapperProvider mongoJackObjectMapperProvider = new MongoJackObjectMapperProvider(objectMapper);
    final MongoConnection mongoConnection = mongodb.mongoConnection();
    final JobSchedulerTestClock clock = new JobSchedulerTestClock(DateTime.now(DateTimeZone.UTC));
    final DBJobDefinitionService jobDefinitionService = new DBJobDefinitionService(mongoConnection, mongoJackObjectMapperProvider);
    final DBJobTriggerService jobTriggerService = new DBJobTriggerService(mongoConnection, mongoJackObjectMapperProvider, mock(NodeId.class), clock, Duration.minutes(5));
    notificationService = new DBNotificationService(mongoConnection, mongoJackObjectMapperProvider, mock(EntityOwnershipService.class));
    this.eventDefinitionService = new DBEventDefinitionService(mongoConnection, mongoJackObjectMapperProvider, mock(DBEventProcessorStateService.class), mock(EntityOwnershipService.class));
    this.eventDefinitionHandler = spy(new EventDefinitionHandler(eventDefinitionService, jobDefinitionService, jobTriggerService, clock));
    this.notificationResourceHandler = spy(new NotificationResourceHandler(notificationService, jobDefinitionService, eventDefinitionService, eventNotificationFactories));
    this.userService = mock(UserService.class);
    when(userService.getRootUser()).thenReturn(Optional.empty());
    this.migrator = new LegacyAlertConditionMigrator(mongoConnection, eventDefinitionHandler, notificationResourceHandler, notificationService, userService, CHECK_INTERVAL);
}
Also used : JobSchedulerTestClock(org.graylog.events.JobSchedulerTestClock) UserService(org.graylog2.shared.users.UserService) NamedType(com.fasterxml.jackson.databind.jsontype.NamedType) AggregationEventProcessorConfig(org.graylog.events.processor.aggregation.AggregationEventProcessorConfig) MongoJackObjectMapperProvider(org.graylog2.bindings.providers.MongoJackObjectMapperProvider) DBEventDefinitionService(org.graylog.events.processor.DBEventDefinitionService) AggregationEventProcessorConfig(org.graylog.events.processor.aggregation.AggregationEventProcessorConfig) NotificationResourceHandler(org.graylog.events.notifications.NotificationResourceHandler) MongoJackObjectMapperProvider(org.graylog2.bindings.providers.MongoJackObjectMapperProvider) ObjectMapperProvider(org.graylog2.shared.bindings.providers.ObjectMapperProvider) AggregationEventProcessorParameters(org.graylog.events.processor.aggregation.AggregationEventProcessorParameters) IntervalJobSchedule(org.graylog.scheduler.schedule.IntervalJobSchedule) DBNotificationService(org.graylog.events.notifications.DBNotificationService) DBJobTriggerService(org.graylog.scheduler.DBJobTriggerService) NodeId(org.graylog2.plugin.system.NodeId) DBJobDefinitionService(org.graylog.scheduler.DBJobDefinitionService) EventDefinitionHandler(org.graylog.events.processor.EventDefinitionHandler) MongoConnection(org.graylog2.database.MongoConnection) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) Before(org.junit.Before)

Example 2 with NotificationService

use of org.graylog2.notifications.NotificationService in project graylog2-server by Graylog2.

the class NotificationFacadeTest method setUp.

@Before
@SuppressForbidden("Using Executors.newSingleThreadExecutor() is okay in tests")
public void setUp() throws Exception {
    objectMapper.registerSubtypes(EmailEventNotificationConfig.class, EmailEventNotificationConfigEntity.class, HttpEventNotificationConfigEntity.class, HTTPEventNotificationConfig.class);
    jobDefinitionService = mock(DBJobDefinitionService.class);
    stateService = mock(DBEventProcessorStateService.class);
    eventDefinitionService = new DBEventDefinitionService(mongodb.mongoConnection(), mapperProvider, stateService, mock(EntityOwnershipService.class));
    notificationService = new DBNotificationService(mongodb.mongoConnection(), mapperProvider, mock(EntityOwnershipService.class));
    notificationResourceHandler = new NotificationResourceHandler(notificationService, jobDefinitionService, eventDefinitionService, Maps.newHashMap());
    facade = new NotificationFacade(objectMapper, notificationResourceHandler, notificationService, userService);
}
Also used : DBNotificationService(org.graylog.events.notifications.DBNotificationService) DBJobDefinitionService(org.graylog.scheduler.DBJobDefinitionService) DBEventDefinitionService(org.graylog.events.processor.DBEventDefinitionService) DBEventProcessorStateService(org.graylog.events.processor.DBEventProcessorStateService) NotificationResourceHandler(org.graylog.events.notifications.NotificationResourceHandler) Before(org.junit.Before) SuppressForbidden(org.graylog2.shared.SuppressForbidden)

Example 3 with NotificationService

use of org.graylog2.notifications.NotificationService in project graylog2-server by Graylog2.

the class StreamCatalogTest method setUp.

@Before
@SuppressForbidden("Using Executors.newSingleThreadExecutor() is okay in tests")
public void setUp() throws Exception {
    final MongoConnection mongoConnection = mongodb.mongoConnection();
    final ClusterEventBus clusterEventBus = new ClusterEventBus("cluster-event-bus", Executors.newSingleThreadExecutor());
    final StreamRuleService streamRuleService = new StreamRuleServiceImpl(mongoConnection, clusterEventBus);
    final StreamService streamService = new StreamServiceImpl(mongoConnection, streamRuleService, alertService, outputService, indexSetService, mongoIndexSetFactory, notificationService, entityOwnershipService, clusterEventBus, alarmCallbackConfigurationService);
    when(outputService.load("5adf239e4b900a0fdb4e5197")).thenReturn(OutputImpl.create("5adf239e4b900a0fdb4e5197", "Title", "Type", "admin", Collections.emptyMap(), new Date(1524654085L), null));
    facade = new StreamFacade(objectMapper, streamService, streamRuleService, alertService, alarmCallbackConfigurationService, legacyAlertConditionMigration, indexSetService, userService);
}
Also used : StreamRuleServiceImpl(org.graylog2.streams.StreamRuleServiceImpl) StreamService(org.graylog2.streams.StreamService) StreamRuleService(org.graylog2.streams.StreamRuleService) StreamServiceImpl(org.graylog2.streams.StreamServiceImpl) MongoConnection(org.graylog2.database.MongoConnection) ClusterEventBus(org.graylog2.events.ClusterEventBus) Date(java.util.Date) Before(org.junit.Before) SuppressForbidden(org.graylog2.shared.SuppressForbidden)

Example 4 with NotificationService

use of org.graylog2.notifications.NotificationService in project graylog2-server by Graylog2.

the class IndexRotationThreadTest method testDoNotPerformRotation.

@Test
public void testDoNotPerformRotation() throws NoTargetIndexException {
    final Provider<RotationStrategy> provider = new RotationStrategyProvider();
    final IndexRotationThread rotationThread = new IndexRotationThread(notificationService, indices, indexSetRegistry, cluster, new NullActivityWriter(), nodeId, ImmutableMap.<String, Provider<RotationStrategy>>builder().put("strategy", provider).build());
    when(indexSetConfig.rotationStrategyClass()).thenReturn("strategy");
    rotationThread.checkForRotation(indexSet);
    verify(indexSet, never()).cycle();
}
Also used : NullActivityWriter(org.graylog2.shared.system.activities.NullActivityWriter) RotationStrategy(org.graylog2.plugin.indexer.rotation.RotationStrategy) Test(org.junit.Test)

Example 5 with NotificationService

use of org.graylog2.notifications.NotificationService in project graylog2-server by Graylog2.

the class IndexRotationThreadTest method testDoNotPerformRotationIfClusterIsDown.

@Test
public void testDoNotPerformRotationIfClusterIsDown() throws NoTargetIndexException {
    final Provider<RotationStrategy> provider = spy(new RotationStrategyProvider());
    when(cluster.isConnected()).thenReturn(false);
    final IndexRotationThread rotationThread = new IndexRotationThread(notificationService, indices, indexSetRegistry, cluster, new NullActivityWriter(), nodeId, ImmutableMap.<String, Provider<RotationStrategy>>builder().put("strategy", provider).build());
    rotationThread.doRun();
    verify(indexSet, never()).cycle();
    verify(provider, never()).get();
}
Also used : NullActivityWriter(org.graylog2.shared.system.activities.NullActivityWriter) RotationStrategy(org.graylog2.plugin.indexer.rotation.RotationStrategy) Test(org.junit.Test)

Aggregations

Test (org.junit.Test)4 Notification (org.graylog2.notifications.Notification)3 RotationStrategy (org.graylog2.plugin.indexer.rotation.RotationStrategy)3 NullActivityWriter (org.graylog2.shared.system.activities.NullActivityWriter)3 Before (org.junit.Before)3 DBNotificationService (org.graylog.events.notifications.DBNotificationService)2 NotificationResourceHandler (org.graylog.events.notifications.NotificationResourceHandler)2 DBEventDefinitionService (org.graylog.events.processor.DBEventDefinitionService)2 DBJobDefinitionService (org.graylog.scheduler.DBJobDefinitionService)2 MongoConnection (org.graylog2.database.MongoConnection)2 NodeDiskUsageStats (org.graylog2.indexer.cluster.health.NodeDiskUsageStats)2 NotificationImpl (org.graylog2.notifications.NotificationImpl)2 SuppressForbidden (org.graylog2.shared.SuppressForbidden)2 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)1 NamedType (com.fasterxml.jackson.databind.jsontype.NamedType)1 Date (java.util.Date)1 JobSchedulerTestClock (org.graylog.events.JobSchedulerTestClock)1 DBEventProcessorStateService (org.graylog.events.processor.DBEventProcessorStateService)1 EventDefinitionHandler (org.graylog.events.processor.EventDefinitionHandler)1 AggregationEventProcessorConfig (org.graylog.events.processor.aggregation.AggregationEventProcessorConfig)1