You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by pe...@apache.org on 2023/04/26 09:54:06 UTC

[doris] branch master updated: fe conf action spec item (#18916)

This is an automated email from the ASF dual-hosted git repository.

pengxiangyu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new 0c60f0e266 fe conf action spec item (#18916)
0c60f0e266 is described below

commit 0c60f0e2662afd56ac589393262032248bdd4d4d
Author: yongjinhou <10...@users.noreply.github.com>
AuthorDate: Wed Apr 26 17:54:00 2023 +0800

    fe conf action spec item (#18916)
---
 .../admin-manual/http-actions/fe/config-action.md  |  4 +++-
 .../admin-manual/http-actions/fe/config-action.md  |  4 +++-
 .../doris/httpv2/controller/ConfigController.java  | 25 ++++++++++++++++------
 3 files changed, 24 insertions(+), 9 deletions(-)

diff --git a/docs/en/docs/admin-manual/http-actions/fe/config-action.md b/docs/en/docs/admin-manual/http-actions/fe/config-action.md
index d1d366257d..908142387d 100644
--- a/docs/en/docs/admin-manual/http-actions/fe/config-action.md
+++ b/docs/en/docs/admin-manual/http-actions/fe/config-action.md
@@ -42,7 +42,9 @@ None
 
 ## Query parameters
 
-None
+* `conf_item`
+
+    Optional parameters. Return specified item in FE configuration.
 
 ## Request body
 
diff --git a/docs/zh-CN/docs/admin-manual/http-actions/fe/config-action.md b/docs/zh-CN/docs/admin-manual/http-actions/fe/config-action.md
index 96897b849a..3c6487cd72 100644
--- a/docs/zh-CN/docs/admin-manual/http-actions/fe/config-action.md
+++ b/docs/zh-CN/docs/admin-manual/http-actions/fe/config-action.md
@@ -42,7 +42,9 @@ Config Action 用于获取当前 FE 的配置信息
 
 ## Query parameters
 
-无
+* `conf_item`
+
+    可选参数。返回 FE 的配置信息中的指定项。
 
 ## Request body
 
diff --git a/fe/fe-core/src/main/java/org/apache/doris/httpv2/controller/ConfigController.java b/fe/fe-core/src/main/java/org/apache/doris/httpv2/controller/ConfigController.java
index a983b81f68..b0769e0d83 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/httpv2/controller/ConfigController.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/httpv2/controller/ConfigController.java
@@ -20,6 +20,7 @@ package org.apache.doris.httpv2.controller;
 import org.apache.doris.common.Config;
 import org.apache.doris.httpv2.entity.ResponseEntityBuilder;
 
+import com.google.common.base.Strings;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import org.apache.logging.log4j.LogManager;
@@ -31,32 +32,42 @@ import org.springframework.web.bind.annotation.RestController;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
 
 @RestController
 @RequestMapping("/rest/v1")
 public class ConfigController {
     private static final Logger LOG = LogManager.getLogger(ConfigController.class);
     private static final List<String> CONFIG_TABLE_HEADER = Lists.newArrayList("Name", "Value");
+    private static final String CONF_ITEM = "conf_item";
 
     @RequestMapping(path = "/config/fe", method = RequestMethod.GET)
-    public Object variable() {
+    public Object variable(HttpServletRequest request, HttpServletResponse response) {
         Map<String, Object> result = Maps.newHashMap();
-        appendConfigureInfo(result);
+        String confItem = request.getParameter(CONF_ITEM);
+        appendConfigureInfo(result, confItem);
         return ResponseEntityBuilder.ok(result);
     }
 
-    private void appendConfigureInfo(Map<String, Object> result) {
-
+    private void appendConfigureInfo(Map<String, Object> result, String confItem) {
         result.put("column_names", CONFIG_TABLE_HEADER);
         List<Map<String, String>> list = Lists.newArrayList();
         result.put("rows", list);
         try {
             Map<String, String> confmap = Config.dump();
-            for (String key : confmap.keySet()) {
+            if (!Strings.isNullOrEmpty(confItem)) {
                 Map<String, String> info = new HashMap<>();
-                info.put("Name", key);
-                info.put("Value", confmap.get(key));
+                info.put("Name", confItem);
+                info.put("Value", confmap.get(confItem));
                 list.add(info);
+            } else {
+                for (String key : confmap.keySet()) {
+                    Map<String, String> info = new HashMap<>();
+                    info.put("Name", key);
+                    info.put("Value", confmap.get(key));
+                    list.add(info);
+                }
             }
         } catch (Exception e) {
             LOG.warn("", e);


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org