From deab165c7f5a267b76e15bcff13fbf84d66e004a Mon Sep 17 00:00:00 2001 From: Redkale <22250530@qq.com> Date: Wed, 31 Jan 2018 10:43:22 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0java.util.logging.FileHandler?= =?UTF-8?q?.denyreg=E5=B1=9E=E6=80=A7=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/META-INF/logging-template.properties | 2 ++ src/org/redkale/boot/LogFileHandler.java | 12 ++++++++++++ 2 files changed, 14 insertions(+) diff --git a/src/META-INF/logging-template.properties b/src/META-INF/logging-template.properties index f25511725..9a04bdf8d 100644 --- a/src/META-INF/logging-template.properties +++ b/src/META-INF/logging-template.properties @@ -18,6 +18,8 @@ java.util.logging.FileHandler.encoding = UTF-8 java.util.logging.FileHandler.pattern = ${APP_HOME}/logs-%m/log-%d.log #java.util.logging.FileHandler.unusual \u5c5e\u6027\u8868\u793a\u5c06 WARNING\u3001SEVERE \u7ea7\u522b\u7684\u65e5\u5fd7\u590d\u5236\u5199\u5165\u5355\u72ec\u7684\u6587\u4ef6\u4e2d java.util.logging.FileHandler.unusual = ${APP_HOME}/logs-%m/log-warnerr-%d.log +#\u9700\u8981\u5c4f\u853d\u6d88\u606f\u5185\u5bb9\u7684\u6b63\u5219\u8868\u8fbe\u5f0f +java.util.logging.FileHandler.denyreg = java.util.logging.FileHandler.append = true #java.util.logging.ConsoleHandler.level = FINE diff --git a/src/org/redkale/boot/LogFileHandler.java b/src/org/redkale/boot/LogFileHandler.java index 085582ea7..a31abee76 100644 --- a/src/org/redkale/boot/LogFileHandler.java +++ b/src/org/redkale/boot/LogFileHandler.java @@ -14,6 +14,7 @@ import java.util.concurrent.*; import java.util.concurrent.atomic.*; import java.util.logging.*; import java.util.logging.Formatter; +import java.util.regex.Pattern; /** * 自定义的日志输出类 @@ -99,6 +100,8 @@ public class LogFileHandler extends Handler { private boolean append; + private Pattern denyreg; + private final AtomicLong loglength = new AtomicLong(); private final AtomicLong logunusuallength = new AtomicLong(); @@ -282,6 +285,14 @@ public class LogFileHandler extends Handler { if (encodingstr != null) setEncoding(encodingstr); } catch (Exception e) { } + + String denyregstr = manager.getProperty(cname + ".denyreg"); + try { + if (denyregstr != null && !denyregstr.trim().isEmpty()) { + denyreg = Pattern.compile(denyregstr); + } + } catch (Exception e) { + } } @Override @@ -298,6 +309,7 @@ public class LogFileHandler extends Handler { } else { record.setSourceClassName('[' + Thread.currentThread().getName() + "] " + sourceClassName); } + if (denyreg != null && denyreg.matcher(record.getMessage()).find()) return; records.offer(record); }