public void append(LogEvent event) { String formattedIndexName = indexNameFormatter.format(event); itemAppender.append(formattedIndexName, event); }
public void append(LogEvent event) { String formattedIndexName = indexNameFormatter.format(event); itemAppender.append(formattedIndexName, event); }
@Override public void run() { formatter.format(logEvent); countDownLatch.countDown(); } }.start();
@Test public void returnsNextRolloverTimeIfEventTimeIsAfterRolloverTime() { // given LogEvent logEvent = mock(LogEvent.class); when(logEvent.getTimeMillis()).thenReturn(DEFAULT_TEST_TIME_IN_MILLIS + TimeUnit.HOURS.toMillis(1)); IndexNameFormatter formatter = createRollingIndexNameFormatterBuilder().build(); // when String formattedIndexName = formatter.format(logEvent); // then Assert.assertEquals("testIndexName-2017-12-21-00.54", formattedIndexName); }
@Test public void returnsPreviousRolloverTimeIfEventTimeIsBeforeCurrentTime() { // given LogEvent logEvent = mock(LogEvent.class); when(logEvent.getTimeMillis()).thenReturn(DEFAULT_TEST_TIME_IN_MILLIS - TimeUnit.HOURS.toMillis(1)); IndexNameFormatter formatter = createRollingIndexNameFormatterBuilder().build(); // when String formattedIndexName = formatter.format(logEvent); // then Assert.assertEquals("testIndexName-2017-12-20-22.54", formattedIndexName); }
@Test public void returnsCurrentTimeIfEventTimeIsBeforeRolloverTime() { // given LogEvent logEvent = mock(LogEvent.class); when(logEvent.getTimeMillis()).thenReturn(DEFAULT_TEST_TIME_IN_MILLIS); IndexNameFormatter formatter = createRollingIndexNameFormatterBuilder().build(); // when String formattedIndexName = formatter.format(logEvent); // then Assert.assertEquals("testIndexName-2017-12-20-23.54", formattedIndexName); }
public static Builder createTestElasticsearchAppenderBuilder() { Builder builder = ElasticsearchAppender.newBuilder() .withName(TEST_APPENDER_NAME) .withFilter(ThresholdFilter.createFilter(Level.INFO, Filter.Result.ACCEPT, Filter.Result.DENY)) .withIgnoreExceptions(false) .withBatchDelivery(mock(AsyncBatchDelivery.class)) .withMessageOnly(false); IndexNameFormatter indexNameFormatter = mock(IndexNameFormatter.class); when(indexNameFormatter.format(any(LogEvent.class))).thenReturn("testIndexName"); builder.withIndexNameFormatter(indexNameFormatter); return builder; }
@Test public void appenderUsesProvidedIndexNameFormatter() { // given BatchDelivery<String> batchDelivery = mock(BatchDelivery.class); IndexNameFormatter indexNameFormatter = mock(IndexNameFormatter.class); when(indexNameFormatter.format(any(LogEvent.class))).thenReturn("formattedIndexName"); ElasticsearchAppender.Builder builder = ElasticsearchAppenderTest.createTestElasticsearchAppenderBuilder(); builder.withBatchDelivery(batchDelivery); builder.withMessageOnly(false); builder.withIndexNameFormatter(indexNameFormatter); LogEvent logEvent = createTestLogEvent(); ElasticsearchAppender appender = builder.build(); // when appender.append(logEvent); // then verify(batchDelivery, times(1)).add(eq("formattedIndexName"), any(ItemSource.class)); }
String formattedIndexName = formatter.format(logEvent);
continue; String formattedIndexName = formatter.format(tuple.getLogEvent());