Prechádzať zdrojové kódy

fix #2713 improve query for search log

Shinsuke Sugaya 2 rokov pred
rodič
commit
50cf9ec75d
32 zmenil súbory, kde vykonal 48 pridanie a 33 odobranie
  1. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsAccessTokenCB.java
  2. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsBadWordCB.java
  3. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsBoostDocumentRuleCB.java
  4. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsCrawlingInfoCB.java
  5. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsCrawlingInfoParamCB.java
  6. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsDataConfigCB.java
  7. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsDuplicateHostCB.java
  8. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsElevateWordCB.java
  9. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsElevateWordToLabelCB.java
  10. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsFailureUrlCB.java
  11. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsFileAuthenticationCB.java
  12. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsFileConfigCB.java
  13. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsJobLogCB.java
  14. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsKeyMatchCB.java
  15. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsLabelTypeCB.java
  16. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsPathMappingCB.java
  17. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsRelatedContentCB.java
  18. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsRelatedQueryCB.java
  19. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsRequestHeaderCB.java
  20. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsRoleTypeCB.java
  21. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsScheduledJobCB.java
  22. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsThumbnailQueueCB.java
  23. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsWebAuthenticationCB.java
  24. 1 1
      src/main/java/org/codelibs/fess/es/config/cbean/bs/BsWebConfigCB.java
  25. 1 1
      src/main/java/org/codelibs/fess/es/log/cbean/bs/BsClickLogCB.java
  26. 1 1
      src/main/java/org/codelibs/fess/es/log/cbean/bs/BsFavoriteLogCB.java
  27. 1 1
      src/main/java/org/codelibs/fess/es/log/cbean/bs/BsSearchLogCB.java
  28. 1 1
      src/main/java/org/codelibs/fess/es/log/cbean/bs/BsUserInfoCB.java
  29. 1 1
      src/main/java/org/codelibs/fess/es/user/cbean/bs/BsGroupCB.java
  30. 1 1
      src/main/java/org/codelibs/fess/es/user/cbean/bs/BsRoleCB.java
  31. 1 1
      src/main/java/org/codelibs/fess/es/user/cbean/bs/BsUserCB.java
  32. 17 2
      src/main/java/org/codelibs/fess/helper/SuggestHelper.java

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsAccessTokenCB.java

@@ -168,7 +168,7 @@ public class BsAccessTokenCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsBadWordCB.java

@@ -168,7 +168,7 @@ public class BsBadWordCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsBoostDocumentRuleCB.java

@@ -168,7 +168,7 @@ public class BsBoostDocumentRuleCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsCrawlingInfoCB.java

@@ -168,7 +168,7 @@ public class BsCrawlingInfoCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsCrawlingInfoParamCB.java

@@ -168,7 +168,7 @@ public class BsCrawlingInfoParamCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsDataConfigCB.java

@@ -168,7 +168,7 @@ public class BsDataConfigCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsDuplicateHostCB.java

@@ -168,7 +168,7 @@ public class BsDuplicateHostCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsElevateWordCB.java

@@ -168,7 +168,7 @@ public class BsElevateWordCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsElevateWordToLabelCB.java

@@ -168,7 +168,7 @@ public class BsElevateWordToLabelCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsFailureUrlCB.java

@@ -168,7 +168,7 @@ public class BsFailureUrlCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsFileAuthenticationCB.java

@@ -168,7 +168,7 @@ public class BsFileAuthenticationCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsFileConfigCB.java

@@ -168,7 +168,7 @@ public class BsFileConfigCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsJobLogCB.java

@@ -168,7 +168,7 @@ public class BsJobLogCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsKeyMatchCB.java

@@ -168,7 +168,7 @@ public class BsKeyMatchCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsLabelTypeCB.java

@@ -168,7 +168,7 @@ public class BsLabelTypeCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsPathMappingCB.java

@@ -168,7 +168,7 @@ public class BsPathMappingCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsRelatedContentCB.java

