use of org.graylog2.plugin.indexer.retention.RetentionStrategy in project graylog2-server by Graylog2.
the class V20161116172100_DefaultIndexSetMigrationTest method upgradeCreatesDefaultIndexSet.
@Test
@SuppressWarnings("deprecation")
public void upgradeCreatesDefaultIndexSet() throws Exception {
final StubRotationStrategyConfig rotationStrategyConfig = new StubRotationStrategyConfig();
final StubRetentionStrategyConfig retentionStrategyConfig = new StubRetentionStrategyConfig();
final IndexSetConfig savedIndexSetConfig = IndexSetConfig.builder().id("id").title("title").indexPrefix("prefix").shards(1).replicas(0).rotationStrategy(rotationStrategyConfig).retentionStrategy(retentionStrategyConfig).creationDate(ZonedDateTime.of(2016, 10, 12, 0, 0, 0, 0, ZoneOffset.UTC)).indexAnalyzer("standard").indexTemplateName("prefix-template").indexOptimizationMaxNumSegments(1).indexOptimizationDisabled(false).build();
when(clusterConfigService.get(IndexManagementConfig.class)).thenReturn(IndexManagementConfig.create("test", "test"));
when(clusterConfigService.get(StubRotationStrategyConfig.class)).thenReturn(rotationStrategyConfig);
when(clusterConfigService.get(StubRetentionStrategyConfig.class)).thenReturn(retentionStrategyConfig);
when(indexSetService.save(any(IndexSetConfig.class))).thenReturn(savedIndexSetConfig);
final ArgumentCaptor<IndexSetConfig> indexSetConfigCaptor = ArgumentCaptor.forClass(IndexSetConfig.class);
migration.upgrade();
verify(indexSetService).save(indexSetConfigCaptor.capture());
verify(clusterConfigService).write(DefaultIndexSetConfig.create("id"));
verify(clusterConfigService).write(DefaultIndexSetCreated.create());
final IndexSetConfig capturedIndexSetConfig = indexSetConfigCaptor.getValue();
assertThat(capturedIndexSetConfig.id()).isNull();
assertThat(capturedIndexSetConfig.title()).isEqualTo("Default index set");
assertThat(capturedIndexSetConfig.description()).isEqualTo("The Graylog default index set");
assertThat(capturedIndexSetConfig.indexPrefix()).isEqualTo(elasticsearchConfiguration.getIndexPrefix());
assertThat(capturedIndexSetConfig.shards()).isEqualTo(elasticsearchConfiguration.getShards());
assertThat(capturedIndexSetConfig.replicas()).isEqualTo(elasticsearchConfiguration.getReplicas());
assertThat(capturedIndexSetConfig.rotationStrategy()).isInstanceOf(StubRotationStrategyConfig.class);
assertThat(capturedIndexSetConfig.retentionStrategy()).isInstanceOf(StubRetentionStrategyConfig.class);
assertThat(capturedIndexSetConfig.indexAnalyzer()).isEqualTo(elasticsearchConfiguration.getAnalyzer());
assertThat(capturedIndexSetConfig.indexTemplateName()).isEqualTo(elasticsearchConfiguration.getTemplateName());
assertThat(capturedIndexSetConfig.indexOptimizationMaxNumSegments()).isEqualTo(elasticsearchConfiguration.getIndexOptimizationMaxNumSegments());
assertThat(capturedIndexSetConfig.indexOptimizationDisabled()).isEqualTo(elasticsearchConfiguration.isDisableIndexOptimization());
}
use of org.graylog2.plugin.indexer.retention.RetentionStrategy in project graylog2-server by Graylog2.
the class V20161216123500_DefaultIndexSetMigrationTest method upgradeCreatesDefaultIndexSet.
@Test
@SuppressWarnings("deprecation")
public void upgradeCreatesDefaultIndexSet() throws Exception {
final RotationStrategyConfig rotationStrategyConfig = mock(RotationStrategyConfig.class);
final RetentionStrategyConfig retentionStrategyConfig = mock(RetentionStrategyConfig.class);
final IndexSetConfig defaultConfig = IndexSetConfig.builder().id("id").title("title").description("description").indexPrefix("prefix").shards(1).replicas(0).rotationStrategy(rotationStrategyConfig).retentionStrategy(retentionStrategyConfig).creationDate(ZonedDateTime.of(2016, 10, 12, 0, 0, 0, 0, ZoneOffset.UTC)).indexAnalyzer("standard").indexTemplateName("prefix-template").indexOptimizationMaxNumSegments(1).indexOptimizationDisabled(false).build();
final IndexSetConfig additionalConfig = defaultConfig.toBuilder().id("foo").indexPrefix("foo").build();
final IndexSetConfig savedDefaultConfig = defaultConfig.toBuilder().indexAnalyzer(elasticsearchConfiguration.getAnalyzer()).indexTemplateName(elasticsearchConfiguration.getTemplateName()).indexOptimizationMaxNumSegments(elasticsearchConfiguration.getIndexOptimizationMaxNumSegments()).indexOptimizationDisabled(elasticsearchConfiguration.isDisableIndexOptimization()).build();
final IndexSetConfig savedAdditionalConfig = additionalConfig.toBuilder().indexAnalyzer(elasticsearchConfiguration.getAnalyzer()).indexTemplateName("foo-template").indexOptimizationMaxNumSegments(elasticsearchConfiguration.getIndexOptimizationMaxNumSegments()).indexOptimizationDisabled(elasticsearchConfiguration.isDisableIndexOptimization()).build();
when(indexSetService.save(any(IndexSetConfig.class))).thenReturn(savedAdditionalConfig, savedDefaultConfig);
when(indexSetService.getDefault()).thenReturn(defaultConfig);
when(indexSetService.findAll()).thenReturn(ImmutableList.of(defaultConfig, additionalConfig));
when(clusterConfigService.get(DefaultIndexSetCreated.class)).thenReturn(DefaultIndexSetCreated.create());
final ArgumentCaptor<IndexSetConfig> indexSetConfigCaptor = ArgumentCaptor.forClass(IndexSetConfig.class);
migration.upgrade();
verify(indexSetService, times(2)).save(indexSetConfigCaptor.capture());
verify(clusterConfigService).write(V20161216123500_Succeeded.create());
final List<IndexSetConfig> allValues = indexSetConfigCaptor.getAllValues();
assertThat(allValues).hasSize(2);
final IndexSetConfig capturedDefaultIndexSetConfig = allValues.get(0);
assertThat(capturedDefaultIndexSetConfig.id()).isEqualTo("id");
assertThat(capturedDefaultIndexSetConfig.title()).isEqualTo("title");
assertThat(capturedDefaultIndexSetConfig.description()).isEqualTo("description");
assertThat(capturedDefaultIndexSetConfig.indexPrefix()).isEqualTo("prefix");
assertThat(capturedDefaultIndexSetConfig.shards()).isEqualTo(1);
assertThat(capturedDefaultIndexSetConfig.replicas()).isEqualTo(0);
assertThat(capturedDefaultIndexSetConfig.rotationStrategy()).isEqualTo(rotationStrategyConfig);
assertThat(capturedDefaultIndexSetConfig.retentionStrategy()).isEqualTo(retentionStrategyConfig);
assertThat(capturedDefaultIndexSetConfig.indexAnalyzer()).isEqualTo(elasticsearchConfiguration.getAnalyzer());
assertThat(capturedDefaultIndexSetConfig.indexTemplateName()).isEqualTo(elasticsearchConfiguration.getTemplateName());
assertThat(capturedDefaultIndexSetConfig.indexOptimizationMaxNumSegments()).isEqualTo(elasticsearchConfiguration.getIndexOptimizationMaxNumSegments());
assertThat(capturedDefaultIndexSetConfig.indexOptimizationDisabled()).isEqualTo(elasticsearchConfiguration.isDisableIndexOptimization());
final IndexSetConfig capturedAdditionalIndexSetConfig = allValues.get(1);
assertThat(capturedAdditionalIndexSetConfig.id()).isEqualTo("foo");
assertThat(capturedAdditionalIndexSetConfig.title()).isEqualTo("title");
assertThat(capturedAdditionalIndexSetConfig.description()).isEqualTo("description");
assertThat(capturedAdditionalIndexSetConfig.indexPrefix()).isEqualTo("foo");
assertThat(capturedAdditionalIndexSetConfig.shards()).isEqualTo(1);
assertThat(capturedAdditionalIndexSetConfig.replicas()).isEqualTo(0);
assertThat(capturedAdditionalIndexSetConfig.rotationStrategy()).isEqualTo(rotationStrategyConfig);
assertThat(capturedAdditionalIndexSetConfig.retentionStrategy()).isEqualTo(retentionStrategyConfig);
assertThat(capturedAdditionalIndexSetConfig.indexAnalyzer()).isEqualTo(elasticsearchConfiguration.getAnalyzer());
assertThat(capturedAdditionalIndexSetConfig.indexTemplateName()).isEqualTo("foo-template");
assertThat(capturedAdditionalIndexSetConfig.indexOptimizationMaxNumSegments()).isEqualTo(elasticsearchConfiguration.getIndexOptimizationMaxNumSegments());
assertThat(capturedAdditionalIndexSetConfig.indexOptimizationDisabled()).isEqualTo(elasticsearchConfiguration.isDisableIndexOptimization());
}
Aggregations