From 88956c805e7bb6e5787446154449cf8e7f435f63 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期五, 20 三月 2026 16:11:27 +0800
Subject: [PATCH] 添加日志记录排查消息推送
---
xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java | 34 ++++++++++++++++++++++++++++++++--
1 files changed, 32 insertions(+), 2 deletions(-)
diff --git a/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java b/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java
index 782f226..621e44f 100644
--- a/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java
+++ b/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java
@@ -31,9 +31,11 @@
import com.xiaopeng.api.vo.automaticPilot.VehiclePosition;
import com.xiaopeng.api.vo.automaticPilot.protobuf.*;
import com.xiaopeng.api.vo.operation.RouteVo;
+import com.xiaopeng.api.vo.order.OrderTrajectoryVo;
import com.xiaopeng.api.vo.vehicleConvoy.CancelTaxiPassengerVo;
import com.xiaopeng.automaticPilot.util.XPUUtil;
import com.xiaopeng.common.core.constant.CacheConstants;
+import com.xiaopeng.common.core.constant.Constants;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.common.core.enums.OrderStatusEnum;
import com.xiaopeng.common.core.enums.PushMessageTypeEnum;
@@ -53,6 +55,8 @@
import javax.annotation.Resource;
import java.util.*;
+import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
@@ -363,6 +367,16 @@
// dto.setDistance(rtTripInfo.getRemaining_distance().intValue());
// dto.setDirection();
xpPushMessageClient.pushOrderRoute(dto);
+
+ //存储历史轨迹
+ OrderTrajectoryVo orderTrajectory = new OrderTrajectoryVo();
+ orderTrajectory.setOrderId(orderId);
+ orderTrajectory.setLocation(longitude + "," + latitude);
+ orderTrajectory.setDirection(dto.getDirection());
+ orderTrajectory.setSpeed(0D);
+ orderTrajectory.setLocatetime(System.currentTimeMillis());
+ orderTrajectory.setCreateTime(new Date());
+ xpOrderClient.saveVehicleLocation(orderTrajectory);
}
}
}
@@ -960,8 +974,24 @@
dto.setAppUserId(appUserId + "");
dto.setMessage(message);
R<String> stringR = xpPushMessageClient.sendStatus(dto);
- if (R.isError(stringR)) {
- log.error("推送消息失败:{}", stringR.getMsg());
+
+ //推送失败,重试3次
+ if(stringR.getCode() != Constants.SUCCESS){
+ ThreadPoolExecutor executor = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<>());
+ executor.execute(() -> {
+ for (int i = 0; i < 3; i++) {
+ R<String> stringR1 = xpPushMessageClient.sendStatus(dto);
+ if(stringR1.getCode() == Constants.SUCCESS){
+ break;
+ }
+ try {
+ Thread.sleep(1000);
+ } catch (InterruptedException e) {
+ throw new RuntimeException(e);
+ }
+ log.info("推送订单状态消息失败:{} {} {}", stringR1.getMsg(), JSON.toJSONString(dto), xpOrder.getOrderNumber());
+ }
+ });
}
}
--
Gitblit v1.7.1