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

benjobs pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/incubator-streampark.git


The following commit(s) were added to refs/heads/dev by this push:
     new 4032f7630 [fixBug] yarnUtil restRequest error,illegal character in RM 
url bug (#3380)
4032f7630 is described below

commit 4032f7630e3631e1cc76d3761ad6a31ec6dcb84a
Author: Dsrong <[email protected]>
AuthorDate: Mon Dec 11 00:19:33 2023 +0800

    [fixBug] yarnUtil restRequest error,illegal character in RM url bug (#3380)
    
    * add code add
    
    * [fixBug] yarnUtil restRequest error,illegal character in RM url bug
    
    ---------
    
    Co-authored-by: deng <[email protected]>
    Co-authored-by: benjobs <[email protected]>
---
 .../console/core/watcher/FlinkAppHttpWatcher.java  | 28 ++++++++++++----------
 1 file changed, 16 insertions(+), 12 deletions(-)

diff --git 
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/watcher/FlinkAppHttpWatcher.java
 
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/watcher/FlinkAppHttpWatcher.java
index 033631e6c..8d200d530 100644
--- 
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/watcher/FlinkAppHttpWatcher.java
+++ 
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/watcher/FlinkAppHttpWatcher.java
@@ -20,6 +20,7 @@ package org.apache.streampark.console.core.watcher;
 import org.apache.streampark.common.enums.FlinkExecutionMode;
 import org.apache.streampark.common.util.HttpClientUtils;
 import org.apache.streampark.common.util.ThreadUtils;
+import org.apache.streampark.common.util.Utils;
 import org.apache.streampark.common.util.YarnUtils;
 import org.apache.streampark.console.base.util.JacksonUtils;
 import org.apache.streampark.console.core.bean.AlertTemplate;
@@ -679,12 +680,13 @@ public class FlinkAppHttpWatcher {
         && (FlinkExecutionMode.YARN_APPLICATION == 
application.getFlinkExecutionMode()
             || FlinkExecutionMode.YARN_PER_JOB == 
application.getFlinkExecutionMode())) {
       String reqURL;
-      if (StringUtils.isBlank(application.getJobManagerUrl())) {
+      String jmURL = application.getJobManagerUrl();
+      if (StringUtils.isNotBlank(jmURL) && Utils.checkHttpURL(jmURL)) {
+        String format = "%s/overview";
+        reqURL = String.format(format, jmURL);
+      } else {
         String format = "proxy/%s/overview";
         reqURL = String.format(format, appId);
-      } else {
-        String format = "%s/overview";
-        reqURL = String.format(format, application.getJobManagerUrl());
       }
       return yarnRestRequest(reqURL, Overview.class);
     }
@@ -696,12 +698,13 @@ public class FlinkAppHttpWatcher {
     FlinkExecutionMode execMode = application.getFlinkExecutionMode();
     if (FlinkExecutionMode.isYarnMode(execMode)) {
       String reqURL;
-      if (StringUtils.isBlank(application.getJobManagerUrl())) {
+      String jmURL = application.getJobManagerUrl();
+      if (StringUtils.isNotBlank(jmURL) && Utils.checkHttpURL(jmURL)) {
+        String format = "%s/" + flinkUrl;
+        reqURL = String.format(format, jmURL);
+      } else {
         String format = "proxy/%s/" + flinkUrl;
         reqURL = String.format(format, application.getAppId());
-      } else {
-        String format = "%s/" + flinkUrl;
-        reqURL = String.format(format, application.getJobManagerUrl());
       }
       return yarnRestRequest(reqURL, JobsOverview.class);
     }
@@ -730,12 +733,13 @@ public class FlinkAppHttpWatcher {
     FlinkExecutionMode execMode = application.getFlinkExecutionMode();
     if (FlinkExecutionMode.isYarnMode(execMode)) {
       String reqURL;
-      if (StringUtils.isBlank(application.getJobManagerUrl())) {
+      String jmURL = application.getJobManagerUrl();
+      if (StringUtils.isNotBlank(jmURL) && Utils.checkHttpURL(jmURL)) {
+        String format = "%s/" + flinkUrl;
+        reqURL = String.format(format, jmURL, application.getJobId());
+      } else {
         String format = "proxy/%s/" + flinkUrl;
         reqURL = String.format(format, application.getAppId(), 
application.getJobId());
-      } else {
-        String format = "%s/" + flinkUrl;
-        reqURL = String.format(format, application.getJobManagerUrl(), 
application.getJobId());
       }
       return yarnRestRequest(reqURL, CheckPoints.class);
     }

Reply via email to