summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authordfarrelly <david.farrelly@est.tech>2019-07-24 16:17:13 +0000
committerdfarrelly <david.farrelly@est.tech>2019-07-24 16:17:13 +0000
commit924a805b71005f56fed260e1b92e4e27ef0a381f (patch)
treeebfa129f17b3b5d8cfb6091b9e18fa478d325aa1 /src
parent2c8ddf3501cfc5106d20b51ef077cc6d07ab65dc (diff)
Align PM Mapper to new build guidelines
*Switch to Fabric8 docker maven plugin *Add git commit plugin *Remove shaded jar *Remove some unused imports *Add a human readable log file Issue-ID: DCAEGEN2-1683 Change-Id: I1028f3195d3f03a9d919c91073398b01ccd6d7d1 Signed-off-by: dfarrelly <david.farrelly@est.tech>
Diffstat (limited to 'src')
-rw-r--r--src/main/java/org/onap/dcaegen2/services/pmmapper/App.java6
-rw-r--r--src/main/java/org/onap/dcaegen2/services/pmmapper/config/ConfigHandler.java3
-rw-r--r--src/main/java/org/onap/dcaegen2/services/pmmapper/healthcheck/HealthCheckHandler.java2
-rw-r--r--src/main/java/org/onap/dcaegen2/services/pmmapper/utils/DMaaPAdapter.java1
-rw-r--r--src/main/java/org/onap/dcaegen2/services/pmmapper/utils/RequestSender.java1
-rw-r--r--src/main/resources/Dockerfile39
-rw-r--r--src/main/resources/logback.xml111
7 files changed, 103 insertions, 60 deletions
diff --git a/src/main/java/org/onap/dcaegen2/services/pmmapper/App.java b/src/main/java/org/onap/dcaegen2/services/pmmapper/App.java
index a5eb68d..11a91f8 100644
--- a/src/main/java/org/onap/dcaegen2/services/pmmapper/App.java
+++ b/src/main/java/org/onap/dcaegen2/services/pmmapper/App.java
@@ -20,6 +20,7 @@
package org.onap.dcaegen2.services.pmmapper;
+import ch.qos.logback.classic.util.ContextInitializer;
import io.undertow.Handlers;
import io.undertow.Undertow;
import io.undertow.util.StatusCodes;
@@ -60,6 +61,11 @@ import java.util.ArrayList;
import java.util.List;
public class App {
+
+ static {
+ System.setProperty(ContextInitializer.CONFIG_FILE_PROPERTY, "/opt/app/pm-mapper/etc/logback.xml");
+ }
+
private static final ONAPLogAdapter logger = new ONAPLogAdapter(LoggerFactory.getLogger(App.class));
private static Path mappingTemplate = Paths.get("/opt/app/pm-mapper/etc/mapping.ftl");
private static Path xmlSchema = Paths.get("/opt/app/pm-mapper/etc/measCollec_plusString.xsd");
diff --git a/src/main/java/org/onap/dcaegen2/services/pmmapper/config/ConfigHandler.java b/src/main/java/org/onap/dcaegen2/services/pmmapper/config/ConfigHandler.java
index e98849e..fef1d19 100644
--- a/src/main/java/org/onap/dcaegen2/services/pmmapper/config/ConfigHandler.java
+++ b/src/main/java/org/onap/dcaegen2/services/pmmapper/config/ConfigHandler.java
@@ -77,7 +77,8 @@ public class ConfigHandler {
} catch (Exception exception) {
throw new CBSServerError("Error connecting to Configbinding Service: ", exception);
} finally {
- logger.unwrap().info("Received pm-mapper configuration from ConfigBinding Service:\n{}", mapperConfigJson);
+ logger.unwrap().info("Received pm-mapper configuration from ConfigBinding Service: \n");
+ logger.unwrap().debug(mapperConfigJson);
}
return convertMapperConfigToObject(mapperConfigJson);
diff --git a/src/main/java/org/onap/dcaegen2/services/pmmapper/healthcheck/HealthCheckHandler.java b/src/main/java/org/onap/dcaegen2/services/pmmapper/healthcheck/HealthCheckHandler.java
index 756ee7b..70a9596 100644
--- a/src/main/java/org/onap/dcaegen2/services/pmmapper/healthcheck/HealthCheckHandler.java
+++ b/src/main/java/org/onap/dcaegen2/services/pmmapper/healthcheck/HealthCheckHandler.java
@@ -39,7 +39,7 @@ public class HealthCheckHandler implements HttpHandler {
exchange.setStatusCode(StatusCodes.OK)
.getResponseSender()
.send(StatusCodes.OK_STRING);
-
+ logger.unwrap().info("Healthcheck request successful");
} finally {
logger.exiting();
}
diff --git a/src/main/java/org/onap/dcaegen2/services/pmmapper/utils/DMaaPAdapter.java b/src/main/java/org/onap/dcaegen2/services/pmmapper/utils/DMaaPAdapter.java
index fa01740..cc4413a 100644
--- a/src/main/java/org/onap/dcaegen2/services/pmmapper/utils/DMaaPAdapter.java
+++ b/src/main/java/org/onap/dcaegen2/services/pmmapper/utils/DMaaPAdapter.java
@@ -26,7 +26,6 @@ import com.google.gson.TypeAdapter;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import java.io.IOException;
-import java.util.Optional;
import org.onap.dcaegen2.services.pmmapper.model.PublisherConfig;
import org.onap.dcaegen2.services.pmmapper.model.SubscriberConfig;
diff --git a/src/main/java/org/onap/dcaegen2/services/pmmapper/utils/RequestSender.java b/src/main/java/org/onap/dcaegen2/services/pmmapper/utils/RequestSender.java
index ba57387..411196c 100644
--- a/src/main/java/org/onap/dcaegen2/services/pmmapper/utils/RequestSender.java
+++ b/src/main/java/org/onap/dcaegen2/services/pmmapper/utils/RequestSender.java
@@ -27,7 +27,6 @@ import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;
-import java.util.Base64;
import java.util.Optional;
import java.util.UUID;
import java.util.stream.Collectors;
diff --git a/src/main/resources/Dockerfile b/src/main/resources/Dockerfile
index 95fdfad..bf59524 100644
--- a/src/main/resources/Dockerfile
+++ b/src/main/resources/Dockerfile
@@ -19,21 +19,40 @@
#
FROM openjdk:8u171-jre-alpine
-ENTRYPOINT ["/bin/sh", "-c", "nohup sh etc/reconfigure.sh & /usr/bin/java -jar /opt/app/pm-mapper/pm-mapper.jar"]
-ARG JAR
WORKDIR /opt/app/pm-mapper
RUN apk --no-cache add curl
RUN mkdir -p /var/log/ONAP
-RUN addgroup -S onap \
- && adduser -S pm-mapper -G onap \
- && chown -R pm-mapper:onap /opt/app/pm-mapper \
- && chmod a+rwx /var/log/ONAP
-ADD target/${JAR} /opt/app/pm-mapper/pm-mapper.jar
-ADD target/classes/mapping.ftl /opt/app/pm-mapper/etc/mapping.ftl
-ADD target/classes/measCollec_plusString.xsd /opt/app/pm-mapper/etc/measCollec_plusString.xsd
-ADD target/classes/reconfigure.sh /opt/app/pm-mapper/etc/reconfigure.sh
+RUN adduser pm-mapper; \
+ chmod a+rwx /var/log/ONAP; \
+ chown -R pm-mapper /opt/app/pm-mapper
USER pm-mapper
+
+COPY ${project.build.directory}/${ext.dep.dir.path}/ ${ext.dep.dir.path}/
+COPY ${project.build.directory}/${JAR} .
+
+COPY ${project.build.directory}/classes/mapping.ftl ./etc/mapping.ftl
+COPY ${project.build.directory}/classes/measCollec_plusString.xsd ./etc/measCollec_plusString.xsd
+COPY ${project.build.directory}/classes/reconfigure.sh ./etc/reconfigure.sh
+COPY --chown=pm-mapper ${project.build.directory}/classes/logback.xml ./etc/logback.xml
+
+
+LABEL git.branch="${git.branch}" \
+ git.build.host="${git.build.host}" \
+ git.build.time="${git.build.time}" \
+ git.build.user.email="${git.build.user.email}" \
+ git.build.user.name="${git.build.user.name}" \
+ git.build.version="${git.build.version}" \
+ git.closest.tag.name="${git.closest.tag.name}" \
+ git.commit.id="${git.commit.id}" \
+ git.commit.message.short="${git.commit.message.short}" \
+ git.commit.time="${git.commit.time}" \
+ git.commit.user.email="${git.commit.user.email}" \
+ git.commit.user.name="${git.commit.user.name}"
+
+
+ENTRYPOINT ["/bin/sh", "-c", "nohup sh etc/reconfigure.sh & /usr/bin/java -jar ${project.artifactId}-${project.version}.jar"]
+ARG JAR
diff --git a/src/main/resources/logback.xml b/src/main/resources/logback.xml
index 0701442..94d2151 100644
--- a/src/main/resources/logback.xml
+++ b/src/main/resources/logback.xml
@@ -1,46 +1,65 @@
-<configuration>
- <property name="outputFilename" value="pm-mapper_output"/>
- <property name="logPath" value="/var/log/ONAP/dcaegen2/services/pm-mapper"/>
- <property name="archivePath" value="${logPath}/archive"/>
- <property name="maxFileSize" value="50MB"/>
- <property name="maxHistory" value="30"/>
- <property name="totalSizeCap" value="10GB"/>
- <property name="p_tim" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}"/>
- <property name="p_lvl" value="%level"/>
- <property name="p_log" value="%logger"/>
- <property name="p_mdc" value="%replace(%replace(%mdc){'\t','\\\\t'}){'\n', '\\\\n'}"/>
- <property name="p_msg" value="%replace(%replace(%msg){'\t', '\\\\t'}){'\n','\\\\n'}"/>
- <property name="p_exc" value="%replace(%replace(%rootException){'\t', '\\\\t'}){'\n','\\\\n'}"/>
- <property name="p_mak" value="%replace(%replace(%marker){'\t', '\\\\t'}){'\n','\\\\n'}"/>
- <property name="p_thr" value="%thread"/>
- <property name="pattern" value="%nopexception${p_tim}\t${p_thr}\t${p_lvl}\t${p_log}\t${p_mdc}\t${p_msg}\t${p_exc}\t${p_mak}\t%n"/>
-
- <variable name="logLevel" value="${LOG_LEVEL:-DEBUG}"/>
-
- <logger name="org.mockserver" level="${mockserver.logLevel:-OFF}"/>
-
- <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="ROLLING-FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logPath}/${outputFilename}.log</file>
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
- <FileNamePattern>${archivePath}/${outputFilename}.%d{yyyy-MM-dd}.%i.log.zip</FileNamePattern>
- <MaxFileSize>${maxFileSize}</MaxFileSize>
- <MaxHistory>${maxHistory}</MaxHistory>
- <TotalSizeCap>${totalSizeCap}</TotalSizeCap>
- </rollingPolicy>
- </appender>
-
- <root level="${logLevel}" additivity="false">
- <appender-ref ref="CONSOLE" />
- <appender-ref ref="ROLLING-FILE" />
- </root>
-
-</configuration> \ No newline at end of file
+<configuration scan="true" scanPeriod="30 seconds" debug="true">
+ <property name="outputFilename" value="pm-mapper_output"/>
+ <property name="outputFilenameReadable" value="pm-mapper_output_readable"/>
+ <property name="logPath" value="/var/log/ONAP/dcaegen2/services/pm-mapper"/>
+ <property name="archivePath" value="${logPath}/archive"/>
+ <property name="maxFileSize" value="50MB"/>
+ <property name="maxHistory" value="30"/>
+ <property name="totalSizeCap" value="10GB"/>
+ <property name="p_tim" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}"/>
+ <property name="p_lvl" value="%level"/>
+ <property name="p_log" value="%logger"/>
+ <property name="p_mdc" value="%replace(%replace(%mdc){'\t','\\\\t'}){'\n', '\\\\n'}"/>
+ <property name="p_msg" value="%replace(%replace(%msg){'\t', '\\\\t'}){'\n','\\\\n'}"/>
+ <property name="p_exc" value="%replace(%replace(%rootException){'\t', '\\\\t'}){'\n','\\\\n'}"/>
+ <property name="p_mak" value="%replace(%replace(%marker){'\t', '\\\\t'}){'\n','\\\\n'}"/>
+ <property name="p_thr" value="%thread"/>
+ <property name="pattern" value="%nopexception${p_tim}\t${p_thr}\t${p_lvl}\t${p_log}\t${p_mdc}\t${p_msg}\t${p_exc}\t${p_mak}\t%n"/>
+ <property name="patternReadable" value="%nopexception${p_tim} | ${p_lvl} | ${p_msg}%n"/>
+
+
+ <variable name="logLevel" value="${LOG_LEVEL:-INFO}"/>
+
+ <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="ROLLING-FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logPath}/${outputFilename}.log</file>
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+ <FileNamePattern>${logPath}/${outputFilename}.%d{yyyy-MM-dd}.%i.log.zip</FileNamePattern>
+ <MaxFileSize>${maxFileSize}</MaxFileSize>
+ <MaxHistory>${maxHistory}</MaxHistory>
+ <TotalSizeCap>${totalSizeCap}</TotalSizeCap>
+ </rollingPolicy>
+ </appender>
+
+ <appender name="READABLE-FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logPath}/${outputFilenameReadable}.log</file>
+ <encoder>
+ <pattern>${patternReadable}</pattern>
+ </encoder>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logPath}/${outputFilenameReadable}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>1</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </triggeringPolicy>
+ </appender>
+
+ <root level="${logLevel}" additivity="false">
+ <appender-ref ref="CONSOLE" />
+ <appender-ref ref="ROLLING-FILE" />
+ <appender-ref ref="READABLE-FILE" />
+ </root>
+
+</configuration>