mirror of
https://gitee.com/dolphinscheduler/DolphinScheduler.git
synced 2024-12-04 05:09:48 +08:00
* fix #3645 fix get yarn applications status from yarn server,http code return 404, get yarn applications status cause NullPointerException * Update HadoopUtils.java * Update HadoopUtils.java
This commit is contained in:
parent
7d49fbbaec
commit
ba3adbd34b
@ -195,7 +195,7 @@ public class HadoopUtils implements Closeable {
|
||||
*/
|
||||
String appUrl = "";
|
||||
|
||||
if (StringUtils.isEmpty(rmHaIds)){
|
||||
if (StringUtils.isEmpty(rmHaIds)) {
|
||||
//single resourcemanager enabled
|
||||
appUrl = appAddress;
|
||||
yarnEnabled = true;
|
||||
@ -206,7 +206,7 @@ public class HadoopUtils implements Closeable {
|
||||
logger.info("application url : {}", appUrl);
|
||||
}
|
||||
|
||||
if(StringUtils.isBlank(appUrl)){
|
||||
if (StringUtils.isBlank(appUrl)) {
|
||||
throw new Exception("application url is blank");
|
||||
}
|
||||
return String.format(appUrl, applicationId);
|
||||
@ -417,25 +417,33 @@ public class HadoopUtils implements Closeable {
|
||||
String applicationUrl = getApplicationUrl(applicationId);
|
||||
logger.info("applicationUrl={}", applicationUrl);
|
||||
|
||||
String responseContent ;
|
||||
if (PropertyUtils.getBoolean(Constants.HADOOP_SECURITY_AUTHENTICATION_STARTUP_STATE, false)) {
|
||||
responseContent = KerberosHttpClient.get(applicationUrl);
|
||||
} else {
|
||||
responseContent = HttpUtils.get(applicationUrl);
|
||||
}
|
||||
String responseContent;
|
||||
if (PropertyUtils.getBoolean(Constants.HADOOP_SECURITY_AUTHENTICATION_STARTUP_STATE, false)) {
|
||||
responseContent = KerberosHttpClient.get(applicationUrl);
|
||||
} else {
|
||||
responseContent = HttpUtils.get(applicationUrl);
|
||||
}
|
||||
if (responseContent != null) {
|
||||
ObjectNode jsonObject = JSONUtils.parseObject(responseContent);
|
||||
if (!jsonObject.has("app")) {
|
||||
return ExecutionStatus.FAILURE;
|
||||
}
|
||||
result = jsonObject.path("app").path("finalStatus").asText();
|
||||
|
||||
} else {
|
||||
//may be in job history
|
||||
String jobHistoryUrl = getJobHistoryUrl(applicationId);
|
||||
logger.info("jobHistoryUrl={}", jobHistoryUrl);
|
||||
responseContent = HttpUtils.get(jobHistoryUrl);
|
||||
ObjectNode jsonObject = JSONUtils.parseObject(responseContent);
|
||||
if (!jsonObject.has("job")){
|
||||
if (null != responseContent) {
|
||||
ObjectNode jsonObject = JSONUtils.parseObject(responseContent);
|
||||
if (!jsonObject.has("job")) {
|
||||
return ExecutionStatus.FAILURE;
|
||||
}
|
||||
result = jsonObject.path("job").path("state").asText();
|
||||
} else {
|
||||
return ExecutionStatus.FAILURE;
|
||||
}
|
||||
result = jsonObject.path("job").path("state").asText();
|
||||
}
|
||||
|
||||
switch (result) {
|
||||
@ -474,7 +482,7 @@ public class HadoopUtils implements Closeable {
|
||||
/**
|
||||
* hdfs resource dir
|
||||
*
|
||||
* @param tenantCode tenant code
|
||||
* @param tenantCode tenant code
|
||||
* @param resourceType resource type
|
||||
* @return hdfs resource dir
|
||||
*/
|
||||
@ -679,7 +687,7 @@ public class HadoopUtils implements Closeable {
|
||||
ObjectNode jsonObject = JSONUtils.parseObject(retStr);
|
||||
|
||||
//get ResourceManager state
|
||||
if (!jsonObject.has("clusterInfo")){
|
||||
if (!jsonObject.has("clusterInfo")) {
|
||||
return null;
|
||||
}
|
||||
return jsonObject.get("clusterInfo").path("haState").asText();
|
||||
|
Loading…
Reference in New Issue
Block a user