diff options
author | Thomas <> | 2022-10-13 07:30:27 +0200 |
---|---|---|
committer | Thomas <> | 2022-10-13 07:30:27 +0200 |
commit | d0017b73e8dcd2e9b41fe2ee0e89b5bd36fb0353 (patch) | |
tree | 07a2823d4bf929db952d320aa1b9cb2e02da7185 /moaSig/moa-sig-lib/src/main/java/at/gv | |
parent | 91e57360ff98be529a3f8fd074c0b1bbc18fbd19 (diff) | |
download | moa-sig-d0017b73e8dcd2e9b41fe2ee0e89b5bd36fb0353.tar.gz moa-sig-d0017b73e8dcd2e9b41fe2ee0e89b5bd36fb0353.tar.bz2 moa-sig-d0017b73e8dcd2e9b41fe2ee0e89b5bd36fb0353.zip |
feat(iaiklogger): add interface to re-classify log msg from WARN to INFO
Diffstat (limited to 'moaSig/moa-sig-lib/src/main/java/at/gv')
-rw-r--r-- | moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/logging/IaikLog.java | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/logging/IaikLog.java b/moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/logging/IaikLog.java index 84dc8bf..2ddb783 100644 --- a/moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/logging/IaikLog.java +++ b/moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/logging/IaikLog.java @@ -24,11 +24,14 @@ package at.gv.egovernment.moa.spss.server.logging; import java.util.ArrayList; +import java.util.HashSet; import java.util.List; +import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.stream.Collectors; import java.util.stream.IntStream; +import java.util.stream.Stream; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -50,12 +53,30 @@ public class IaikLog implements iaik.logging.Log { /** The node ID to use. */ private String nodeId; + private static final Set<String> LOGLEVEL_INFO_RECLASSIFICATION = Stream.of( + "Max. cert info store size exceeded, consider using a larger certinfostore.") + .collect(Collectors.toCollection(HashSet::new)); + + public static final String X509_INFO_CLEARING_PATTERN = "(?!serialNumber)(=)(.*?)(,|\"|$)"; private static Pattern multilinePattern; private static List<String> maskPatterns = new ArrayList<>(); /** + * Add log message that should be logged on INFO level instead of WARN. + * + * <p>IAIK-MOA and some other IAIK libs sometimes log on level WARN but it's only an info. + * However, log level WARN can trigger wrong alerts in monitoring systems.</p> + * + * @param msg + */ + public static void addLogMsgForReclassification(String msg) { + LOGLEVEL_INFO_RECLASSIFICATION.add(msg); + + } + + /** * Add masking pattern into logger. * * @param maskPattern @@ -130,7 +151,14 @@ public class IaikLog implements iaik.logging.Log { Object blankedMsg = log.isTraceEnabled() ? message : maskMessage(message); final IaikLogMsg msg = new IaikLogMsg(transactionId, nodeId, blankedMsg); - log.warn(msg.toString(), t); + // log some messages on INFO. That's a work-around for suboptimal levels in third-party libs. + if (LOGLEVEL_INFO_RECLASSIFICATION.contains(blankedMsg)) { + log.info(msg.toString(), t); + + } else { + log.warn(msg.toString(), t); + + } } /** |