result = execService.getReceiverCc(processDefinitionId, processInstanceId);
+ return returnDataList(result);
}
diff --git a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/LoggerController.java b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/LoggerController.java
index 802f09ff20..a5b8176a48 100644
--- a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/LoggerController.java
+++ b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/LoggerController.java
@@ -17,6 +17,7 @@
package org.apache.dolphinscheduler.api.controller;
+import org.apache.dolphinscheduler.api.exceptions.ApiException;
import org.apache.dolphinscheduler.api.service.LoggerService;
import org.apache.dolphinscheduler.api.utils.Result;
import org.apache.dolphinscheduler.common.Constants;
@@ -25,7 +26,6 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
-import org.apache.dolphinscheduler.api.enums.Status;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -35,6 +35,8 @@ import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
+import static org.apache.dolphinscheduler.api.enums.Status.*;
+
/**
* log controller
@@ -52,61 +54,53 @@ public class LoggerController extends BaseController {
/**
* query task log
- * @param loginUser login user
+ *
+ * @param loginUser login user
* @param taskInstanceId task instance id
- * @param skipNum skip number
- * @param limit limit
+ * @param skipNum skip number
+ * @param limit limit
* @return task log content
*/
- @ApiOperation(value = "queryLog", notes= "QUERY_TASK_INSTANCE_LOG_NOTES")
+ @ApiOperation(value = "queryLog", notes = "QUERY_TASK_INSTANCE_LOG_NOTES")
@ApiImplicitParams({
- @ApiImplicitParam(name = "taskInstId", value = "TASK_ID", dataType = "Int", example = "100"),
- @ApiImplicitParam(name = "skipLineNum", value = "SKIP_LINE_NUM", dataType ="Int", example = "100"),
- @ApiImplicitParam(name = "limit", value = "LIMIT", dataType ="Int", example = "100")
+ @ApiImplicitParam(name = "taskInstanceId", value = "TASK_ID", dataType = "Int", example = "100"),
+ @ApiImplicitParam(name = "skipLineNum", value = "SKIP_LINE_NUM", dataType = "Int", example = "100"),
+ @ApiImplicitParam(name = "limit", value = "LIMIT", dataType = "Int", example = "100")
})
@GetMapping(value = "/detail")
@ResponseStatus(HttpStatus.OK)
+ @ApiException(QUERY_TASK_INSTANCE_LOG_ERROR)
public Result queryLog(@ApiIgnore @RequestAttribute(value = Constants.SESSION_USER) User loginUser,
- @RequestParam(value = "taskInstId") int taskInstanceId,
+ @RequestParam(value = "taskInstanceId") int taskInstanceId,
@RequestParam(value = "skipLineNum") int skipNum,
@RequestParam(value = "limit") int limit) {
- try {
-
- logger.info(
- "login user {}, view {} task instance log ,skipLineNum {} , limit {}", loginUser.getUserName(), taskInstanceId, skipNum, limit);
- return loggerService.queryLog(taskInstanceId, skipNum, limit);
- } catch (Exception e) {
- logger.error(Status.QUERY_TASK_INSTANCE_LOG_ERROR.getMsg(), e);
- return error(Status.QUERY_TASK_INSTANCE_LOG_ERROR.getCode(), Status.QUERY_TASK_INSTANCE_LOG_ERROR.getMsg());
- }
+ logger.info(
+ "login user {}, view {} task instance log ,skipLineNum {} , limit {}", loginUser.getUserName(), taskInstanceId, skipNum, limit);
+ return loggerService.queryLog(taskInstanceId, skipNum, limit);
}
/**
* download log file
*
- * @param loginUser login user
+ * @param loginUser login user
* @param taskInstanceId task instance id
* @return log file content
*/
- @ApiOperation(value = "downloadTaskLog", notes= "DOWNLOAD_TASK_INSTANCE_LOG_NOTES")
+ @ApiOperation(value = "downloadTaskLog", notes = "DOWNLOAD_TASK_INSTANCE_LOG_NOTES")
@ApiImplicitParams({
- @ApiImplicitParam(name = "taskInstId", value = "TASK_ID",dataType = "Int", example = "100")
+ @ApiImplicitParam(name = "taskInstanceId", value = "TASK_ID", dataType = "Int", example = "100")
})
@GetMapping(value = "/download-log")
@ResponseBody
+ @ApiException(DOWNLOAD_TASK_INSTANCE_LOG_FILE_ERROR)
public ResponseEntity downloadTaskLog(@ApiIgnore @RequestAttribute(value = Constants.SESSION_USER) User loginUser,
- @RequestParam(value = "taskInstId") int taskInstanceId) {
- try {
- byte[] logBytes = loggerService.getLogBytes(taskInstanceId);
- return ResponseEntity
- .ok()
- .header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=\"" + System.currentTimeMillis() + ".log" + "\"")
- .body(logBytes);
- } catch (Exception e) {
- logger.error(Status.DOWNLOAD_TASK_INSTANCE_LOG_FILE_ERROR.getMsg(), e);
- return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(Status.DOWNLOAD_TASK_INSTANCE_LOG_FILE_ERROR.getMsg());
- }
+ @RequestParam(value = "taskInstanceId") int taskInstanceId) {
+ byte[] logBytes = loggerService.getLogBytes(taskInstanceId);
+ return ResponseEntity
+ .ok()
+ .header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=\"" + System.currentTimeMillis() + ".log" + "\"")
+ .body(logBytes);
}
}
diff --git a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/LoginController.java b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/LoginController.java
index e3a862d376..ce21425605 100644
--- a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/LoginController.java
+++ b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/LoginController.java
@@ -18,6 +18,7 @@ package org.apache.dolphinscheduler.api.controller;
import org.apache.dolphinscheduler.api.enums.Status;
+import org.apache.dolphinscheduler.api.exceptions.ApiException;
import org.apache.dolphinscheduler.api.security.Authenticator;
import org.apache.dolphinscheduler.api.service.SessionService;
import org.apache.dolphinscheduler.api.utils.Result;
@@ -42,7 +43,7 @@ import static org.apache.dolphinscheduler.api.enums.Status.*;
/**
* user login controller
- *
+ *
* swagger bootstrap ui docs refer : https://doc.xiaominfo.com/guide/enh-func.html
*/
@Api(tags = "LOGIN_TAG", position = 1)
@@ -63,81 +64,71 @@ public class LoginController extends BaseController {
/**
* login
*
- * @param userName user name
+ * @param userName user name
* @param userPassword user password
- * @param request request
- * @param response response
+ * @param request request
+ * @param response response
* @return login result
*/
- @ApiOperation(value = "login", notes= "LOGIN_NOTES")
+ @ApiOperation(value = "login", notes = "LOGIN_NOTES")
@ApiImplicitParams({
@ApiImplicitParam(name = "userName", value = "USER_NAME", required = true, dataType = "String"),
- @ApiImplicitParam(name = "userPassword", value = "USER_PASSWORD", required = true, dataType ="String")
+ @ApiImplicitParam(name = "userPassword", value = "USER_PASSWORD", required = true, dataType = "String")
})
@PostMapping(value = "/login")
+ @ApiException(USER_LOGIN_FAILURE)
public Result login(@RequestParam(value = "userName") String userName,
@RequestParam(value = "userPassword") String userPassword,
HttpServletRequest request,
HttpServletResponse response) {
+ logger.info("login user name: {} ", userName);
- try {
- logger.info("login user name: {} ", userName);
-
- //user name check
- if (StringUtils.isEmpty(userName)) {
- return error(Status.USER_NAME_NULL.getCode(),
- Status.USER_NAME_NULL.getMsg());
- }
-
- // user ip check
- String ip = getClientIpAddress(request);
- if (StringUtils.isEmpty(ip)) {
- return error(IP_IS_EMPTY.getCode(), IP_IS_EMPTY.getMsg());
- }
-
- // verify username and password
- Result