diff --git a/component/pom.xml b/component/pom.xml
index fe0bb7c..933c655 100644
--- a/component/pom.xml
+++ b/component/pom.xml
@@ -42,8 +42,8 @@
siddhi-query-api
- org.apache.log4j.wso2
- log4j
+ org.apache.logging.log4j
+ log4j-core
org.testng
@@ -177,12 +177,8 @@
io.siddhi.annotation.*;version="${siddhi.version.range}",
io.siddhi.core.*;version="${siddhi.version.range}",
- io.siddhi.query.*;version="${siddhi.version.range}",
- org.apache.log4j
+ io.siddhi.query.*;version="${siddhi.version.range}"
-
- ca.uhn.hl7v2.*;version="${hapi.base.version}"
-
*
META-INF=target/classes/META-INF
diff --git a/component/src/main/java/io/siddhi/extension/io/hl7/sink/Hl7Sink.java b/component/src/main/java/io/siddhi/extension/io/hl7/sink/Hl7Sink.java
index 4aa5d06..e67fb59 100644
--- a/component/src/main/java/io/siddhi/extension/io/hl7/sink/Hl7Sink.java
+++ b/component/src/main/java/io/siddhi/extension/io/hl7/sink/Hl7Sink.java
@@ -47,7 +47,8 @@
import io.siddhi.extension.io.hl7.util.Hl7Utils;
import io.siddhi.query.api.definition.StreamDefinition;
import io.siddhi.query.api.exception.SiddhiAppValidationException;
-import org.apache.log4j.Logger;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import java.io.IOException;
import java.net.URI;
@@ -167,7 +168,7 @@
public class Hl7Sink extends Sink {
- private static final Logger log = Logger.getLogger(Hl7Sink.class);
+ private static final Logger log = LogManager.getLogger(Hl7Sink.class);
private boolean tlsEnabled;
private String charset;
private String hl7Encoding;
diff --git a/component/src/main/java/io/siddhi/extension/io/hl7/source/Hl7ExceptionHandler.java b/component/src/main/java/io/siddhi/extension/io/hl7/source/Hl7ExceptionHandler.java
index a3e5f46..ecb7adf 100644
--- a/component/src/main/java/io/siddhi/extension/io/hl7/source/Hl7ExceptionHandler.java
+++ b/component/src/main/java/io/siddhi/extension/io/hl7/source/Hl7ExceptionHandler.java
@@ -19,7 +19,8 @@
package io.siddhi.extension.io.hl7.source;
import ca.uhn.hl7v2.protocol.ReceivingApplicationExceptionHandler;
-import org.apache.log4j.Logger;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import java.util.Map;
@@ -28,7 +29,7 @@
*/
public class Hl7ExceptionHandler implements ReceivingApplicationExceptionHandler {
- private static final Logger log = Logger.getLogger(Hl7ExceptionHandler.class);
+ private static final Logger log = LogManager.getLogger(Hl7ExceptionHandler.class);
@Override
public String processException(String s, Map map, String outGoingMsg, Exception e) {
diff --git a/component/src/main/java/io/siddhi/extension/io/hl7/source/Hl7ReceivingApp.java b/component/src/main/java/io/siddhi/extension/io/hl7/source/Hl7ReceivingApp.java
index 856064d..c5798d4 100644
--- a/component/src/main/java/io/siddhi/extension/io/hl7/source/Hl7ReceivingApp.java
+++ b/component/src/main/java/io/siddhi/extension/io/hl7/source/Hl7ReceivingApp.java
@@ -30,7 +30,8 @@
import io.siddhi.core.stream.input.source.SourceEventListener;
import io.siddhi.extension.io.hl7.source.exception.Hl7SourceRuntimeException;
import io.siddhi.query.api.definition.Attribute;
-import org.apache.log4j.Logger;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import java.io.IOException;
import java.util.Arrays;
@@ -45,7 +46,7 @@
*/
public class Hl7ReceivingApp implements ReceivingApplication {
- private static final Logger log = Logger.getLogger(Hl7ReceivingApp.class);
+ private static final Logger log = LogManager.getLogger(Hl7ReceivingApp.class);
private SourceEventListener sourceEventListener;
private String hl7EncodeType;
private String hl7AckType;
diff --git a/component/src/main/java/io/siddhi/extension/io/hl7/source/Hl7Source.java b/component/src/main/java/io/siddhi/extension/io/hl7/source/Hl7Source.java
index baf143b..dd3c58f 100644
--- a/component/src/main/java/io/siddhi/extension/io/hl7/source/Hl7Source.java
+++ b/component/src/main/java/io/siddhi/extension/io/hl7/source/Hl7Source.java
@@ -44,7 +44,8 @@
import io.siddhi.extension.io.hl7.util.Hl7Constants;
import io.siddhi.extension.io.hl7.util.Hl7Utils;
import io.siddhi.query.api.definition.Attribute;
-import org.apache.log4j.Logger;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import java.io.FileInputStream;
import java.io.IOException;
@@ -158,7 +159,7 @@
)
public class Hl7Source extends Source {
- private static final Logger log = Logger.getLogger(Hl7Source.class);
+ private static final Logger log = LogManager.getLogger(Hl7Source.class);
private SourceEventListener sourceEventListener;
private int port;
private boolean tlsEnabled;
diff --git a/component/src/main/resources/log4j.properties b/component/src/main/resources/log4j.properties
deleted file mode 100644
index 22f4b32..0000000
--- a/component/src/main/resources/log4j.properties
+++ /dev/null
@@ -1,34 +0,0 @@
-#
-# Copyright (c) 2019 WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
-#
-# WSO2 Inc. 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.
-#
-# For the general syntax of property based configuration files see the
-# documenation of org.apache.log4j.PropertyConfigurator.
-# The root category uses the appender called A1. Since no priority is
-# specified, the root category assumes the default priority for root
-# which is DEBUG in log4j. The root category is the only category that
-# has a default priority. All other categories need not be assigned a
-# priority in which case they inherit their priority from the
-# hierarchy.
-
-#log4j.rootLogger=DEBUG, stdout
-log4j.rootLogger=INFO, stdout
-
-log4j.appender.stdout=org.apache.log4j.ConsoleAppender
-log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
-log4j.appender.stdout.layout.ConversionPattern=%m%n
-#log4j.appender.stdout.layout.ConversionPattern=[%t] %-5p %c %x - %m%n
-
diff --git a/component/src/main/resources/log4j2.properties b/component/src/main/resources/log4j2.properties
new file mode 100755
index 0000000..2ce5010
--- /dev/null
+++ b/component/src/main/resources/log4j2.properties
@@ -0,0 +1,40 @@
+#
+# /*
+# * Copyright (c) 2022, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
+# *
+# * WSO2 Inc. 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.
+# */
+#
+
+
+# For the general syntax of property based configuration files see the
+# documenation of org.apache.log4j.PropertyConfigurator.
+
+# The root category uses the appender called A1. Since no priority is
+# specified, the root category assumes the default priority for root
+# which is DEBUG in log4j. The root category is the only category that
+# has a default priority. All other categories need not be assigned a
+# priority in which case they inherit their priority from the
+# hierarchy.
+
+# Console appender configuration
+appender.console.type = Console
+appender.console.name = consoleLogger
+appender.console.layout.type = PatternLayout
+appender.console.layout.pattern = [%t] %-5p %c %x - %m%n
+
+# Root logger referring to console appender
+rootLogger.level = info
+rootLogger.appenderRef.stdout.ref = consoleLogger
diff --git a/component/src/test/java/io/siddhi/extension/io/hl7/sink/Hl7SinkTestUtil.java b/component/src/test/java/io/siddhi/extension/io/hl7/sink/Hl7SinkTestUtil.java
index 5a40692..ebb13b2 100644
--- a/component/src/test/java/io/siddhi/extension/io/hl7/sink/Hl7SinkTestUtil.java
+++ b/component/src/test/java/io/siddhi/extension/io/hl7/sink/Hl7SinkTestUtil.java
@@ -28,7 +28,8 @@
import ca.uhn.hl7v2.protocol.ApplicationRouter;
import ca.uhn.hl7v2.protocol.ReceivingApplication;
import io.siddhi.extension.io.hl7.util.TestUtil;
-import org.apache.log4j.Logger;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import java.io.IOException;
import java.util.ArrayList;
@@ -40,7 +41,7 @@
*/
public class Hl7SinkTestUtil {
- private static final Logger log = Logger.getLogger(Hl7SinkTestUtil.class);
+ private static final Logger log = LogManager.getLogger(Hl7SinkTestUtil.class);
private HapiContext context = new DefaultHapiContext();
private HL7Service hl7Service;
private static int count;
diff --git a/component/src/test/java/io/siddhi/extension/io/hl7/sink/TestCaseOfHl7Sink.java b/component/src/test/java/io/siddhi/extension/io/hl7/sink/TestCaseOfHl7Sink.java
index 258a369..cc3e124 100644
--- a/component/src/test/java/io/siddhi/extension/io/hl7/sink/TestCaseOfHl7Sink.java
+++ b/component/src/test/java/io/siddhi/extension/io/hl7/sink/TestCaseOfHl7Sink.java
@@ -26,11 +26,12 @@
import io.siddhi.core.SiddhiAppRuntime;
import io.siddhi.core.SiddhiManager;
import io.siddhi.core.stream.input.InputHandler;
-import io.siddhi.core.stream.output.sink.Sink;
import io.siddhi.extension.io.hl7.util.TestUtil;
import io.siddhi.extension.io.hl7.util.UnitTestAppender;
import io.siddhi.query.api.exception.SiddhiAppValidationException;
-import org.apache.log4j.Logger;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.Logger;
import org.testng.AssertJUnit;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
@@ -42,7 +43,7 @@
*/
public class TestCaseOfHl7Sink {
- private static Logger log = Logger.getLogger(TestCaseOfHl7Sink.class);
+ private static final Logger log = (Logger) LogManager.getLogger(TestCaseOfHl7Sink.class);
private volatile int count;
private volatile boolean eventArrived;
private Hl7SinkTestUtil hl7SinkTestUtil;
@@ -466,9 +467,11 @@ public void hl7PublishTestConnectionUnavailable() throws InterruptedException {
log.info("---------------------------------------------------------------------------------------------");
log.info("hl7 sink test with a unavailable server.");
log.info("---------------------------------------------------------------------------------------------");
- log = Logger.getLogger(Sink.class);
- UnitTestAppender appender = new UnitTestAppender();
- log.addAppender(appender);
+ UnitTestAppender appender = new UnitTestAppender("UnitTestAppender", null);
+ final Logger logger = (Logger) LogManager.getRootLogger();
+ logger.setLevel(Level.ALL);
+ logger.addAppender(appender);
+ appender.start();
SiddhiManager siddhiManager = new SiddhiManager();
String siddhiApp = "@App:name('TestExecutionPlan')\n" +
"@sink(type='hl7', " +
@@ -480,8 +483,10 @@ public void hl7PublishTestConnectionUnavailable() throws InterruptedException {
SiddhiAppRuntime siddhiAppRuntime = siddhiManager.createSiddhiAppRuntime(siddhiApp);
siddhiAppRuntime.start();
Thread.sleep(10000);
- AssertJUnit.assertTrue(appender.getMessages().contains("Failed to connect with the HL7 server, check"));
+ AssertJUnit.assertTrue(((UnitTestAppender) logger.getAppenders().
+ get("UnitTestAppender")).getMessages().contains("Failed to connect with the HL7 server, check"));
siddhiAppRuntime.shutdown();
+ logger.removeAppender(appender);
}
@Test(expectedExceptions = SiddhiAppValidationException.class)
@@ -511,9 +516,11 @@ public void hl7PublishTestUnSupportCharsetForServer() throws InterruptedExceptio
log.info("---------------------------------------------------------------------------------------------");
log.info("Sink test if the client uses multiple-byte-character encoding & server uses single-byte encoding ");
log.info("---------------------------------------------------------------------------------------------");
- log = Logger.getLogger(Hl7Sink.class);
- UnitTestAppender appender = new UnitTestAppender();
- log.addAppender(appender);
+ UnitTestAppender appender = new UnitTestAppender("UnitTestAppender", null);
+ final Logger logger = (Logger) LogManager.getRootLogger();
+ logger.setLevel(Level.ALL);
+ logger.addAppender(appender);
+ appender.start();
SiddhiManager siddhiManager = new SiddhiManager();
String siddhiApp = "@App:name('TestExecutionPlan')\n" +
"@sink(type='hl7', " +
@@ -535,9 +542,11 @@ public void hl7PublishTestUnSupportCharsetForServer() throws InterruptedExceptio
} catch (InterruptedException e) {
AssertJUnit.fail("interrupted");
}
- AssertJUnit.assertTrue(appender.getMessages().contains("Error occurred while processing the message." +
+ AssertJUnit.assertTrue(((UnitTestAppender) logger.getAppenders().
+ get("UnitTestAppender")).getMessages().contains("Error occurred while processing the message." +
" Please check the TestExecutionPlan:hl7stream"));
siddhiAppRuntime.shutdown();
+ logger.removeAppender(appender);
}
@Test
@@ -604,9 +613,11 @@ public void hl7PublishTestUnsupportedCharset() {
log.info("---------------------------------------------------------------------------------------------");
log.info("hl7 Sink test with given charset Type is invalid.");
log.info("---------------------------------------------------------------------------------------------");
- log = Logger.getLogger(Sink.class);
- UnitTestAppender appender = new UnitTestAppender();
- log.addAppender(appender);
+ UnitTestAppender appender = new UnitTestAppender("UnitTestAppender", null);
+ final Logger logger = (Logger) LogManager.getRootLogger();
+ logger.setLevel(Level.ALL);
+ logger.addAppender(appender);
+ appender.start();
SiddhiManager siddhiManager = new SiddhiManager();
String siddhiApp = "@App:name('TestExecutionPlan')\n" +
"@sink(type='hl7', " +
@@ -617,8 +628,10 @@ public void hl7PublishTestUnsupportedCharset() {
"define stream hl7stream(payload string);";
SiddhiAppRuntime siddhiAppRuntime = siddhiManager.createSiddhiAppRuntime(siddhiApp);
siddhiAppRuntime.start();
- AssertJUnit.assertTrue(appender.getMessages().contains("UTF_8 Error while connecting at Sink 'hl7'"));
+ AssertJUnit.assertTrue(((UnitTestAppender) logger.getAppenders().
+ get("UnitTestAppender")).getMessages().contains("UTF_8, error while connecting at Sink 'hl7'"));
siddhiAppRuntime.shutdown();
+ logger.removeAppender(appender);
}
@Test
@@ -627,9 +640,11 @@ public void hl7PublishTestUnsupportedHl7Encoding() throws InterruptedException {
log.info("---------------------------------------------------------------------------------------------");
log.info("hl7 Sink test with UnSupported Hl7 Encoding - giving text format and preferred as xml");
log.info("---------------------------------------------------------------------------------------------");
- log = Logger.getLogger(Hl7Sink.class);
- UnitTestAppender appender = new UnitTestAppender();
- log.addAppender(appender);
+ UnitTestAppender appender = new UnitTestAppender("UnitTestAppender", null);
+ final Logger logger = (Logger) LogManager.getRootLogger();
+ logger.setLevel(Level.ALL);
+ logger.addAppender(appender);
+ appender.start();
SiddhiManager siddhiManager = new SiddhiManager();
String siddhiApp = "@App:name('TestExecutionPlan')\n" +
"@sink(type='hl7', " +
@@ -651,9 +666,11 @@ public void hl7PublishTestUnsupportedHl7Encoding() throws InterruptedException {
} catch (InterruptedException e) {
AssertJUnit.fail("interrupted");
}
- AssertJUnit.assertTrue(appender.getMessages().contains("Error occurred while processing the message. Please " +
+ AssertJUnit.assertTrue(((UnitTestAppender) logger.getAppenders().
+ get("UnitTestAppender")).getMessages().contains("Error occurred while processing the message. Please " +
"check the TestExecutionPlan:hl7stream"));
siddhiAppRuntime.shutdown();
+ logger.removeAppender(appender);
}
@Test(expectedExceptions = SiddhiAppValidationException.class)
diff --git a/component/src/test/java/io/siddhi/extension/io/hl7/sink/TestCaseOfHl7SinkForTls.java b/component/src/test/java/io/siddhi/extension/io/hl7/sink/TestCaseOfHl7SinkForTls.java
index fe3367e..1913fe1 100644
--- a/component/src/test/java/io/siddhi/extension/io/hl7/sink/TestCaseOfHl7SinkForTls.java
+++ b/component/src/test/java/io/siddhi/extension/io/hl7/sink/TestCaseOfHl7SinkForTls.java
@@ -27,7 +27,9 @@
import io.siddhi.core.stream.input.InputHandler;
import io.siddhi.extension.io.hl7.util.TestUtil;
import io.siddhi.extension.io.hl7.util.UnitTestAppender;
-import org.apache.log4j.Logger;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.Logger;
import org.testng.AssertJUnit;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
@@ -41,7 +43,7 @@ public class TestCaseOfHl7SinkForTls {
private volatile int count;
private volatile boolean eventArrived;
- private static Logger log = Logger.getLogger(TestCaseOfHl7SinkForTls.class);
+ private static final Logger log = (Logger) LogManager.getLogger(TestCaseOfHl7SinkForTls.class);
private PipeParser pipeParser = new PipeParser();
private TestUtil testUtil = new TestUtil();
private Hl7SinkTestUtil hl7SinkTestUtil;
@@ -106,9 +108,11 @@ public void hl7PublishTestForTlsSSLHandshakeException() throws InterruptedExcept
log.info("---------------------------------------------------------------------------------------------");
log.info("hl7 Sink test with tls Enabled and tls of source not enabled");
log.info("---------------------------------------------------------------------------------------------");
- log = Logger.getLogger(Hl7Sink.class);
- UnitTestAppender appender = new UnitTestAppender();
- log.addAppender(appender);
+ UnitTestAppender appender = new UnitTestAppender("UnitTestAppender", null);
+ final Logger logger = (Logger) LogManager.getRootLogger();
+ logger.setLevel(Level.ALL);
+ logger.addAppender(appender);
+ appender.start();
SiddhiManager siddhiManager = new SiddhiManager();
String siddhiApp = "@App:name('TestExecutionPlan')\n" +
"@sink(type='hl7', " +
@@ -133,9 +137,11 @@ public void hl7PublishTestForTlsSSLHandshakeException() throws InterruptedExcept
} catch (InterruptedException e) {
AssertJUnit.fail("interrupted");
}
- AssertJUnit.assertTrue(appender.getMessages().contains("Interruption occurred while sending the message " +
+ AssertJUnit.assertTrue(((UnitTestAppender) logger.getAppenders().
+ get("UnitTestAppender")).getMessages().contains("Interruption occurred while sending the message " +
"from stream: TestExecutionPlan:hl7stream"));
siddhiAppRuntime.shutdown();
+ logger.removeAppender(appender);
}
@Test
diff --git a/component/src/test/java/io/siddhi/extension/io/hl7/source/TestCaseOfHl7Source.java b/component/src/test/java/io/siddhi/extension/io/hl7/source/TestCaseOfHl7Source.java
index 3264649..a4671b4 100644
--- a/component/src/test/java/io/siddhi/extension/io/hl7/source/TestCaseOfHl7Source.java
+++ b/component/src/test/java/io/siddhi/extension/io/hl7/source/TestCaseOfHl7Source.java
@@ -32,7 +32,9 @@
import io.siddhi.extension.io.hl7.util.TestUtil;
import io.siddhi.extension.io.hl7.util.UnitTestAppender;
import io.siddhi.query.api.exception.SiddhiAppValidationException;
-import org.apache.log4j.Logger;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.Logger;
import org.testng.Assert;
import org.testng.AssertJUnit;
import org.testng.annotations.BeforeMethod;
@@ -49,7 +51,7 @@
*/
public class TestCaseOfHl7Source {
- private static Logger log = Logger.getLogger(TestCaseOfHl7Source.class);
+ private static final Logger log = (Logger) LogManager.getLogger(TestCaseOfHl7Source.class);
private AtomicInteger count = new AtomicInteger();
private volatile boolean eventArrived;
private List receivedEvent;
@@ -408,9 +410,11 @@ public void hl7ConsumerTestUnsupportedCharset() {
log.info("---------------------------------------------------------------------------------------------");
log.info("hl7 source test with given charset Type is invalid");
log.info("---------------------------------------------------------------------------------------------");
- log = Logger.getLogger(Source.class);
- UnitTestAppender appender = new UnitTestAppender();
- log.addAppender(appender);
+ UnitTestAppender appender = new UnitTestAppender("UnitTestAppender", null);
+ final Logger logger = (Logger) LogManager.getRootLogger();
+ logger.setLevel(Level.ALL);
+ logger.addAppender(appender);
+ appender.start();
SiddhiManager siddhiManager = new SiddhiManager();
String siddhiApp = "@App:name('TestExecutionPlan')\n" +
"@source ( type = 'hl7',\n" +
@@ -422,8 +426,10 @@ public void hl7ConsumerTestUnsupportedCharset() {
"define stream hl7stream (MSH10 string, MSH3HD1 string);\n";
SiddhiAppRuntime siddhiAppRuntime = siddhiManager.createSiddhiAppRuntime(siddhiApp);
siddhiAppRuntime.start();
- AssertJUnit.assertTrue(appender.getMessages().contains("UTF_8 Error while connecting at Source 'hl7'"));
+ AssertJUnit.assertTrue(((UnitTestAppender) logger.getAppenders().
+ get("UnitTestAppender")).getMessages().contains("UTF_8 Error while connecting at Source 'hl7'"));
siddhiAppRuntime.shutdown();
+ logger.removeAppender(appender);
}
@Test
@@ -432,9 +438,11 @@ public void hl7ConsumerTestMessageProcessException() throws InterruptedException
log.info("---------------------------------------------------------------------------------------------");
log.info("hl7 source test with unrecognized structure of received message - ");
log.info("---------------------------------------------------------------------------------------------");
- log = Logger.getLogger(Hl7ExceptionHandler.class);
- UnitTestAppender appender = new UnitTestAppender();
- log.addAppender(appender);
+ UnitTestAppender appender = new UnitTestAppender("UnitTestAppender", null);
+ final Logger logger = (Logger) LogManager.getRootLogger();
+ logger.setLevel(Level.ALL);
+ logger.addAppender(appender);
+ appender.start();
SiddhiManager siddhiManager = new SiddhiManager();
String siddhiApp = "@App:name('TestExecutionPlan')\n" +
"@source ( type = 'hl7',\n" +
@@ -476,10 +484,12 @@ public void receive(Event[] events) {
stream.send(new Object[]{payLoadER71});
stream.send(new Object[]{payLoadER72});
SiddhiTestHelper.waitForEvents(waitTime, 2, count, timeout);
- AssertJUnit.assertTrue(appender.getMessages().contains("Some error occurred while process the message." +
+ AssertJUnit.assertTrue(((UnitTestAppender) logger.getAppenders().
+ get("UnitTestAppender")).getMessages().contains("Some error occurred while process the message." +
" Error message:"));
executionPlanRuntime.shutdown();
siddhiAppRuntime.shutdown();
+ logger.removeAppender(appender);
}
@Test(expectedExceptions = SiddhiAppValidationException.class)
@@ -838,9 +848,11 @@ public void hl7ConsumerTestConformanceProfileWithProfileException() throws HL7Ex
log.info("---------------------------------------------------------------------------------------------");
log.info("hl7 source to test with conformance profile exception");
log.info("---------------------------------------------------------------------------------------------");
- log = Logger.getLogger(Hl7ReceivingApp.class);
- UnitTestAppender appender = new UnitTestAppender();
- log.addAppender(appender);
+ UnitTestAppender appender = new UnitTestAppender("UnitTestAppender", null);
+ final Logger logger = (Logger) LogManager.getRootLogger();
+ logger.setLevel(Level.ALL);
+ logger.addAppender(appender);
+ appender.start();
receivedEvent = new ArrayList<>(1);
SiddhiManager siddhiManager = new SiddhiManager();
String siddhiApp = "@App:name('TestExecutionPlan')\n" +
@@ -894,10 +906,12 @@ public void receive(Event[] events) {
AssertJUnit.assertEquals(1, count.get());
AssertJUnit.assertTrue(eventArrived);
AssertJUnit.assertEquals(expected, receivedEvent);
- AssertJUnit.assertTrue(appender.getMessages().contains("The given conformance Profile file is not" +
+ AssertJUnit.assertTrue(((UnitTestAppender) logger.getAppenders().
+ get("UnitTestAppender")).getMessages().contains("The given conformance Profile file is not" +
" supported. Hence, dropping the validation."));
siddhiAppRuntime.shutdown();
executionPlanRuntime.shutdown();
+ logger.removeAppender(appender);
}
@Test
diff --git a/component/src/test/java/io/siddhi/extension/io/hl7/source/TestCaseOfHl7SourceForTls.java b/component/src/test/java/io/siddhi/extension/io/hl7/source/TestCaseOfHl7SourceForTls.java
index 4021a30..70d8f1c 100644
--- a/component/src/test/java/io/siddhi/extension/io/hl7/source/TestCaseOfHl7SourceForTls.java
+++ b/component/src/test/java/io/siddhi/extension/io/hl7/source/TestCaseOfHl7SourceForTls.java
@@ -27,7 +27,8 @@
import io.siddhi.core.stream.input.InputHandler;
import io.siddhi.core.stream.output.StreamCallback;
import io.siddhi.extension.io.hl7.util.TestUtil;
-import org.apache.log4j.Logger;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.testng.AssertJUnit;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
@@ -42,7 +43,7 @@
*/
public class TestCaseOfHl7SourceForTls {
- private static Logger log = Logger.getLogger(TestCaseOfHl7SourceForTls.class);
+ private static final Logger log = LogManager.getLogger(TestCaseOfHl7SourceForTls.class);
private AtomicInteger count = new AtomicInteger();
private volatile boolean eventArrived;
private List receivedEvent;
diff --git a/component/src/test/java/io/siddhi/extension/io/hl7/util/UnitTestAppender.java b/component/src/test/java/io/siddhi/extension/io/hl7/util/UnitTestAppender.java
index 09e9130..5ade3ba 100644
--- a/component/src/test/java/io/siddhi/extension/io/hl7/util/UnitTestAppender.java
+++ b/component/src/test/java/io/siddhi/extension/io/hl7/util/UnitTestAppender.java
@@ -18,35 +18,52 @@
*/
package io.siddhi.extension.io.hl7.util;
-import org.apache.log4j.AppenderSkeleton;
-import org.apache.log4j.spi.LoggingEvent;
+import org.apache.logging.log4j.core.Appender;
+import org.apache.logging.log4j.core.Core;
+import org.apache.logging.log4j.core.Filter;
+import org.apache.logging.log4j.core.LogEvent;
+import org.apache.logging.log4j.core.appender.AbstractAppender;
+import org.apache.logging.log4j.core.config.plugins.Plugin;
+import org.apache.logging.log4j.core.config.plugins.PluginAttribute;
+import org.apache.logging.log4j.core.config.plugins.PluginElement;
+import org.apache.logging.log4j.core.config.plugins.PluginFactory;
+import org.mvel2.util.StringAppender;
/**
* Util class to read the logs of test cases.
*/
-public class UnitTestAppender extends AppenderSkeleton {
+@Plugin(name = "UnitTestAppender",
+ category = Core.CATEGORY_NAME, elementType = Appender.ELEMENT_TYPE)
+public class UnitTestAppender extends AbstractAppender {
- private String messages;
+ private StringAppender messages = new StringAppender();
- @Override
- protected void append(LoggingEvent loggingEvent) {
+ public UnitTestAppender(String name, Filter filter) {
- messages = loggingEvent.getRenderedMessage();
+ super(name, filter, null);
}
- @Override
- public void close() {
+ @PluginFactory
+ public static UnitTestAppender createAppender(
+ @PluginAttribute("name") String name,
+ @PluginElement("Filter") Filter filter) {
+ return new UnitTestAppender(name, filter);
}
- @Override
- public boolean requiresLayout() {
+ public String getMessages() {
- return false;
+ String results = messages.toString();
+ if (results.isEmpty()) {
+ return null;
+ }
+ return results;
}
- public String getMessages() {
+ @Override
+ public void append(LogEvent event) {
- return messages;
+ messages.append(event.getMessage().getFormattedMessage());
}
+
}
diff --git a/component/src/test/resources/log4j.properties b/component/src/test/resources/log4j.properties
deleted file mode 100644
index 6e417da..0000000
--- a/component/src/test/resources/log4j.properties
+++ /dev/null
@@ -1,31 +0,0 @@
-#
-# Copyright (c) 2019 WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
-#
-# WSO2 Inc. 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.
-#
-# For the general syntax of property based configuration files see the
-# documenation of org.apache.log4j.PropertyConfigurator.
-# The root category uses the appender called A1. Since no priority is
-# specified, the root category assumes the default priority for root
-# which is DEBUG in log4j. The root category is the only category that
-# has a default priority. All other categories need not be assigned a
-# priority in which case they inherit their priority from the
-# hierarchy.
-#log4j.rootLogger=DEBUG, stdout
-log4j.rootLogger=INFO, stdout
-log4j.appender.stdout=org.apache.log4j.ConsoleAppender
-log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
-log4j.appender.stdout.layout.ConversionPattern=%m%n
-#log4j.appender.stdout.layout.ConversionPattern1=[%t] %-5p %c %x - %m%n
diff --git a/component/src/test/resources/log4j2.xml b/component/src/test/resources/log4j2.xml
new file mode 100644
index 0000000..1d83f87
--- /dev/null
+++ b/component/src/test/resources/log4j2.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pom.xml b/pom.xml
index 18b4875..2d79f94 100644
--- a/pom.xml
+++ b/pom.xml
@@ -96,8 +96,8 @@
${hapi.hl7overhttp.version}
- org.apache.log4j.wso2
- log4j
+ org.apache.logging.log4j
+ log4j-core
${log4j.version}
@@ -145,13 +145,13 @@
- 5.1.2
+ 5.1.21
[5.0.0,6.0.0)
- 1.2.17.wso2v1
+ 2.17.1
4.4.15
- 5.0.4
- 2.0.4
- 5.0.3
+ 5.2.2
+ 2.1.1
+ 5.2.2
0.7.9
6.11
2.2