diff --git a/Dockerfile b/Dockerfile index 5f69d93e0..c30f9d4f0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,6 +6,8 @@ ARG targetBranch=development ARG originBranch=development ARG defaultBranch=development +VOLUME /tmp/error + #SET TAG/BRANCH to use: ARG geppettoRelease=vfb_20200604_a ARG geppettoModelRelease=vfb_20200604_a diff --git a/dockerFiles/startup.sh b/dockerFiles/startup.sh index 0f5add9fc..f1530f2af 100755 --- a/dockerFiles/startup.sh +++ b/dockerFiles/startup.sh @@ -36,7 +36,7 @@ then # Frontend final build cd $HOME/workspace/org.geppetto.frontend /bin/echo -e "\e[96mMaven install org.geppetto.frontend\e[0m" - mvn ${mvnOpt} -DcontextPath=org.geppetto.frontend -DuseSsl=false install + mvn ${mvnOpt} -DcontextPath=org.geppetto.frontend -DuseSsl=false install rm -rf src fi @@ -51,10 +51,11 @@ then echo "Client SOLR Server: $SOLR_SERVER" echo "Google Analytics code: ${googleAnalyticsSiteCode}" echo "useSSL:${USESSL}" - + # Start a logfile mkdir -p $SERVER_HOME/serviceability/logs - echo 'Start of log...' > $SERVER_HOME/serviceability/logs/log.log + export log="$SERVER_HOME/serviceability/logs/log.log" + echo 'Start of log...' > $log # Deploy Geppetto rm $SERVER_HOME/./repository/usr/* || true @@ -69,7 +70,12 @@ then sed 's@ErrorFile="$KERNEL_HOME/serviceability/error.log"@ErrorFile="$SERVER_HOME/serviceability/logs/log.log"@g' -i $SERVER_HOME/bin/dmk.sh # output log - tail -F --retry $SERVER_HOME/serviceability/logs/log.log || true & + tail -F --retry "$log" || true & + + # check for any memory issues: + pid=1 + match="java.lang.OutOfMemoryError" + while sleep 60; do if fgrep --quiet "$match" "$log"; then cp -fv "$log" "/tmp/error/$(date '+%Y-%m-%d_%H-%M').log" ; kill $pid; exit 0; fi; done & # start virgo server $SERVER_HOME/bin/startup.sh