diff --git a/CHANGES_NEXT_RELEASE b/CHANGES_NEXT_RELEASE
index e3c69315d..e26fdd8d8 100644
--- a/CHANGES_NEXT_RELEASE
+++ b/CHANGES_NEXT_RELEASE
@@ -1,6 +1,8 @@
-[cygnus-ngsi] Update NameMapping compile log mensage from WARN to ERROR
-[cygnus-common] MongoDB indexes are created depending on DM (#2204)
-[cygnus-common] Upgrade postgresql from 42.4.1 to 42.4.3
-[cygnus-common] OracleSQL backend (#2195)
-[cygnus-ngsi] OracleSQL ngsi sink added (for OracleS 11g and 12c) (#2195)
-[cygnus-ngsi] Removes "_" in schema name for DM -schema family (#2201)
+[cygnus-ngsi] Update NameMapping compile log mensage from WARN to ERROR
+[cygnus-common] MongoDB indexes are created depending on DM (#2204)
+[cygnus-common] Upgrade postgresql from 42.4.1 to 42.4.3
+[cygnus-common] OracleSQL backend (#2195)
+[cygnus-common][cygnus-twitter] Upgrade flume-ng-node version from 1.9.0 to 1.11.0 (#2179)
+[cygnus-common][cygnus-twitter][cygnus-ngsi][cygnus-ngsi-ld] Upgrade log4j from v1 (1.2.17) to v2 (2.17.2) series (#1592)
+[cygnus-ngsi] OracleSQL ngsi sink added (for OracleS 11g and 12c) (#2195)
+[cygnus-ngsi] Removes "_" in schema name for DM -schema family (#2201)
diff --git a/cygnus-common/conf/log4j.properties.template b/cygnus-common/conf/log4j.properties.template
deleted file mode 100644
index 690a7d310..000000000
--- a/cygnus-common/conf/log4j.properties.template
+++ /dev/null
@@ -1,71 +0,0 @@
-#
-# Copyright 2014-2017 Telefónica Investigación y Desarrollo, S.A.U
-#
-# This file is part of fiware-cygnus (FIWARE project).
-#
-# fiware-cygnus is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General
-# Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any
-# later version.
-# fiware-cygnus is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
-# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
-# details.
-#
-# You should have received a copy of the GNU Affero General Public License along with fiware-cygnus. If not, see
-# http://www.gnu.org/licenses/.
-#
-# For those usages not covered by the GNU Affero General Public License please contact with iot_support at tid dot es
-#
-
-# To be put in APACHE_FLUME_HOME/conf/log4j.properties
-
-# Define some default values.
-# These can be overridden by system properties, e.g. the following logs in the standard output, which is very useful
-# for testing purposes (-Dflume.root.logger=DEBUG,console)
-flume.root.logger=INFO,LOGFILE
-#flume.root.logger=DEBUG,console
-flume.log.dir=/var/log/cygnus/
-flume.log.file=cygnus.log
-
-# Logging level for third party components.
-log4j.logger.org.apache.flume.lifecycle = WARN
-log4j.logger.org.jboss = WARN
-log4j.logger.org.mortbay = WARN
-log4j.logger.org.apache.avro.ipc.NettyTransceiver = WARN
-log4j.logger.org.apache.hadoop = WARN
-log4j.logger.org.mongodb = WARN
-log4j.logger.org.apache.http = WARN
-log4j.logger.org.apache.zookeeper = WARN
-log4j.logger.org.apache.kafka = WARN
-log4j.logger.org.I0Itec = WARN
-log4j.logger.com.amazonaws = WARN
-
-# Define the root logger to the system property "flume.root.logger".
-log4j.rootLogger=${flume.root.logger}
-
-# Stock log4j rolling file appender.
-# Default log rotation configuration.
-log4j.appender.LOGFILE=org.apache.log4j.RollingFileAppender
-log4j.appender.LOGFILE.MaxFileSize=100MB
-log4j.appender.LOGFILE.MaxBackupIndex=10
-log4j.appender.LOGFILE.File=${flume.log.dir}/${flume.log.file}
-log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
-log4j.appender.LOGFILE.layout.ConversionPattern=time=%d{yyyy-MM-dd}T%d{HH:mm:ss.SSS}Z | lvl=%p | corr=%X{correlatorId} | trans=%X{transactionId} | srv=%X{service} | subsrv=%X{subservice} | comp=%X{agent} | op=%M | msg=%C[%L] : %m%n
-
-# Warning: If you enable the following appender it will fill up your disk if you don't have a cleanup job!
-# cleanup job example: find /var/log/cygnus -type f -mtime +30 -exec rm -f {} \;
-# This uses the updated rolling file appender from log4j-extras that supports a reliable time-based rolling policy.
-# See http://logging.apache.org/log4j/companions/extras/apidocs/org/apache/log4j/rolling/TimeBasedRollingPolicy.html
-# Add "DAILY" to flume.root.logger above if you want to use this.
-log4j.appender.DAILY=org.apache.log4j.rolling.RollingFileAppender
-log4j.appender.DAILY.rollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
-log4j.appender.DAILY.rollingPolicy.ActiveFileName=${flume.log.dir}/${flume.log.file}
-log4j.appender.DAILY.rollingPolicy.FileNamePattern=${flume.log.dir}/${flume.log.file}.%d{yyyy-MM-dd}
-log4j.appender.DAILY.layout=org.apache.log4j.PatternLayout
-log4j.appender.DAILY.layout.ConversionPattern=time=%d{yyyy-MM-dd}T%d{HH:mm:ss.SSS}Z | lvl=%p | corr=%X{correlatorId} | trans=%X{transactionId} | srv=%X{service} | subsrv=%X{subservice} | comp=%X{agent} | op=%M | msg=%C[%L] : %m%n
-
-# Console appender, i.e. printing logs in the standar output.
-# Add "console" to flume.root.logger above if you want to use this.
-log4j.appender.console=org.apache.log4j.ConsoleAppender
-log4j.appender.console.target=System.err
-log4j.appender.console.layout=org.apache.log4j.PatternLayout
-log4j.appender.console.layout.ConversionPattern=time=%d{yyyy-MM-dd}T%d{HH:mm:ss.SSS}Z | lvl=%p | corr=%X{correlatorId} | trans=%X{transactionId} | srv=%X{service} | subsrv=%X{subservice} | comp=%X{agent} | op=%M | msg=%C[%L] : %m%n
diff --git a/cygnus-common/conf/log4j2.properties.template b/cygnus-common/conf/log4j2.properties.template
new file mode 100644
index 000000000..d45daf4e3
--- /dev/null
+++ b/cygnus-common/conf/log4j2.properties.template
@@ -0,0 +1,57 @@
+#
+# Copyright 2014-2017 Telefónica Investigación y Desarrollo, S.A.U
+#
+# This file is part of fiware-cygnus (FIWARE project).
+#
+# fiware-cygnus is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General
+# Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any
+# later version.
+# fiware-cygnus is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
+# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
+# details.
+#
+# You should have received a copy of the GNU Affero General Public License along with fiware-cygnus. If not, see
+# http://www.gnu.org/licenses/.
+#
+# For those usages not covered by the GNU Affero General Public License please contact with iot_support at tid dot es
+#
+
+# To be put in APACHE_FLUME_HOME/conf/log4j2.properties
+# Define some default values.
+# These can be overridden by system properties, e.g. the following logs in the standard output, which is very useful
+# for testing purposes (-Dflume.root.logger=DEBUG,console)
+flume.root.logger=WARN,LOGFILE
+#flume.root.logger=DEBUG,console
+flume.log.dir=/var/log/cygnus/
+flume.log.file=cygnus.log
+
+# Logging level for third party components.
+log4j.logger.org.apache.flume.lifecycle = WARN
+log4j.logger.org.jboss = WARN
+log4j.logger.org.mortbay = WARN
+log4j.logger.org.apache.avro.ipc.NettyTransceiver = WARN
+log4j.logger.org.apache.hadoop = WARN
+log4j.logger.org.mongodb = WARN
+log4j.logger.org.apache.http = WARN
+log4j.logger.org.apache.zookeeper = WARN
+log4j.logger.org.apache.kafka = WARN
+log4j.logger.org.I0Itec = WARN
+log4j.logger.com.amazonaws = WARN
+log4j.logger.org.eclipse.jetty = WARN
+
+# Extra logging related to initialization of Log4j
+# Set to debug or trace if log4j initialization is failing
+status = warn
+# Name of the configuration
+name = ConsoleLogConfig
+
+# Console appender configuration
+appender.console.type = Console
+appender.console.name = consoleLogger
+appender.console.layout.type = PatternLayout
+appender.console.layout.pattern = time=%d{yyyy-MM-dd}T%d{HH:mm:ss.SSS}Z | lvl=%p | corr=%X{correlatorId} | trans=%X{transactionId} | srv=%X{service} | subsrv=%X{subservice} | comp=%X{agent} | op=%M | msg=%C[%L] : %m%n
+
+# Root logger level
+rootLogger.level = warn
+# Root logger referring to console appender
+rootLogger.appenderRef.stdout.ref = consoleLogger
diff --git a/cygnus-common/pom.xml b/cygnus-common/pom.xml
index adef52176..02101fc14 100644
--- a/cygnus-common/pom.xml
+++ b/cygnus-common/pom.xml
@@ -15,6 +15,13 @@
UTF-8
+
+
+ mvnrepository
+ https://repo1.maven.org/maven2
+
+
+
@@ -33,7 +40,7 @@
org.apache.flume
flume-ng-node
- 1.9.0
+ 1.11.0
@@ -87,9 +94,19 @@
- log4j
- log4j
- 1.2.17
+ org.apache.logging.log4j
+ log4j-core
+ 2.17.2
+
+
+ org.apache.logging.log4j
+ log4j-api
+ 2.17.2
+
+
+ org.apache.logging.log4j
+ log4j-slf4j-impl
+ 2.17.2
diff --git a/cygnus-common/src/main/java/com/telefonica/iot/cygnus/backends/arcgis/model/Feature.java b/cygnus-common/src/main/java/com/telefonica/iot/cygnus/backends/arcgis/model/Feature.java
index f4bd0c650..217bcc6aa 100644
--- a/cygnus-common/src/main/java/com/telefonica/iot/cygnus/backends/arcgis/model/Feature.java
+++ b/cygnus-common/src/main/java/com/telefonica/iot/cygnus/backends/arcgis/model/Feature.java
@@ -27,8 +27,6 @@
import java.util.Map.Entry;
import java.util.Set;
-import org.apache.log4j.Logger;
-
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
diff --git a/cygnus-common/src/main/java/com/telefonica/iot/cygnus/backends/arcgis/model/Point.java b/cygnus-common/src/main/java/com/telefonica/iot/cygnus/backends/arcgis/model/Point.java
index b4aca62c5..8dab058f8 100644
--- a/cygnus-common/src/main/java/com/telefonica/iot/cygnus/backends/arcgis/model/Point.java
+++ b/cygnus-common/src/main/java/com/telefonica/iot/cygnus/backends/arcgis/model/Point.java
@@ -18,8 +18,6 @@
package com.telefonica.iot.cygnus.backends.arcgis.model;
-import org.apache.log4j.Logger;
-
import com.google.gson.JsonObject;
import com.telefonica.iot.cygnus.backends.arcgis.exceptions.ArcgisException;
import com.telefonica.iot.cygnus.log.CygnusLogger;
diff --git a/cygnus-common/src/main/java/com/telefonica/iot/cygnus/backends/http/HttpBackend.java b/cygnus-common/src/main/java/com/telefonica/iot/cygnus/backends/http/HttpBackend.java
index c4ac83a0b..a00a3caf4 100644
--- a/cygnus-common/src/main/java/com/telefonica/iot/cygnus/backends/http/HttpBackend.java
+++ b/cygnus-common/src/main/java/com/telefonica/iot/cygnus/backends/http/HttpBackend.java
@@ -42,7 +42,8 @@
import org.apache.http.client.methods.HttpPut;
import org.apache.http.client.methods.HttpRequestBase;
import org.apache.http.entity.StringEntity;
-import org.apache.log4j.Logger;
+import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.LogManager;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
@@ -258,7 +259,7 @@ private class PrivilegedRequest implements PrivilegedAction
- log4j
- log4j
- 1.2.17
+ org.apache.logging.log4j
+ log4j-api
+ 2.17.2
- org.slf4j
- slf4j-simple
- 1.7.21
+ org.apache.logging.log4j
+ log4j-core
+ 2.17.2
+
+
+ org.apache.logging.log4j
+ log4j-slf4j-impl
+ 2.17.2
diff --git a/cygnus-ngsi/pom.xml b/cygnus-ngsi/pom.xml
index e437bbb0a..08ddd056d 100644
--- a/cygnus-ngsi/pom.xml
+++ b/cygnus-ngsi/pom.xml
@@ -37,14 +37,21 @@
- log4j
- log4j
- 1.2.17
+ org.apache.logging.log4j
+ log4j-api
+ 2.17.2
+ pom
- org.slf4j
- slf4j-simple
- 1.7.21
+ org.apache.logging.log4j
+ log4j-core
+ 2.17.2
+ pom
+
+
+ org.apache.logging.log4j
+ log4j-slf4j-impl
+ 2.17.2
diff --git a/cygnus-ngsi/src/main/java/com/telefonica/iot/cygnus/handlers/NGSIRestHandler.java b/cygnus-ngsi/src/main/java/com/telefonica/iot/cygnus/handlers/NGSIRestHandler.java
index b07e20a50..defd98c49 100644
--- a/cygnus-ngsi/src/main/java/com/telefonica/iot/cygnus/handlers/NGSIRestHandler.java
+++ b/cygnus-ngsi/src/main/java/com/telefonica/iot/cygnus/handlers/NGSIRestHandler.java
@@ -43,7 +43,8 @@
import org.apache.flume.source.http.HTTPSourceHandler;
import org.apache.http.MethodNotSupportedException;
import com.telefonica.iot.cygnus.utils.NGSIConstants;
-import org.slf4j.MDC;
+import org.apache.logging.log4j.ThreadContext;
+import java.util.UUID;
/**
*
@@ -165,11 +166,13 @@ public void configure(Context context) {
public List getEvents(javax.servlet.http.HttpServletRequest request) throws Exception {
// Set some MDC logging fields to 'N/A' for this thread
// Value for the component field is inherited from main thread (CygnusApplication.java)
- org.apache.log4j.MDC.put(CommonConstants.LOG4J_CORR, CommonConstants.NA);
- org.apache.log4j.MDC.put(CommonConstants.LOG4J_TRANS, CommonConstants.NA);
- org.apache.log4j.MDC.put(CommonConstants.LOG4J_SVC, CommonConstants.NA);
- org.apache.log4j.MDC.put(CommonConstants.LOG4J_SUBSVC, CommonConstants.NA);
-
+ ThreadContext.put("id", UUID.randomUUID().toString());
+ ThreadContext.put(CommonConstants.LOG4J_CORR, CommonConstants.NA);
+ ThreadContext.put(CommonConstants.LOG4J_TRANS, CommonConstants.NA);
+ ThreadContext.put(CommonConstants.LOG4J_SVC, CommonConstants.NA);
+ ThreadContext.put(CommonConstants.LOG4J_SUBSVC, CommonConstants.NA);
+ ThreadContext.put(CommonConstants.LOG4J_COMP, CommonConstants.DEF_AGENT_NAME);
+
// Result
ArrayList ngsiEvents = new ArrayList<>();
@@ -253,8 +256,8 @@ public List getEvents(javax.servlet.http.HttpServletRequest request) thro
} // while
// Get a service and servicePath and store it in the log4j Mapped Diagnostic Context (MDC)
- MDC.put(CommonConstants.LOG4J_SVC, service == null ? defaultService : service);
- MDC.put(CommonConstants.LOG4J_SUBSVC, servicePath == null ? defaultServicePath : servicePath);
+ ThreadContext.put(CommonConstants.LOG4J_SVC, service == null ? defaultService : service);
+ ThreadContext.put(CommonConstants.LOG4J_SUBSVC, servicePath == null ? defaultServicePath : servicePath);
// If the configuration is invalid, nothing has to be done but to return null
if (invalidConfiguration) {
@@ -301,8 +304,8 @@ public List getEvents(javax.servlet.http.HttpServletRequest request) thro
// Store both of them in the log4j Mapped Diagnostic Context (MDC), this way it will be accessible
// by the whole source code.
- MDC.put(CommonConstants.LOG4J_CORR, corrId);
- MDC.put(CommonConstants.LOG4J_TRANS, transId);
+ ThreadContext.put(CommonConstants.LOG4J_CORR, corrId);
+ ThreadContext.put(CommonConstants.LOG4J_TRANS, transId);
LOGGER.debug("[NGSIRestHandler] Starting internal transaction (" + transId + ")");
// Get the data content
diff --git a/cygnus-ngsi/src/main/java/com/telefonica/iot/cygnus/interceptors/NGSINameMappingsInterceptor.java b/cygnus-ngsi/src/main/java/com/telefonica/iot/cygnus/interceptors/NGSINameMappingsInterceptor.java
index 945e7e761..2d1366864 100644
--- a/cygnus-ngsi/src/main/java/com/telefonica/iot/cygnus/interceptors/NGSINameMappingsInterceptor.java
+++ b/cygnus-ngsi/src/main/java/com/telefonica/iot/cygnus/interceptors/NGSINameMappingsInterceptor.java
@@ -40,6 +40,9 @@
import org.apache.flume.Event;
import org.apache.flume.interceptor.Interceptor;
+import org.apache.logging.log4j.ThreadContext;
+import java.util.UUID;
+
/**
*
* @author frb
@@ -196,6 +199,12 @@ private class PeriodicalNameMappingsReader extends Thread {
@Override
public void run() {
+ ThreadContext.put("id", UUID.randomUUID().toString());
+ ThreadContext.put(CommonConstants.LOG4J_CORR, CommonConstants.NA);
+ ThreadContext.put(CommonConstants.LOG4J_TRANS, CommonConstants.NA);
+ ThreadContext.put(CommonConstants.LOG4J_SVC, CommonConstants.NA);
+ ThreadContext.put(CommonConstants.LOG4J_SUBSVC, CommonConstants.NA);
+ ThreadContext.put(CommonConstants.LOG4J_COMP, CommonConstants.DEF_AGENT_NAME);
while (!stop) {
// Check if the configuration has changed
File nameMappingsFile = new File(nameMappingsConfFile);
diff --git a/cygnus-ngsi/src/main/java/com/telefonica/iot/cygnus/sinks/NGSISink.java b/cygnus-ngsi/src/main/java/com/telefonica/iot/cygnus/sinks/NGSISink.java
index 9e0f8f5db..6cfedf8af 100644
--- a/cygnus-ngsi/src/main/java/com/telefonica/iot/cygnus/sinks/NGSISink.java
+++ b/cygnus-ngsi/src/main/java/com/telefonica/iot/cygnus/sinks/NGSISink.java
@@ -56,7 +56,7 @@
import org.apache.flume.Transaction;
import org.apache.flume.ChannelException;
import org.apache.flume.conf.Configurable;
-import org.apache.log4j.MDC;
+import org.apache.logging.log4j.ThreadContext;
/**
*
@@ -339,6 +339,7 @@ public void configure(Context context) {
@Override
public void start() {
super.start();
+ ThreadContext.put(CommonConstants.LOG4J_COMP, CommonConstants.DEF_AGENT_NAME);
if (invalidConfiguration) {
LOGGER.info("[" + this.getName() + "] Startup completed. Nevertheless, there are errors "
@@ -555,13 +556,13 @@ private Status processNewBatches() {
} // if else
// Set the correlation ID, transaction ID, service and service path in MDC
- MDC.put(CommonConstants.LOG4J_CORR,
+ ThreadContext.put(CommonConstants.LOG4J_CORR,
ngsiEvent.getHeaders().get(CommonConstants.HEADER_CORRELATOR_ID));
- MDC.put(CommonConstants.LOG4J_TRANS,
+ ThreadContext.put(CommonConstants.LOG4J_TRANS,
ngsiEvent.getHeaders().get(NGSIConstants.FLUME_HEADER_TRANSACTION_ID));
// One batch is able to handle/process several events from different srv/subsrvs (#1983)
- MDC.put(CommonConstants.LOG4J_SVC, CommonConstants.NA);
- MDC.put(CommonConstants.LOG4J_SUBSVC, CommonConstants.NA);
+ ThreadContext.put(CommonConstants.LOG4J_SVC, CommonConstants.NA);
+ ThreadContext.put(CommonConstants.LOG4J_SUBSVC, CommonConstants.NA);
// Accumulate the event
accumulator.accumulate(ngsiEvent);
@@ -671,10 +672,11 @@ private Status processNewBatches() {
* thread (CygnusApplication.java).
*/
private void setMDCToNA() {
- MDC.put(CommonConstants.LOG4J_CORR, CommonConstants.NA);
- MDC.put(CommonConstants.LOG4J_TRANS, CommonConstants.NA);
- MDC.put(CommonConstants.LOG4J_SVC, CommonConstants.NA);
- MDC.put(CommonConstants.LOG4J_SUBSVC, CommonConstants.NA);
+ ThreadContext.put(CommonConstants.LOG4J_CORR, CommonConstants.NA);
+ ThreadContext.put(CommonConstants.LOG4J_TRANS, CommonConstants.NA);
+ ThreadContext.put(CommonConstants.LOG4J_SVC, CommonConstants.NA);
+ ThreadContext.put(CommonConstants.LOG4J_SUBSVC, CommonConstants.NA);
+ ThreadContext.put(CommonConstants.LOG4J_COMP, CommonConstants.DEF_AGENT_NAME);
} // setMDCToNA
/**
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/handlers/NGSIRestHandlerTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/handlers/NGSIRestHandlerTest.java
index c6b7c0c08..d7992f9d9 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/handlers/NGSIRestHandlerTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/handlers/NGSIRestHandlerTest.java
@@ -31,8 +31,11 @@
import javax.servlet.http.HttpServletRequest;
import org.apache.flume.Context;
import org.apache.flume.Event;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import static org.junit.Assert.*; // this is required by "fail" like assertions
import org.junit.Before;
import org.junit.runner.RunWith;
@@ -222,7 +225,11 @@ public class NGSIRestHandlerTest {
* Constructor.
*/
public NGSIRestHandlerTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // NGSIRestHandlerTest
/**
@@ -952,4 +959,4 @@ private Context createContext(String notificationTarget, String defaultService,
return context;
} // createContext
-} // NGSIRestHandlerTest
\ No newline at end of file
+} // NGSIRestHandlerTest
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/interceptors/NGSIEventTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/interceptors/NGSIEventTest.java
index 05426221d..4d512e182 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/interceptors/NGSIEventTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/interceptors/NGSIEventTest.java
@@ -23,8 +23,11 @@
import com.telefonica.iot.cygnus.utils.NGSIConstants;
import com.telefonica.iot.cygnus.utils.NGSIUtilsForTests;
import java.util.HashMap;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import org.junit.Assert;
import static org.junit.Assert.assertEquals;
import org.junit.Test;
@@ -90,7 +93,11 @@ public class NGSIEventTest {
* Constructor.
*/
public NGSIEventTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // NGSIEventTest
/**
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/interceptors/NGSINameMappingsInterceptorTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/interceptors/NGSINameMappingsInterceptorTest.java
index c73b53183..725ef60d3 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/interceptors/NGSINameMappingsInterceptorTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/interceptors/NGSINameMappingsInterceptorTest.java
@@ -26,8 +26,11 @@
import java.util.Map;
import org.apache.commons.lang3.tuple.ImmutableTriple;
import org.apache.flume.Context;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
@@ -203,7 +206,11 @@ public class NGSINameMappingsInterceptorTest {
* Constructor.
*/
public NGSINameMappingsInterceptorTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // NGSINameMappingsInterceptorTest
/**
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIBatchTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIBatchTest.java
index bd79cba4b..9dd7fa214 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIBatchTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIBatchTest.java
@@ -20,8 +20,11 @@
import com.telefonica.iot.cygnus.interceptors.NGSIEvent;
import static com.telefonica.iot.cygnus.utils.CommonUtilsForTests.getTestTraceHead;
import com.telefonica.iot.cygnus.utils.NGSIUtilsForTests;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
@@ -36,7 +39,11 @@ public class NGSIBatchTest {
* Constructor.
*/
public NGSIBatchTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // NGSICKANSinkTest
/**
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSICKANSinkTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSICKANSinkTest.java
index b53392963..fa22a7234 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSICKANSinkTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSICKANSinkTest.java
@@ -40,8 +40,11 @@
import org.junit.runner.RunWith;
import org.mockito.runners.MockitoJUnitRunner;
import org.apache.flume.Context;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import org.junit.Test;
import java.util.ArrayList;
@@ -59,7 +62,11 @@ public class NGSICKANSinkTest {
* Constructor.
*/
public NGSICKANSinkTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // NGSICKANSinkTest
/**
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSICartoDBSinkTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSICartoDBSinkTest.java
index 1cd63ea57..9d7cb85e9 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSICartoDBSinkTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSICartoDBSinkTest.java
@@ -36,8 +36,11 @@
import java.util.Map;
import org.apache.flume.Context;
import org.apache.flume.channel.MemoryChannel;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import org.junit.Rule;
@@ -57,7 +60,11 @@ public class NGSICartoDBSinkTest {
* Constructor.
*/
public NGSICartoDBSinkTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // NGSICartoDBSinkTest
/**
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIElasticsearchSinkTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIElasticsearchSinkTest.java
index 5fb067aeb..281c462d1 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIElasticsearchSinkTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIElasticsearchSinkTest.java
@@ -43,8 +43,11 @@
import javax.xml.bind.DatatypeConverter;
import org.apache.flume.Context;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
@@ -87,7 +90,11 @@ public static class ConfigureTest {
*/
@BeforeClass
public static void setUpClass() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // setUpClass
@Parameters
@@ -367,7 +374,11 @@ public static class StartAndStopInternalTest {
*/
@BeforeClass
public static void setUpClass() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // setUpClass
@Mock
@@ -545,7 +556,11 @@ public static class PersistBatchTest {
*/
@BeforeClass
public static void setUpClass() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // setUpClass
@Mock
@@ -1719,7 +1734,11 @@ public static class IndexNameTest {
*/
@BeforeClass
public static void setUpClass() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // setUpClass
@Parameters
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIHDFSSinkTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIHDFSSinkTest.java
index c2ed6b8af..5ed95595a 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIHDFSSinkTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIHDFSSinkTest.java
@@ -37,8 +37,11 @@
import com.telefonica.iot.cygnus.utils.NGSIConstants;
import com.telefonica.iot.cygnus.utils.NGSIUtils;
import org.apache.flume.Context;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import org.junit.Assert;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
@@ -58,7 +61,11 @@ public class NGSIHDFSSinkTest {
* Constructor.
*/
public NGSIHDFSSinkTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // NGSIHDFSSinkTest
/**
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIKafkaSinkTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIKafkaSinkTest.java
index b7cdc7eab..1d09eaf73 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIKafkaSinkTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIKafkaSinkTest.java
@@ -19,8 +19,11 @@
import static com.telefonica.iot.cygnus.utils.CommonUtilsForTests.getTestTraceHead;
import org.apache.flume.Context;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import static org.junit.Assert.assertEquals;
import org.junit.Test;
@@ -43,7 +46,11 @@ public class NGSIKafkaSinkTest {
* Constructor.
*/
public NGSIKafkaSinkTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // NGSIKafkaSinkTest
/**
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIMongoBaseSinkTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIMongoBaseSinkTest.java
index 1deb43299..3fcc57616 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIMongoBaseSinkTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIMongoBaseSinkTest.java
@@ -24,8 +24,11 @@
import com.telefonica.iot.cygnus.utils.NGSICharsets;
import com.telefonica.iot.cygnus.utils.NGSIUtils;
import com.telefonica.iot.cygnus.utils.NGSIUtilsForTests;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
@@ -62,7 +65,11 @@ public void expirateRecords(long expirationTime) throws CygnusExpiratingError {
* Constructor.
*/
public NGSIMongoBaseSinkTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // NGSIMongoBaseSinkTest
/**
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIMongoSinkTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIMongoSinkTest.java
index 448b28fdb..b2a42b3f7 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIMongoSinkTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIMongoSinkTest.java
@@ -36,8 +36,11 @@
import com.telefonica.iot.cygnus.utils.NGSIConstants;
import com.telefonica.iot.cygnus.utils.NGSIUtils;
import org.apache.flume.Context;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import org.bson.Document;
import org.junit.Assert;
import org.junit.Test;
@@ -61,7 +64,11 @@ public class NGSIMongoSinkTest {
public static final String QUOTATION_MARK_CHAR = "";
public NGSIMongoSinkTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
}
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIMySQLSinkTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIMySQLSinkTest.java
index f4e8523e3..8a1086659 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIMySQLSinkTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIMySQLSinkTest.java
@@ -33,8 +33,11 @@
import com.telefonica.iot.cygnus.aggregation.NGSIGenericAggregator;
import com.telefonica.iot.cygnus.utils.NGSIUtils;
import org.apache.flume.Context;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNull;
@@ -55,7 +58,11 @@ public class NGSIMySQLSinkTest {
* Constructor.
*/
public NGSIMySQLSinkTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // NGSIMySQLSinkTest
/**
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIOrionBaseSinkTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIOrionBaseSinkTest.java
index a17e87c6a..ad7f32fd1 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIOrionBaseSinkTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIOrionBaseSinkTest.java
@@ -21,8 +21,11 @@
import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.when;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import org.json.JSONObject;
import org.junit.Before;
import org.junit.Test;
@@ -56,7 +59,11 @@ public class NGSIOrionBaseSinkTest {
* Constructor.
*/
public NGSIOrionBaseSinkTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // NGSIOrionBaseSinkTest
/**
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIPostgisSinkTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIPostgisSinkTest.java
index 2472f458a..13253616b 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIPostgisSinkTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIPostgisSinkTest.java
@@ -39,8 +39,11 @@
import java.util.Map;
import org.apache.flume.Context;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.runners.MockitoJUnitRunner;
@@ -56,7 +59,11 @@ public class NGSIPostgisSinkTest {
* Constructor.
*/
public NGSIPostgisSinkTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // NGSIPostgisSinkTest
/**
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIPostgreSQLSinkTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIPostgreSQLSinkTest.java
index c55dc599f..9707802ad 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIPostgreSQLSinkTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSIPostgreSQLSinkTest.java
@@ -31,8 +31,11 @@
import com.telefonica.iot.cygnus.utils.NGSIConstants;
import com.telefonica.iot.cygnus.utils.NGSIUtils;
import org.apache.flume.Context;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.runners.MockitoJUnitRunner;
@@ -52,7 +55,11 @@ public class NGSIPostgreSQLSinkTest {
* Constructor.
*/
public NGSIPostgreSQLSinkTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // NGSIPostgreSQLSinkTest
/**
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSISTHSinkTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSISTHSinkTest.java
index b6d07389e..e0879a25f 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSISTHSinkTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSISTHSinkTest.java
@@ -21,8 +21,11 @@
import com.telefonica.iot.cygnus.utils.NGSIUtilsForTests;
import java.util.Arrays;
import org.apache.flume.Context;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
@@ -36,7 +39,11 @@ public class NGSISTHSinkTest {
* Constructor.
*/
public NGSISTHSinkTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // NGSISTHSinkTest
/**
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSISinkTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSISinkTest.java
index a2b563dbe..276eb6214 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSISinkTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/sinks/NGSISinkTest.java
@@ -35,8 +35,11 @@
import org.apache.flume.Context;
import org.apache.flume.channel.MemoryChannel;
import org.apache.flume.lifecycle.LifecycleState;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
@@ -110,7 +113,11 @@ public void expirateRecords(long time) throws CygnusExpiratingError {
* Constructor.
*/
public NGSISinkTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
+ ctx.updateLoggers();
} // NGSISinkTest
/**
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/utils/NGSICharsetsTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/utils/NGSICharsetsTest.java
index cadbbc078..cd92b2fa3 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/utils/NGSICharsetsTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/utils/NGSICharsetsTest.java
@@ -18,8 +18,11 @@
package com.telefonica.iot.cygnus.utils;
import static com.telefonica.iot.cygnus.utils.CommonUtilsForTests.getTestTraceHead;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import static org.junit.Assert.assertEquals;
import org.junit.Test;
@@ -33,7 +36,10 @@ public class NGSICharsetsTest {
* Constructor.
*/
public NGSICharsetsTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
} // NGSICharsetsTest
// ---------- PostgreSQL ---------
diff --git a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/utils/NGSIUtilsTest.java b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/utils/NGSIUtilsTest.java
index 7da92251d..d7777a375 100644
--- a/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/utils/NGSIUtilsTest.java
+++ b/cygnus-ngsi/src/test/java/com/telefonica/iot/cygnus/utils/NGSIUtilsTest.java
@@ -24,8 +24,11 @@
import java.util.LinkedHashMap;
import org.apache.commons.lang3.tuple.ImmutablePair;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.LoggerConfig;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.junit.Test;
@@ -42,7 +45,10 @@ public class NGSIUtilsTest {
* Constructor.
*/
public NGSIUtilsTest() {
- LogManager.getRootLogger().setLevel(Level.FATAL);
+ LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
+ Configuration config = ctx.getConfiguration();
+ LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME);
+ loggerConfig.setLevel(Level.FATAL);
} // NGSIUtilsTest
/**
diff --git a/cygnus-twitter/pom.xml b/cygnus-twitter/pom.xml
index 20bad411d..31b96fd95 100644
--- a/cygnus-twitter/pom.xml
+++ b/cygnus-twitter/pom.xml
@@ -15,6 +15,13 @@
UTF-8
+
+
+ mvnrepository
+ https://repo1.maven.org/maven2
+
+
+
@@ -33,13 +40,18 @@
org.apache.flume
flume-ng-node
- 1.9.0
+ 1.11.0
- log4j
- log4j
- 1.2.17
+ org.apache.logging.log4j
+ log4j-api
+ 2.17.2
+
+
+ org.apache.logging.log4j
+ log4j-core
+ 2.17.2
diff --git a/docker/cygnus-common/Dockerfile b/docker/cygnus-common/Dockerfile
index 5893856b6..adc8f16d3 100644
--- a/docker/cygnus-common/Dockerfile
+++ b/docker/cygnus-common/Dockerfile
@@ -47,7 +47,7 @@ ENV MVN_TGZ "apache-maven-${MVN_VER}-bin.tar.gz"
ENV MVN_URL "http://www.eu.apache.org/dist/maven/maven-3/${MVN_VER}/binaries/${MVN_TGZ}"
ENV MVN_HOME "/opt/apache-maven"
-ENV FLUME_VER "1.9.0"
+ENV FLUME_VER "1.11.0"
ENV FLUME_TGZ "apache-flume-${FLUME_VER}-bin.tar.gz"
ENV FLUME_URL "http://archive.apache.org/dist/flume/${FLUME_VER}/${FLUME_TGZ}"
ENV FLUME_HOME "/opt/apache-flume"
@@ -91,7 +91,7 @@ RUN \
cp ${CYGNUS_HOME}/cygnus-common/target/classes/cygnus-flume-ng ${FLUME_HOME}/bin/ && \
chmod +x ${FLUME_HOME}/bin/cygnus-flume-ng && \
# Instantiate some configuration files
- cp ${CYGNUS_HOME}/cygnus-common/conf/log4j.properties.template ${FLUME_HOME}/conf/log4j.properties && \
+ cp ${CYGNUS_HOME}/cygnus-common/conf/log4j2.properties.template ${FLUME_HOME}/conf/log4j2.properties && \
# Create Cygnus log folder
mkdir /var/log/cygnus && \
# Cleanup to thin the final image
diff --git a/docker/cygnus-ngsi-ld/Dockerfile b/docker/cygnus-ngsi-ld/Dockerfile
index 286ea0fb9..2eb150077 100644
--- a/docker/cygnus-ngsi-ld/Dockerfile
+++ b/docker/cygnus-ngsi-ld/Dockerfile
@@ -267,7 +267,7 @@ ENV CYGNUS_ARCGIS_BATCH_TTL ""
ENV MVN_VER "3.5.4"
ENV MVN_HOME "/opt/apache-maven"
-ENV FLUME_VER "1.9.0"
+ENV FLUME_VER "1.11.0"
ENV FLUME_HOME "/opt/apache-flume"
ENV JAVA_VERSION "1.8.0"
@@ -324,7 +324,7 @@ RUN \
cp ${CYGNUS_HOME}/cygnus-common/target/classes/cygnus-flume-ng ${FLUME_HOME}/bin/ && \
chmod +x ${FLUME_HOME}/bin/cygnus-flume-ng && \
echo "INFO: Instantiate some configuration files" && \
- cp ${CYGNUS_HOME}/cygnus-common/conf/log4j.properties.template ${FLUME_HOME}/conf/log4j.properties && \
+ cp ${CYGNUS_HOME}/cygnus-common/conf/log4j2.properties.template ${FLUME_HOME}/conf/log4j2.properties && \
echo "INFO: Create Cygnus log folder" && \
mkdir -p /var/log/cygnus && \
chmod 777 /var/log/cygnus && \
diff --git a/docker/cygnus-ngsi/Dockerfile b/docker/cygnus-ngsi/Dockerfile
index d3fdc3fd4..0b2e16789 100644
--- a/docker/cygnus-ngsi/Dockerfile
+++ b/docker/cygnus-ngsi/Dockerfile
@@ -28,7 +28,7 @@ ENV CYGNUS_CONF_PATH "/opt/apache-flume/conf"
ENV CYGNUS_CONF_FILE "/opt/apache-flume/conf/agent.conf"
ENV CYGNUS_AGENT_NAME "cygnus-ngsi"
ENV CYGNUS_LOG_LEVEL "INFO"
-ENV CYGNUS_LOG_APPENDER "console"
+ENV CYGNUS_LOG_APPENDER "LOGFILE"
ENV CYGNUS_SERVICE_PORT "5050"
ENV CYGNUS_JAVA_OPTS "-Xms2048m -Xmx4096m"
ENV CYGNUS_API_PORT "5080"
@@ -254,8 +254,10 @@ ENV CYGNUS_ARCGIS_BATCH_TTL ""
ENV MVN_VER "3.5.4"
ENV MVN_HOME "/opt/apache-maven"
-ENV FLUME_VER "1.9.0"
+ENV FLUME_VER "1.11.0"
ENV FLUME_HOME "/opt/apache-flume"
+ENV FLUME_TGZ "apache-flume-${FLUME_VER}-bin.tar.gz"
+ENV FLUME_URL "https://archive.apache.org/dist/flume/${FLUME_VER}/${FLUME_TGZ}"
ENV JAVA_VERSION "1.8.0"
@@ -284,10 +286,6 @@ RUN \
APACHE_DOMAIN="$(curl -s 'https://www.apache.org/dyn/closer.cgi?as_json=1' | python2 -c 'import json,sys;obj=json.load(sys.stdin);print obj["preferred"]')" \
|| APACHE_DOMAIN="http://archive.apache.org/dist/" && \
MVN_URL="${APACHE_DOMAIN}maven/maven-3/${MVN_VER}/binaries/apache-maven-${MVN_VER}-bin.tar.gz" && \
- # FIXME #2179: Flume version has steped to 1.10.0 so 1.9.0 is no longer available in the usual place.
- # Temporal fix is to download it from archive.apache.org. Once we move to 1.10.0, reenable the following line
- # FLUME_URL="${APACHE_DOMAIN}flume/${FLUME_VER}/apache-flume-${FLUME_VER}-bin.tar.gz" && \
- FLUME_URL="https://archive.apache.org/dist/flume/stable/apache-flume-1.9.0-bin.tar.gz" && \
echo -e $'INFO: Java version <'${JAVA_VERSION}'>\n'$(java -version)'\nINFO: Apache domain <'${APACHE_DOMAIN}'>\nINFO: URL MAVEN <'${MVN_URL}'>\nINFO: URL FLUME <'${FLUME_URL}'>' && \
echo "INFO: Download and install Maven and Flume..." && \
curl --remote-name --location --insecure --silent --show-error "${MVN_URL}" && \
@@ -314,7 +312,7 @@ RUN \
cp ${CYGNUS_HOME}/cygnus-common/target/classes/cygnus-flume-ng ${FLUME_HOME}/bin/ && \
chmod +x ${FLUME_HOME}/bin/cygnus-flume-ng && \
echo "INFO: Instantiate some configuration files" && \
- cp ${CYGNUS_HOME}/cygnus-common/conf/log4j.properties.template ${FLUME_HOME}/conf/log4j.properties && \
+ cp ${CYGNUS_HOME}/cygnus-common/conf/log4j2.properties.template ${FLUME_HOME}/conf/log4j2.properties && \
cp ${CYGNUS_HOME}/cygnus-ngsi/conf/name_mappings.conf.template ${FLUME_HOME}/conf/name_mappings.conf && \
echo "INFO: Create Cygnus log folder" && \
mkdir -p /var/log/cygnus && \
diff --git a/docker/cygnus-twitter/Dockerfile b/docker/cygnus-twitter/Dockerfile
index d4ecc69a2..798fd4e09 100644
--- a/docker/cygnus-twitter/Dockerfile
+++ b/docker/cygnus-twitter/Dockerfile
@@ -46,7 +46,7 @@ ENV MVN_TGZ "apache-maven-${MVN_VER}-bin.tar.gz"
ENV MVN_URL "http://www.eu.apache.org/dist/maven/maven-3/${MVN_VER}/binaries/${MVN_TGZ}"
ENV MVN_HOME "/opt/apache-maven"
-ENV FLUME_VER "1.9.0"
+ENV FLUME_VER "1.11.0"
ENV FLUME_TGZ "apache-flume-${FLUME_VER}-bin.tar.gz"
ENV FLUME_URL "http://archive.apache.org/dist/flume/${FLUME_VER}/${FLUME_TGZ}"
ENV FLUME_HOME "/opt/apache-flume"
@@ -94,7 +94,7 @@ RUN \
cp ${CYGNUS_HOME}/cygnus-common/target/classes/cygnus-flume-ng ${FLUME_HOME}/bin/ && \
chmod +x ${FLUME_HOME}/bin/cygnus-flume-ng && \
# Instantiate some configuration files
- cp ${CYGNUS_HOME}/cygnus-common/conf/log4j.properties.template ${FLUME_HOME}/conf/log4j.properties && \
+ cp ${CYGNUS_HOME}/cygnus-common/conf/log4j2.properties.template ${FLUME_HOME}/conf/log4j2.properties && \
# Create Cygnus log folder
mkdir /var/log/cygnus && \
# Cleanup to thin the final image