@@ -168,7 +168,7 @@ public class BsRelatedContentCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsRelatedQueryCB.java

@@ -168,7 +168,7 @@ public class BsRelatedQueryCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsRequestHeaderCB.java

@@ -168,7 +168,7 @@ public class BsRequestHeaderCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsRoleTypeCB.java

@@ -168,7 +168,7 @@ public class BsRoleTypeCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsScheduledJobCB.java

@@ -168,7 +168,7 @@ public class BsScheduledJobCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsThumbnailQueueCB.java

@@ -168,7 +168,7 @@ public class BsThumbnailQueueCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsWebAuthenticationCB.java

@@ -168,7 +168,7 @@ public class BsWebAuthenticationCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/config/cbean/bs/BsWebConfigCB.java

@@ -168,7 +168,7 @@ public class BsWebConfigCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/log/cbean/bs/BsClickLogCB.java

@@ -168,7 +168,7 @@ public class BsClickLogCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/log/cbean/bs/BsFavoriteLogCB.java

@@ -168,7 +168,7 @@ public class BsFavoriteLogCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/log/cbean/bs/BsSearchLogCB.java

@@ -168,7 +168,7 @@ public class BsSearchLogCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/log/cbean/bs/BsUserInfoCB.java

@@ -168,7 +168,7 @@ public class BsUserInfoCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/user/cbean/bs/BsGroupCB.java

@@ -168,7 +168,7 @@ public class BsGroupCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/user/cbean/bs/BsRoleCB.java

@@ -168,7 +168,7 @@ public class BsRoleCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 1 - 1
src/main/java/org/codelibs/fess/es/user/cbean/bs/BsUserCB.java

@@ -168,7 +168,7 @@ public class BsUserCB extends EsAbstractConditionBean {
     public static class HpSpecification {
         protected List<String> columnList = new ArrayList<>();
 
-        private void doColumn(String name) {
+        public void doColumn(String name) {
             columnList.add(name);
         }
 

+ 17 - 2
src/main/java/org/codelibs/fess/helper/SuggestHelper.java

@@ -83,7 +83,7 @@ public class SuggestHelper {
 
     protected PopularWordHelper popularWordHelper = null;
 
-    public long searchStoreIntervalMinute = 1;
+    protected long searchStoreInterval = 1; // min
 
     @PostConstruct
     public void init() {
@@ -135,6 +135,17 @@ public class SuggestHelper {
             final String from = LocalDateTime.now().minusDays(fessConfig.getPurgeSuggestSearchLogDay()).format(DateTimeFormatter.ISO_DATE);
             cb.query().addQuery(QueryBuilders.rangeQuery("requestedAt").gte(from));
             cb.query().addOrderBy_RequestedAt_Asc();
+            cb.specify().columnAccessType();
+            cb.specify().columnUserSessionId();
+            cb.specify().columnHitCount();
+            cb.specify().columnClientIp();
+            cb.specify().columnSearchWord();
+            cb.specify().columnRequestedAt();
+            cb.specify().columnHitCount();
+            cb.specify().columnVirtualHost();
+            cb.specify().columnLanguages();
+            cb.specify().columnRoles();
+            cb.specify().doColumn("searchField.*");
         }, this::indexFromSearchLog);
     }
 
@@ -157,7 +168,7 @@ public class SuggestHelper {
 
             final LocalDateTime requestedAt = searchLog.getRequestedAt();
             if ((sessionId == null) || (duplicateSessionMap.containsKey(sessionId)
-                    && duplicateSessionMap.get(sessionId).plusMinutes(searchStoreIntervalMinute).isAfter(requestedAt))) {
+                    && duplicateSessionMap.get(sessionId).plusMinutes(searchStoreInterval).isAfter(requestedAt))) {
                 return;
             }
 
@@ -386,4 +397,8 @@ public class SuggestHelper {
             popularWordHelper.clearCache();
         }
     }
+
+    public void setSearchStoreInterval(long searchStoreInterval) {
+        this.searchStoreInterval = searchStoreInterval;
+    }
 }