From 3481b12d1cde75fe066e26ba07f8aed817b6d9f9 Mon Sep 17 00:00:00 2001 From: Marcin Wilk Date: Thu, 14 Jan 2021 12:30:23 +0100 Subject: Refactor property logging Log property values in a consistent way during the initialization. Hide passwords/secrets if not at DEBUG level. Issue-ID: APPC-1916 Signed-off-by: Marcin Wilk Change-Id: I89fbb1ab74001ba3ca0dc39c275c5340f700a6b1 (cherry picked from commit 0a5c2dc5ea4efb67eb6bc4b542cd6ac4180fec98) --- .../onap/appc/configuration/ConfigurationFactory.java | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/appc-core/appc-common-bundle/src/main/java/org/onap/appc/configuration/ConfigurationFactory.java b/appc-core/appc-common-bundle/src/main/java/org/onap/appc/configuration/ConfigurationFactory.java index 3cd2a7400..957002512 100644 --- a/appc-core/appc-common-bundle/src/main/java/org/onap/appc/configuration/ConfigurationFactory.java +++ b/appc-core/appc-common-bundle/src/main/java/org/onap/appc/configuration/ConfigurationFactory.java @@ -267,6 +267,16 @@ public final class ConfigurationFactory { return local; } + private static void logPropertyValue(String key, String value) { + if ((!StringUtils.containsIgnoreCase(key, "pass")) && (!StringUtils.containsIgnoreCase(key, "secret"))) { + logger.info(Msg.PROPERTY_VALUE, key, value); + } else if (logger.isDebugEnabled()) { + logger.debug(Msg.PROPERTY_VALUE, key, value); + } else { + logger.info(Msg.PROPERTY_VALUE, key, value.replaceAll(".", "*")); + } + } + /** * This method will clear the current configuration and then re-initialize it with the default * values, application-specific configuration file, user-supplied properties (if any), and then @@ -313,10 +323,7 @@ public final class ConfigurationFactory { } } for (String key : config.getProperties().stringPropertyNames()) { - if ((!StringUtils.containsIgnoreCase(key, "pass"))&&(!StringUtils.containsIgnoreCase(key, "secret"))) - logger.info(Msg.PROPERTY_VALUE, key, config.getProperty(key)); - else - logger.info(Msg.PROPERTY_VALUE, key, config.getProperty(key)); + logPropertyValue(key, config.getProperty(key)); } } else { logger.info(Msg.NO_DEFAULTS_FOUND, DEFAULT_PROPERTIES); @@ -363,7 +370,7 @@ public final class ConfigurationFactory { stream = new BufferedInputStream(new FileInputStream(file)); fileProperties.load(stream); for (String key : fileProperties.stringPropertyNames()) { - logger.info(Msg.PROPERTY_VALUE, key, fileProperties.getProperty(key)); + logPropertyValue(key, fileProperties.getProperty(key)); config.setProperty(key, fileProperties.getProperty(key)); } found = true; @@ -392,7 +399,7 @@ public final class ConfigurationFactory { if (props != null) { logger.info(Msg.LOADING_APPLICATION_OVERRIDES); for (String key : props.stringPropertyNames()) { - logger.info(Msg.PROPERTY_VALUE, key, props.getProperty(key)); + logPropertyValue(key, props.getProperty(key)); config.setProperty(key, props.getProperty(key)); } } else { -- cgit 1.2.3-korg