From 949531572bcdbd82f7fede9982a529e8e0d14625 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=99=93=E4=B8=9C?= <03131302@163.com>
Date: Tue, 20 Nov 2018 21:36:39 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=80=82=E9=85=8Delasticsear?=
=?UTF-8?q?ch=206.5.0=20(#615)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: 杨晓东 <03131302@163.com>
---
pom.xml | 2 +-
.../org/wltea/analyzer/dic/Dictionary.java | 4 +-
.../java/org/wltea/analyzer/dic/Monitor.java | 4 +-
.../analyzer/help/ESPluginLoggerFactory.java | 27 +++++++++
.../analyzer/help/PrefixPluginLogger.java | 48 ++++++++++++++++
.../java/org/wltea/analyzer/help/Sleep.java | 56 ++++++++++---------
6 files changed, 109 insertions(+), 32 deletions(-)
create mode 100644 src/main/java/org/wltea/analyzer/help/ESPluginLoggerFactory.java
create mode 100644 src/main/java/org/wltea/analyzer/help/PrefixPluginLogger.java
diff --git a/pom.xml b/pom.xml
index 12d940b..32fb4e1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -12,7 +12,7 @@
2011
- 6.3.0
+ 6.5.0
1.8
${project.basedir}/src/main/assemblies/plugin.xml
analysis-ik
diff --git a/src/main/java/org/wltea/analyzer/dic/Dictionary.java b/src/main/java/org/wltea/analyzer/dic/Dictionary.java
index 33105be..43f7d0e 100644
--- a/src/main/java/org/wltea/analyzer/dic/Dictionary.java
+++ b/src/main/java/org/wltea/analyzer/dic/Dictionary.java
@@ -51,10 +51,10 @@ import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.elasticsearch.SpecialPermission;
import org.elasticsearch.common.io.PathUtils;
-import org.elasticsearch.common.logging.ESLoggerFactory;
import org.elasticsearch.plugin.analysis.ik.AnalysisIkPlugin;
import org.wltea.analyzer.cfg.Configuration;
import org.apache.logging.log4j.Logger;
+import org.wltea.analyzer.help.ESPluginLoggerFactory;
/**
@@ -84,7 +84,7 @@ public class Dictionary {
*/
private Configuration configuration;
- private static final Logger logger = ESLoggerFactory.getLogger(Monitor.class.getName());
+ private static final Logger logger = ESPluginLoggerFactory.getLogger(Monitor.class.getName());
private static ScheduledExecutorService pool = Executors.newScheduledThreadPool(1);
diff --git a/src/main/java/org/wltea/analyzer/dic/Monitor.java b/src/main/java/org/wltea/analyzer/dic/Monitor.java
index f820647..a5771ef 100644
--- a/src/main/java/org/wltea/analyzer/dic/Monitor.java
+++ b/src/main/java/org/wltea/analyzer/dic/Monitor.java
@@ -11,11 +11,11 @@ import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.logging.log4j.Logger;
import org.elasticsearch.SpecialPermission;
-import org.elasticsearch.common.logging.ESLoggerFactory;
+import org.wltea.analyzer.help.ESPluginLoggerFactory;
public class Monitor implements Runnable {
- private static final Logger logger = ESLoggerFactory.getLogger(Monitor.class.getName());
+ private static final Logger logger = ESPluginLoggerFactory.getLogger(Monitor.class.getName());
private static CloseableHttpClient httpclient = HttpClients.createDefault();
/*
diff --git a/src/main/java/org/wltea/analyzer/help/ESPluginLoggerFactory.java b/src/main/java/org/wltea/analyzer/help/ESPluginLoggerFactory.java
new file mode 100644
index 0000000..5c74b68
--- /dev/null
+++ b/src/main/java/org/wltea/analyzer/help/ESPluginLoggerFactory.java
@@ -0,0 +1,27 @@
+package org.wltea.analyzer.help;
+
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.spi.ExtendedLogger;
+
+public class ESPluginLoggerFactory {
+
+ private ESPluginLoggerFactory() {
+ }
+
+ static public Logger getLogger(String name) {
+ return getLogger("", LogManager.getLogger(name));
+ }
+
+ static public Logger getLogger(String prefix, String name) {
+ return getLogger(prefix, LogManager.getLogger(name));
+ }
+
+ static public Logger getLogger(String prefix, Class> clazz) {
+ return getLogger(prefix, LogManager.getLogger(clazz.getName()));
+ }
+
+ static public Logger getLogger(String prefix, Logger logger) {
+ return (Logger)(prefix != null && prefix.length() != 0 ? new PrefixPluginLogger((ExtendedLogger)logger, logger.getName(), prefix) : logger);
+ }
+}
diff --git a/src/main/java/org/wltea/analyzer/help/PrefixPluginLogger.java b/src/main/java/org/wltea/analyzer/help/PrefixPluginLogger.java
new file mode 100644
index 0000000..56f2140
--- /dev/null
+++ b/src/main/java/org/wltea/analyzer/help/PrefixPluginLogger.java
@@ -0,0 +1,48 @@
+package org.wltea.analyzer.help;
+
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.Marker;
+import org.apache.logging.log4j.MarkerManager;
+import org.apache.logging.log4j.message.Message;
+import org.apache.logging.log4j.message.MessageFactory;
+import org.apache.logging.log4j.spi.ExtendedLogger;
+import org.apache.logging.log4j.spi.ExtendedLoggerWrapper;
+
+import java.util.WeakHashMap;
+
+public class PrefixPluginLogger extends ExtendedLoggerWrapper {
+ private static final WeakHashMap markers = new WeakHashMap();
+ private final Marker marker;
+
+ static int markersSize() {
+ return markers.size();
+ }
+
+ public String prefix() {
+ return this.marker.getName();
+ }
+
+ PrefixPluginLogger(ExtendedLogger logger, String name, String prefix) {
+ super(logger, name, (MessageFactory) null);
+ String actualPrefix = prefix == null ? "" : prefix;
+ WeakHashMap var6 = markers;
+ MarkerManager.Log4jMarker actualMarker;
+ synchronized (markers) {
+ MarkerManager.Log4jMarker maybeMarker = (MarkerManager.Log4jMarker) markers.get(actualPrefix);
+ if (maybeMarker == null) {
+ actualMarker = new MarkerManager.Log4jMarker(actualPrefix);
+ markers.put(new String(actualPrefix), actualMarker);
+ } else {
+ actualMarker = maybeMarker;
+ }
+ }
+
+ this.marker = (Marker) actualMarker;
+ }
+
+ public void logMessage(String fqcn, Level level, Marker marker, Message message, Throwable t) {
+ assert marker == null;
+
+ super.logMessage(fqcn, level, this.marker, message, t);
+ }
+}
\ No newline at end of file
diff --git a/src/main/java/org/wltea/analyzer/help/Sleep.java b/src/main/java/org/wltea/analyzer/help/Sleep.java
index 94a2278..b6ef110 100644
--- a/src/main/java/org/wltea/analyzer/help/Sleep.java
+++ b/src/main/java/org/wltea/analyzer/help/Sleep.java
@@ -1,36 +1,38 @@
package org.wltea.analyzer.help;
import org.apache.logging.log4j.Logger;
-import org.elasticsearch.common.logging.ESLoggerFactory;
public class Sleep {
- private static final Logger logger = ESLoggerFactory.getLogger(Sleep.class.getName());
-
- public enum Type{MSEC,SEC,MIN,HOUR};
- public static void sleep(Type type,int num){
- try {
- switch(type){
- case MSEC:
- Thread.sleep(num);
- return;
- case SEC:
- Thread.sleep(num*1000);
- return;
- case MIN:
- Thread.sleep(num*60*1000);
- return;
- case HOUR:
- Thread.sleep(num*60*60*1000);
- return;
- default:
- System.err.println("输入类型错误,应为MSEC,SEC,MIN,HOUR之一");
- return;
- }
- } catch (InterruptedException e) {
- logger.error(e.getMessage(), e);
- }
- }
+ private static final Logger logger = ESPluginLoggerFactory.getLogger(Sleep.class.getName());
+
+ public enum Type {MSEC, SEC, MIN, HOUR}
+
+ ;
+
+ public static void sleep(Type type, int num) {
+ try {
+ switch (type) {
+ case MSEC:
+ Thread.sleep(num);
+ return;
+ case SEC:
+ Thread.sleep(num * 1000);
+ return;
+ case MIN:
+ Thread.sleep(num * 60 * 1000);
+ return;
+ case HOUR:
+ Thread.sleep(num * 60 * 60 * 1000);
+ return;
+ default:
+ System.err.println("输入类型错误,应为MSEC,SEC,MIN,HOUR之一");
+ return;
+ }
+ } catch (InterruptedException e) {
+ logger.error(e.getMessage(), e);
+ }
+ }
}
--
GitLab