You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by rl...@apache.org on 2018/01/05 23:04:35 UTC
[39/50] [abbrv] ambari git commit: AMBARI-22639. Log Feeder refactor:
integrate with spring boot (oleewere)
http://git-wip-us.apache.org/repos/asf/ambari/blob/4a668f0b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/logconfig/LogConfigHandlerTest.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/logconfig/LogConfigHandlerTest.java b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/logconfig/LogConfigHandlerTest.java
deleted file mode 100644
index 46abc63..0000000
--- a/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/logconfig/LogConfigHandlerTest.java
+++ /dev/null
@@ -1,148 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ambari.logfeeder.logconfig;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Date;
-
-import static org.easymock.EasyMock.*;
-import static org.junit.Assert.*;
-
-import org.apache.ambari.logfeeder.input.Input;
-import org.apache.ambari.logfeeder.input.InputMarker;
-import org.apache.ambari.logfeeder.loglevelfilter.FilterLogData;
-import org.apache.ambari.logfeeder.loglevelfilter.LogLevelFilterHandler;
-import org.apache.ambari.logfeeder.util.LogFeederPropertiesUtil;
-import org.apache.ambari.logsearch.config.api.LogSearchConfig;
-import org.apache.ambari.logsearch.config.api.model.loglevelfilter.LogLevelFilter;
-import org.apache.commons.lang.time.DateUtils;
-import org.apache.ambari.logsearch.config.zookeeper.model.inputconfig.impl.InputDescriptorImpl;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-public class LogConfigHandlerTest {
-
- private static InputMarker inputMarkerAudit;
- private static InputMarker inputMarkerService;
- static {
- InputDescriptorImpl auditInputDescriptor = new InputDescriptorImpl() {};
- auditInputDescriptor.setRowtype("audit");
-
- Input auditInput = strictMock(Input.class);
- expect(auditInput.getInputDescriptor()).andReturn(auditInputDescriptor).anyTimes();
- inputMarkerAudit = new InputMarker(auditInput, null, 0);
-
- InputDescriptorImpl serviceInputDescriptor = new InputDescriptorImpl() {};
- serviceInputDescriptor.setRowtype("service");
-
- Input serviceInput = strictMock(Input.class);
- expect(serviceInput.getInputDescriptor()).andReturn(serviceInputDescriptor).anyTimes();
- inputMarkerService = new InputMarker(serviceInput, null, 0);
-
- replay(auditInput, serviceInput);
- }
-
- @BeforeClass
- public static void init() throws Exception {
- LogFeederPropertiesUtil.loadProperties("logfeeder.properties");
-
- LogSearchConfig config = strictMock(LogSearchConfig.class);
- config.createLogLevelFilter(anyString(), anyString(), anyObject(LogLevelFilter.class));
- expectLastCall().anyTimes();
- LogLevelFilterHandler.init(config);
-
- LogLevelFilter logLevelFilter1 = new LogLevelFilter();
- logLevelFilter1.setHosts(Collections.<String> emptyList());
- logLevelFilter1.setDefaultLevels(Arrays.asList("FATAL", "ERROR", "WARN", "INFO"));
- logLevelFilter1.setOverrideLevels(Collections.<String> emptyList());
-
- LogLevelFilter logLevelFilter2 = new LogLevelFilter();
- logLevelFilter2.setHosts(Arrays.asList("host1"));
- logLevelFilter2.setDefaultLevels(Arrays.asList("FATAL", "ERROR", "WARN", "INFO"));
- logLevelFilter2.setOverrideLevels(Arrays.asList("FATAL", "ERROR", "WARN", "INFO", "DEBUG", "TRACE"));
- logLevelFilter2.setExpiryTime(DateUtils.addDays(new Date(), 1));
-
- LogLevelFilter logLevelFilter3 = new LogLevelFilter();
- logLevelFilter3.setHosts(Arrays.asList("host1"));
- logLevelFilter3.setDefaultLevels(Arrays.asList("FATAL", "ERROR", "WARN", "INFO"));
- logLevelFilter3.setOverrideLevels(Arrays.asList("FATAL", "ERROR", "WARN", "INFO", "DEBUG", "TRACE"));
- logLevelFilter3.setExpiryTime(DateUtils.addDays(new Date(), -1));
-
- LogLevelFilterHandler h = new LogLevelFilterHandler();
- h.setLogLevelFilter("configured_log_file1", logLevelFilter1);
- h.setLogLevelFilter("configured_log_file2", logLevelFilter2);
- h.setLogLevelFilter("configured_log_file3", logLevelFilter3);
- }
-
- @Test
- public void testLogConfigHandler_auditAllowed() throws Exception {
- assertTrue(FilterLogData.INSTANCE.isAllowed("{'host':'host1', 'type':'configured_log_file1', 'level':'DEBUG'}",
- inputMarkerAudit));
- }
-
- @Test
- public void testLogConfigHandler_emptyDataAllowed() throws Exception {
- assertTrue(FilterLogData.INSTANCE.isAllowed((String)null, inputMarkerService));
- assertTrue(FilterLogData.INSTANCE.isAllowed("", inputMarkerService));
- assertTrue(FilterLogData.INSTANCE.isAllowed(Collections.<String, Object> emptyMap(), inputMarkerService));
- }
-
- @Test
- public void testLogConfigHandler_notConfiguredLogAllowed() throws Exception {
- assertTrue(FilterLogData.INSTANCE.isAllowed("{'host':'host1', 'type':'not_configured_log_file1', 'level':'WARN'}",
- inputMarkerService));
- }
-
- @Test
- public void testLogConfigHandler_notConfiguredLogNotAllowed() throws Exception {
- assertFalse(FilterLogData.INSTANCE.isAllowed("{'host':'host1', 'type':'not_configured_log_file1', 'level':'TRACE'}",
- inputMarkerService));
- }
-
- @Test
- public void testLogConfigHandler_configuredDataAllow() throws Exception {
- assertTrue(FilterLogData.INSTANCE.isAllowed("{'host':'host1', 'type':'configured_log_file1', 'level':'INFO'}",
- inputMarkerService));
- }
-
- @Test
- public void testLogConfigHandler_configuredDataDontAllow() throws Exception {
- assertFalse(FilterLogData.INSTANCE.isAllowed("{'host':'host1', 'type':'configured_log_file1', 'level':'DEBUG'}",
- inputMarkerService));
- }
-
- @Test
- public void testLogConfigHandler_overridenConfiguredData() throws Exception {
- assertTrue(FilterLogData.INSTANCE.isAllowed("{'host':'host1', 'type':'configured_log_file2', 'level':'DEBUG'}",
- inputMarkerService));
- }
-
- @Test
- public void testLogConfigHandler_overridenConfiguredDataDifferentHost() throws Exception {
- assertFalse(FilterLogData.INSTANCE.isAllowed("{'host':'host2', 'type':'configured_log_file2', 'level':'DEBUG'}",
- inputMarkerService));
- }
-
- @Test
- public void testLogConfigHandler_overridenConfiguredDataExpired() throws Exception {
- assertFalse(FilterLogData.INSTANCE.isAllowed("{'host':'host1', 'type':'configured_log_file3', 'level':'DEBUG'}",
- inputMarkerService));
- }
-}
http://git-wip-us.apache.org/repos/asf/ambari/blob/4a668f0b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/metrics/MetricsManagerTest.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/metrics/MetricsManagerTest.java b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/metrics/MetricsManagerTest.java
index f74a80e..da8fff7 100644
--- a/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/metrics/MetricsManagerTest.java
+++ b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/metrics/MetricsManagerTest.java
@@ -29,11 +29,9 @@ import java.util.Arrays;
import java.util.List;
import java.util.TreeMap;
-import org.apache.ambari.logfeeder.util.LogFeederPropertiesUtil;
import org.apache.hadoop.metrics2.sink.timeline.TimelineMetric;
import org.apache.hadoop.metrics2.sink.timeline.TimelineMetrics;
import org.junit.Before;
-import org.junit.BeforeClass;
import org.junit.Test;
public class MetricsManagerTest {
@@ -42,11 +40,6 @@ public class MetricsManagerTest {
private LogFeederAMSClient mockClient;
private Capture<TimelineMetrics> capture;
- @BeforeClass
- public static void loadProperties() throws Exception {
- LogFeederPropertiesUtil.loadProperties("logfeeder.properties");
- }
-
@Before
public void init() throws Exception {
manager = new MetricsManager();
http://git-wip-us.apache.org/repos/asf/ambari/blob/4a668f0b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputKafkaTest.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputKafkaTest.java b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputKafkaTest.java
index 38d4b8b..c0babc4 100644
--- a/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputKafkaTest.java
+++ b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputKafkaTest.java
@@ -23,6 +23,7 @@ import java.util.Map;
import java.util.Properties;
import java.util.concurrent.Future;
+import org.apache.ambari.logfeeder.conf.LogFeederProps;
import org.apache.ambari.logfeeder.input.Input;
import org.apache.ambari.logfeeder.input.InputMarker;
import org.apache.ambari.logfeeder.output.OutputKafka.KafkaCallBack;
@@ -69,7 +70,7 @@ public class OutputKafkaTest {
config.put("topic", TEST_TOPIC);
outputKafka.loadConfig(config);
- outputKafka.init();
+ outputKafka.init(new LogFeederProps());
@SuppressWarnings("unchecked")
Future<RecordMetadata> mockFuture = EasyMock.mock(Future.class);
@@ -103,7 +104,7 @@ public class OutputKafkaTest {
config.put("topic", TEST_TOPIC);
outputKafka.loadConfig(config);
- outputKafka.init();
+ outputKafka.init(new LogFeederProps());
}
@Test
@@ -117,7 +118,7 @@ public class OutputKafkaTest {
config.put("broker_list", "some broker list");
outputKafka.loadConfig(config);
- outputKafka.init();
+ outputKafka.init(new LogFeederProps());
}
@After
http://git-wip-us.apache.org/repos/asf/ambari/blob/4a668f0b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputManagerTest.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputManagerTest.java b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputManagerTest.java
index 5abb720..49f5a11 100644
--- a/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputManagerTest.java
+++ b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputManagerTest.java
@@ -29,8 +29,10 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import org.apache.ambari.logfeeder.conf.LogFeederProps;
import org.apache.ambari.logfeeder.input.Input;
import org.apache.ambari.logfeeder.input.InputMarker;
+import org.apache.ambari.logfeeder.loglevelfilter.LogLevelFilterHandler;
import org.apache.ambari.logfeeder.metrics.MetricData;
import org.apache.ambari.logsearch.config.zookeeper.model.inputconfig.impl.InputDescriptorImpl;
import org.junit.Test;
@@ -63,10 +65,11 @@ public class OutputManagerTest {
Output output1 = strictMock(Output.class);
Output output2 = strictMock(Output.class);
Output output3 = strictMock(Output.class);
-
- output1.init(); expectLastCall();
- output2.init(); expectLastCall();
- output3.init(); expectLastCall();
+
+ LogFeederProps logFeederProps = new LogFeederProps();
+ output1.init(logFeederProps); expectLastCall();
+ output2.init(logFeederProps); expectLastCall();
+ output3.init(logFeederProps); expectLastCall();
replay(output1, output2, output3);
@@ -74,6 +77,7 @@ public class OutputManagerTest {
manager.add(output1);
manager.add(output2);
manager.add(output3);
+ manager.setLogFeederProps(logFeederProps);
manager.init();
@@ -98,11 +102,14 @@ public class OutputManagerTest {
Output output1 = strictMock(Output.class);
Output output2 = strictMock(Output.class);
Output output3 = strictMock(Output.class);
+
+ LogLevelFilterHandler mockFilter = strictMock(LogLevelFilterHandler.class);
expect(mockInput.getInputDescriptor()).andReturn(inputDescriptor);
- expect(mockInput.isUseEventMD5()).andReturn(false);
- expect(mockInput.isGenEventMD5()).andReturn(false);
- expect(mockInput.getInputDescriptor()).andReturn(inputDescriptor);
+ expect(mockInput.isUseEventMD5()).andReturn(false).anyTimes();
+ expect(mockInput.isGenEventMD5()).andReturn(false).anyTimes();
+ expect(mockInput.getInputDescriptor()).andReturn(inputDescriptor).anyTimes();
+ expect(mockFilter.isAllowed(jsonObj, inputMarker)).andReturn(true).anyTimes();
expect(mockInput.getCache()).andReturn(null);
expect(mockInput.getOutputList()).andReturn(Arrays.asList(output1, output2, output3));
@@ -110,9 +117,10 @@ public class OutputManagerTest {
output2.write(jsonObj, inputMarker); expectLastCall();
output3.write(jsonObj, inputMarker); expectLastCall();
- replay(output1, output2, output3, mockInput);
+ replay(output1, output2, output3, mockFilter, mockInput);
OutputManager manager = new OutputManager();
+ manager.setLogLevelFilterHandler(mockFilter);
manager.add(output1);
manager.add(output2);
manager.add(output3);
@@ -133,17 +141,21 @@ public class OutputManagerTest {
Output output1 = strictMock(Output.class);
Output output2 = strictMock(Output.class);
Output output3 = strictMock(Output.class);
+
+ LogLevelFilterHandler mockFilter = strictMock(LogLevelFilterHandler.class);
- expect(mockInput.getInputDescriptor()).andReturn(inputDescriptor);
+ expect(mockInput.getInputDescriptor()).andReturn(inputDescriptor).anyTimes();
+ expect(mockFilter.isAllowed(jsonString, inputMarker)).andReturn(true).anyTimes();
expect(mockInput.getOutputList()).andReturn(Arrays.asList(output1, output2, output3));
output1.write(jsonString, inputMarker); expectLastCall();
output2.write(jsonString, inputMarker); expectLastCall();
output3.write(jsonString, inputMarker); expectLastCall();
- replay(output1, output2, output3, mockInput);
+ replay(output1, output2, output3, mockInput, mockFilter);
OutputManager manager = new OutputManager();
+ manager.setLogLevelFilterHandler(mockFilter);
manager.add(output1);
manager.add(output2);
manager.add(output3);
http://git-wip-us.apache.org/repos/asf/ambari/blob/4a668f0b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputS3FileTest.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputS3FileTest.java b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputS3FileTest.java
index 7c6aca2..78cf014 100644
--- a/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputS3FileTest.java
+++ b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputS3FileTest.java
@@ -18,6 +18,7 @@
package org.apache.ambari.logfeeder.output;
+import org.apache.ambari.logfeeder.conf.LogFeederProps;
import org.apache.ambari.logfeeder.input.Input;
import org.apache.ambari.logfeeder.input.InputMarker;
import org.apache.ambari.logfeeder.output.spool.LogSpooler;
@@ -93,7 +94,7 @@ public class OutputS3FileTest {
}
};
outputS3File.loadConfig(configMap);
- outputS3File.init();
+ outputS3File.init(new LogFeederProps());
outputS3File.write("log event block", inputMarker);
verify(spooler);
}
@@ -130,7 +131,7 @@ public class OutputS3FileTest {
}
};
outputS3File.loadConfig(configMap);
- outputS3File.init();
+ outputS3File.init(new LogFeederProps());
outputS3File.write("log event block1", inputMarker);
outputS3File.write("log event block2", inputMarker);
verify(spooler);
@@ -149,7 +150,7 @@ public class OutputS3FileTest {
OutputS3File outputS3File = new OutputS3File();
configMap.put(S3OutputConfiguration.ROLLOVER_SIZE_THRESHOLD_BYTES_KEY, thresholdSize);
outputS3File.loadConfig(configMap);
- outputS3File.init();
+ outputS3File.init(new LogFeederProps());
assertTrue(outputS3File.shouldRollover(logSpoolerContext));
}
@@ -166,7 +167,7 @@ public class OutputS3FileTest {
OutputS3File outputS3File = new OutputS3File();
configMap.put(S3OutputConfiguration.ROLLOVER_SIZE_THRESHOLD_BYTES_KEY, thresholdSize);
outputS3File.loadConfig(configMap);
- outputS3File.init();
+ outputS3File.init(new LogFeederProps());
assertFalse(outputS3File.shouldRollover(logSpoolerContext));
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/4a668f0b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputSolrTest.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputSolrTest.java b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputSolrTest.java
index 5ab271a..70d5c8f 100644
--- a/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputSolrTest.java
+++ b/ambari-logsearch/ambari-logsearch-logfeeder/src/test/java/org/apache/ambari/logfeeder/output/OutputSolrTest.java
@@ -26,6 +26,8 @@ import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
+import org.apache.ambari.logfeeder.conf.LogFeederProps;
+import org.apache.ambari.logfeeder.conf.LogFeederSecurityConfig;
import org.apache.ambari.logfeeder.input.Input;
import org.apache.ambari.logfeeder.input.InputMarker;
import org.apache.ambari.logsearch.config.api.LogSearchConfigLogFeeder;
@@ -52,12 +54,16 @@ public class OutputSolrTest {
private OutputSolr outputSolr;
private LogSearchConfigLogFeeder logSearchConfigMock;
private Map<Integer, SolrInputDocument> receivedDocs = new ConcurrentHashMap<>();
+ private LogFeederProps logFeederProps = new LogFeederProps();
@Rule
public ExpectedException expectedException = ExpectedException.none();
@Before
public void init() throws Exception {
+ LogFeederSecurityConfig logFeederSecurityConfig = new LogFeederSecurityConfig();
+ logFeederSecurityConfig.setSolrKerberosEnabled(false);
+ logFeederProps.setLogFeederSecurityConfig(logFeederSecurityConfig);
outputSolr = new OutputSolr() {
@SuppressWarnings("deprecation")
@Override
@@ -97,7 +103,7 @@ public class OutputSolrTest {
config.put("type", "service");
outputSolr.loadConfig(config);
- outputSolr.init();
+ outputSolr.init(logFeederProps);
Map<Integer, SolrInputDocument> expectedDocs = new HashMap<>();
@@ -166,7 +172,7 @@ public class OutputSolrTest {
config.put("type", "service");
outputSolr.loadConfig(config);
- outputSolr.init();
+ outputSolr.init(logFeederProps);
}
@After