增加异常入库
This commit is contained in:
@@ -4,6 +4,8 @@ package com.volvo.ai.analytic.center.mq;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.volvo.ai.analytic.center.dto.req.DiFyReq;
|
||||
import com.volvo.ai.analytic.center.entity.AiAnalysisErrors;
|
||||
import com.volvo.ai.analytic.center.service.AiAnalysisErrorsService;
|
||||
import com.volvo.ai.analytic.center.service.AiAnalysisRequestLogsService;
|
||||
import com.volvo.ai.analytic.center.service.DiFyService;
|
||||
import com.volvo.ai.analytic.center.utils.ConstantStr;
|
||||
@@ -56,6 +58,9 @@ public class AnalysisDifyMqConsumer implements RocketMQListener<MessageExt> {
|
||||
@Autowired
|
||||
private RedisCounterRateLimiter redisCounterRateLimiter;
|
||||
|
||||
@Autowired
|
||||
private AiAnalysisErrorsService aiAnalysisErrorsService;
|
||||
|
||||
private final ObjectMapper objectMapper = new ObjectMapper();
|
||||
|
||||
@Override
|
||||
@@ -76,7 +81,19 @@ public class AnalysisDifyMqConsumer implements RocketMQListener<MessageExt> {
|
||||
JSONObject difyRequest = JSONObject.parseObject(JSONObject.toJSONString(difyReq.getInputs()), JSONObject.class);
|
||||
String aiAnalysisRequestId = difyRequest.getString("aiAnalysisRequestId");
|
||||
// JSONObject json = future.get();
|
||||
future.thenAccept(result -> log.info("异步处理asyncExecuteDifyFlow完成aiAnalysisRequestId: {},处理结果:{}", aiAnalysisRequestId, result)).exceptionally(ex -> {
|
||||
future.thenAccept(result -> {
|
||||
log.info("异步处理asyncExecuteDifyFlow完成aiAnalysisRequestId: {},处理结果:{}", aiAnalysisRequestId, result);
|
||||
JSONObject data = result.getJSONObject("data");
|
||||
|
||||
if(null == result || data.get("status").equals("failed")){
|
||||
aiAnalysisErrorsService.saveAiAnalysisErrors(AiAnalysisErrors.builder()
|
||||
.aiAnalysisRequestId(aiAnalysisRequestId)
|
||||
.aiAnalysisRequestType(difyRequest.getString("aiAnalysisRequestType"))
|
||||
.aiAnalysisErrorHandlingStatus("0")
|
||||
.aiAnalysisErrorMessage(data.getString("error"))
|
||||
.build());
|
||||
}
|
||||
}).exceptionally(ex -> {
|
||||
log.error("异步处理asyncExecuteDifyFlow 失败aiAnalysisRequestId: {} ,{}", aiAnalysisRequestId,ex.getMessage());
|
||||
return null;
|
||||
});
|
||||
|
||||
@@ -123,6 +123,7 @@ public class AiAnalysisDifyServiceImpl implements AiAnalysisDifyService {
|
||||
diFyReq.setFlowId(tcBusinessType.getWorkflowApiKey());
|
||||
JSONObject difyRequest = JSONObject.parseObject(JSONObject.toJSONString(analysisReq.getData()), JSONObject.class);
|
||||
difyRequest.put("aiAnalysisRequestId", aiAnalysisRequestId);
|
||||
difyRequest.put("aiAnalysisRequestType", tcBusinessType.getBusinessRequestType() );
|
||||
diFyReq.setInputs(difyRequest);
|
||||
return diFyReq;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user