AMBARI-24928. Fix non-fatal POSTUN scriptlet failure + use different logfile for metrics (#31)
diff --git a/ambari-logsearch-assembly/src/main/package/deb/logfeeder/postrm b/ambari-logsearch-assembly/src/main/package/deb/logfeeder/postrm
index 5f1c623..5da2406 100644
--- a/ambari-logsearch-assembly/src/main/package/deb/logfeeder/postrm
+++ b/ambari-logsearch-assembly/src/main/package/deb/logfeeder/postrm
@@ -18,4 +18,10 @@
LOGFEEDER_CONF_DIR_LINK="/etc/ambari-logsearch-logfeeder/conf"
rm -f $LOGFEEDER_SCRIPT_LINK_NAME
-rm -f $LOGFEEDER_CONF_DIR_LINK
\ No newline at end of file
+if [ -d "$LOGFEEDER_CONF_DIR_LINK" ]; then
+ rm -rf $LOGFEEDER_CONF_DIR_LINK
+fi
+
+if [ -f "$LOGFEEDER_CONF_DIR_LINK" ]; then
+ rm -f $LOGFEEDER_CONF_DIR_LINK
+fi
\ No newline at end of file
diff --git a/ambari-logsearch-assembly/src/main/package/deb/portal/postrm b/ambari-logsearch-assembly/src/main/package/deb/portal/postrm
index 8de05c1..a21421f 100644
--- a/ambari-logsearch-assembly/src/main/package/deb/portal/postrm
+++ b/ambari-logsearch-assembly/src/main/package/deb/portal/postrm
@@ -18,4 +18,10 @@
LOGSEARCH_CONF_DIR_LINK="/etc/ambari-logsearch-portal/conf"
rm -f $LOGSEARCH_SCRIPT_LINK_NAME
-rm -f $LOGSEARCH_CONF_DIR_LINK
\ No newline at end of file
+if [ -d "$LOGSEARCH_CONF_DIR_LINK" ]; then
+ rm -rf $LOGSEARCH_CONF_DIR_LINK
+fi
+
+if [ -f "$LOGSEARCH_CONF_DIR_LINK" ]; then
+ rm -f $LOGSEARCH_CONF_DIR_LINK
+fi
\ No newline at end of file
diff --git a/ambari-logsearch-assembly/src/main/package/rpm/logfeeder/postremove.sh b/ambari-logsearch-assembly/src/main/package/rpm/logfeeder/postremove.sh
index 4583980..956d81e 100755
--- a/ambari-logsearch-assembly/src/main/package/rpm/logfeeder/postremove.sh
+++ b/ambari-logsearch-assembly/src/main/package/rpm/logfeeder/postremove.sh
@@ -19,5 +19,13 @@
LOGFEEDER_CONF_DIR_LINK="$LOGFEEDER_ETC_FOLDER/conf"
rm -f $LOGFEEDER_SCRIPT_LINK_NAME
-rm -f $LOGFEEDER_CONF_DIR_LINK
-rm -f $LOGFEEDER_ETC_FOLDER
\ No newline at end of file
+if [ -f "$LOGFEEDER_CONF_DIR_LINK" ]; then
+ rm -f $LOGFEEDER_CONF_DIR_LINK
+fi
+if [ -d "$LOGFEEDER_CONF_DIR_LINK" ]; then
+ rm -rf $LOGFEEDER_CONF_DIR_LINK
+fi
+
+if [ -d "$LOGFEEDER_ETC_FOLDER" ]; then
+ rm -rf $LOGFEEDER_ETC_FOLDER
+fi
\ No newline at end of file
diff --git a/ambari-logsearch-assembly/src/main/package/rpm/portal/postremove.sh b/ambari-logsearch-assembly/src/main/package/rpm/portal/postremove.sh
index b07a1ad..c96ec72 100644
--- a/ambari-logsearch-assembly/src/main/package/rpm/portal/postremove.sh
+++ b/ambari-logsearch-assembly/src/main/package/rpm/portal/postremove.sh
@@ -19,5 +19,13 @@
LOGSEARCH_CONF_DIR_LINK="$LOGSEARCH_ETC_FOLDER/conf"
rm -f $LOGSEARCH_SCRIPT_LINK_NAME
-rm -f $LOGSEARCH_CONF_DIR_LINK
-rm -f $LOGSEARCH_ETC_FOLDER
\ No newline at end of file
+if [ -f "$LOGSEARCH_CONF_DIR_LINK" ]; then
+ rm -f $LOGSEARCH_CONF_DIR_LINK
+fi
+if [ -d "$LOGSEARCH_CONF_DIR_LINK" ]; then
+ rm -rf $LOGSEARCH_CONF_DIR_LINK
+fi
+
+if [ -d "$LOGSEARCH_ETC_FOLDER" ]; then
+ rm -rf $LOGSEARCH_ETC_FOLDER
+fi
\ No newline at end of file
diff --git a/ambari-logsearch-logfeeder-plugin-api/src/main/java/org/apache/ambari/logfeeder/plugin/common/ConfigItem.java b/ambari-logsearch-logfeeder-plugin-api/src/main/java/org/apache/ambari/logfeeder/plugin/common/ConfigItem.java
index 27bb04f..12c01db 100644
--- a/ambari-logsearch-logfeeder-plugin-api/src/main/java/org/apache/ambari/logfeeder/plugin/common/ConfigItem.java
+++ b/ambari-logsearch-logfeeder-plugin-api/src/main/java/org/apache/ambari/logfeeder/plugin/common/ConfigItem.java
@@ -36,7 +36,7 @@
*/
public abstract class ConfigItem<PROP_TYPE extends LogFeederProperties> implements Cloneable, Serializable {
- private static final Logger logger = LogManager.getLogger(ConfigItem.class);
+ private static final Logger logger = LogManager.getLogger("logfeeder.metrics");
private final static String GSON_DATE_FORMAT = "yyyy-MM-dd HH:mm:ss.SSS";
private static Gson gson = new GsonBuilder().setDateFormat(GSON_DATE_FORMAT).create();
diff --git a/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/metrics/StatsLogger.java b/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/metrics/StatsLogger.java
index bc1510a..0d52e2c 100644
--- a/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/metrics/StatsLogger.java
+++ b/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/metrics/StatsLogger.java
@@ -30,7 +30,7 @@
public class StatsLogger extends Thread {
- private static final Logger logger = LogManager.getLogger(StatsLogger.class);
+ private static final Logger logger = LogManager.getLogger("logfeeder.metrics");
private static final int CHECKPOINT_CLEAN_INTERVAL_MS = 24 * 60 * 60 * 60 * 1000; // 24 hours
diff --git a/ambari-logsearch-logfeeder/src/main/resources/log4j2.yml b/ambari-logsearch-logfeeder/src/main/resources/log4j2.yml
index 21e3312..8b43c35 100644
--- a/ambari-logsearch-logfeeder/src/main/resources/log4j2.yml
+++ b/ambari-logsearch-logfeeder/src/main/resources/log4j2.yml
@@ -51,6 +51,16 @@
size: 10 MB
DefaultRollOverStrategy:
max: 10
+ - name: MetricsFile_Appender
+ fileName: ${log-path}/logfeeder-metrics.log
+ filePattern: "logfeeder-metrics.log.%d{yyyy-MM-dd-hh-mm}.gz"
+ PatternLayout:
+ pattern: "%d [%t] %-5p %C{6} (%F:%L) - %m%n"
+ Policies:
+ SizeBasedTriggeringPolicy:
+ size: 10 MB
+ DefaultRollOverStrategy:
+ max: 10
Loggers:
@@ -71,4 +81,10 @@
additivity: false
level: info
AppenderRef:
+ - ref: Console_Appender
+ - name: logfeeder.metrics
+ additivity: false
+ level: info
+ AppenderRef:
+ - ref: MetricsFile_Appender
- ref: Console_Appender
\ No newline at end of file