[6.1.0] map add trace

This commit is contained in:
zhongchao
2023-09-26 11:56:33 +08:00
parent 27513d9856
commit 5f20ed3c62
5 changed files with 94 additions and 19 deletions

View File

@@ -35,8 +35,8 @@ import com.mogo.eagle.core.function.call.autopilot.CallerPlanningRottingListener
import com.mogo.eagle.core.function.call.map.CallerMapRomaListener
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager
import com.mogo.eagle.core.function.call.map.CallerVisualAngleManager.updateLongSightLevel
import com.mogo.eagle.core.function.utils.MapBizTrace
import com.mogo.eagle.core.function.utils.MapBizTrace.Companion.getCurrentCNode
import com.mogo.eagle.core.function.utils.MapRomaTrace
import com.mogo.eagle.core.function.utils.MapRomaTrace.Companion.getCurrentCNode
import com.mogo.eagle.core.utilcode.util.ToastUtils
import com.mogo.map.uicontroller.VisualAngleMode
import com.zhidaoauto.map.data.point.LonLatPoint
@@ -74,7 +74,7 @@ class AiCloudIdentifyDataManager : IMoGoPlanningRottingListener,
private val handler = Handler(Looper.getMainLooper()) {
if (it.what == H_ERROR_CLOUD) {
if (!aiCloudDataChange.get()) {
MapBizTrace.log(
MapRomaTrace.log(
CHAIN_CODE_ROMA_MAP_START, CHAIN_CODE_ROMA_CLOUD_ERROR, TAG,
mutableMapOf(
"msg" to "云端 $H_DELAY_TIME 秒内无感知数据下发",
@@ -83,7 +83,7 @@ class AiCloudIdentifyDataManager : IMoGoPlanningRottingListener,
)
)
} else {
MapBizTrace.log(
MapRomaTrace.log(
CHAIN_CODE_ROMA_MAP_START, CHAIN_CODE_ROMA_CLOUD_PUSH, TAG,
mutableMapOf(
"msg" to "延迟 $H_DELAY_TIME 秒内获取云端下发感知数据大小",
@@ -93,7 +93,7 @@ class AiCloudIdentifyDataManager : IMoGoPlanningRottingListener,
}
}
if (it.what == H_ERROR_MAP) {
MapBizTrace.log(
MapRomaTrace.log(
CHAIN_CODE_ROMA_MAP_START, CHAIN_CODE_ROMA_MAP_ERROR, TAG,
mutableMapOf("msg" to "地图漫游模式启动失败,原因:${it.obj}")
)
@@ -148,7 +148,7 @@ class AiCloudIdentifyDataManager : IMoGoPlanningRottingListener,
// 乘客司机屏屏各自单独控制漫游
if (romaStatus) {
// 开启roma当前非漫游开启
MapBizTrace.log(
MapRomaTrace.log(
"",
CHAIN_CODE_ROMA_CLICK,
TAG,
@@ -157,7 +157,7 @@ class AiCloudIdentifyDataManager : IMoGoPlanningRottingListener,
openRoma()
} else {
// 跟上次关联需要确认parent进度
MapBizTrace.log(getCurrentCNode(), CHAIN_CODE_ROMA_CLOSE_CLICK, TAG, "")
MapRomaTrace.log(getCurrentCNode(), CHAIN_CODE_ROMA_CLOSE_CLICK, TAG, "")
handler.removeMessages(H_ERROR_CLOUD)
closeRoma()
}
@@ -186,7 +186,7 @@ class AiCloudIdentifyDataManager : IMoGoPlanningRottingListener,
fun requestRangeOfIdentify(dataReceive: Boolean) {
val gnss = CallerChassisLocationWGS84ListenerManager.getChassisLocationWGS84().gnssInfo
// false改变父节点信息
MapBizTrace.log(
MapRomaTrace.log(
if (dataReceive) CHAIN_CODE_ROMA_CLICK else "", CHAIN_CODE_ROMA_REQUEST, TAG,
mutableMapOf(
"dataReceive" to dataReceive,
@@ -203,7 +203,7 @@ class AiCloudIdentifyDataManager : IMoGoPlanningRottingListener,
gnss.latitude,
{
// false改变父节点信息
MapBizTrace.log(
MapRomaTrace.log(
if (dataReceive) CHAIN_CODE_ROMA_REQUEST else "",
CHAIN_CODE_ROMA_REQUEST_OK,
TAG,
@@ -218,13 +218,13 @@ class AiCloudIdentifyDataManager : IMoGoPlanningRottingListener,
CallerMapUIServiceManager.getMapUIController()?.setRomaMode(FunctionBuildConfig.romaModeStyle)
}else{
// 保底清除策略
MapBizTrace.log("",CHAIN_CODE_ROMA_REQUEST_DELAY,TAG,mutableMapOf("delay" to true),true)
MapRomaTrace.log("",CHAIN_CODE_ROMA_REQUEST_DELAY,TAG,mutableMapOf("delay" to true),true)
MapIdentifySubscriber.instance.clearAiCloudRoma()
}
},
{ errorMsg ->
// false改变父节点信息
MapBizTrace.log(
MapRomaTrace.log(
if (dataReceive) CHAIN_CODE_ROMA_REQUEST else "",
CHAIN_CODE_ROMA_REQUEST_ERROR,
TAG,
@@ -248,7 +248,7 @@ class AiCloudIdentifyDataManager : IMoGoPlanningRottingListener,
super.mapRomaStatus(status, msg)
when (status) {
0 -> {
MapBizTrace.log(
MapRomaTrace.log(
CHAIN_CODE_ROMA_REQUEST_OK,
CHAIN_CODE_ROMA_MAP_READY_START,
TAG,
@@ -256,7 +256,7 @@ class AiCloudIdentifyDataManager : IMoGoPlanningRottingListener,
)
}
4 -> {
MapBizTrace.log(
MapRomaTrace.log(
CHAIN_CODE_ROMA_MAP_READY_START,
CHAIN_CODE_ROMA_MAP_START,
TAG,
@@ -280,14 +280,14 @@ class AiCloudIdentifyDataManager : IMoGoPlanningRottingListener,
closeRoma(false)
}
2 -> { // 地图自动漫游结束重置状态调用close通知服务端
MapBizTrace.log(
MapRomaTrace.log(
CHAIN_CODE_ROMA_MAP_START, CHAIN_CODE_ROMA_MAP_END, TAG,
mutableMapOf("romaEnd" to "地图结束回调,状态:$status"), true
)
reset()
}
3 -> { // 业务释放地图视角锁定,回调切换视角结束漫游
MapBizTrace.log(
MapRomaTrace.log(
CHAIN_CODE_ROMA_CLOSE_CLICK,
CHAIN_CODE_ROMA_MAP_CHANGE_END,
TAG, mutableMapOf("romaEnd" to "地图结束回调,状态:$status"), true
@@ -330,7 +330,7 @@ class AiCloudIdentifyDataManager : IMoGoPlanningRottingListener,
}
private fun updateRomaStyle(auto: Boolean, routeList: ArrayList<LonLatPoint>? = null) {
MapBizTrace.log(
MapRomaTrace.log(
"",
CHAIN_CODE_ROMA_ROUTE_MODE,
TAG,

View File

@@ -8,7 +8,7 @@ import com.zhjt.service.chain.ChainLog
import com.zhjt.service.chain.ChildNodeAlias
import com.zhjt.service.chain.ParentNodeAlias
class MapBizTrace {
class MapRomaTrace {
companion object {

View File

@@ -103,6 +103,7 @@ class ChainConstant {
const val CHAIN_CODE_MSG_BOX = "CHAIN_CODE_MSG_BOX"
const val CHAIN_CODE_HD_MAP_CALL = "CHAIN_CODE_HD_MAP_CALL"
const val CHAIN_CODE_HD_MAP_ROAD_CROSS = "CHAIN_CODE_HD_MAP_ROAD_CROSS"
const val CHAIN_CODE_HD_MAP_ICON_SET = "CHAIN_CODE_HD_MAP_ICON_SET"
const val CHAIN_CODE_HMI_ACTIONS = "CHAIN_CODE_HMI_ACTIONS"
//operation by user

View File

@@ -25,6 +25,7 @@ import com.mogo.eagle.core.utilcode.util.ThreadUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.map.listener.MogoMapListenerHandler.Companion.mogoMapListenerHandler
import com.mogo.map.uicontroller.*
import com.mogo.map.utils.MapTraceUtil
import com.mogo.map.utils.MogoMapUtils
import com.mogo.map.utils.ObjectUtils
import com.zhidaoauto.map.data.point.LonLatPoint
@@ -50,6 +51,7 @@ import com.zhidaoauto.map.sdk.open.tools.MapTools.getVisibleRegion
import com.zhidaoauto.map.sdk.open.tools.MapTools.toScreenLocation
import com.zhidaoauto.map.sdk.open.view.MapAutoView
import com.zhjt.service.chain.ChainLog
import java.util.concurrent.atomic.AtomicInteger
import kotlin.properties.Delegates
class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIController,
@@ -221,7 +223,7 @@ class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIControlle
invokeRoadChange(1, newValue)
return@let
}
if((newValue!!.cross_id_end.isNotEmpty() && oldValue.cross_id_end != newValue.cross_id_end)){
if ((newValue!!.cross_id_end.isNotEmpty() && oldValue.cross_id_end != newValue.cross_id_end)) {
//路口发生变化
i("$M_MAP$TAG", "路段发生变化 上个:${oldValue.cross_id_end} , 下个:${newValue.cross_id_end}")
invokeRoadChange(2, newValue)
@@ -554,9 +556,25 @@ class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIControlle
}
}
private var reChangeIconCount = AtomicInteger(0)
override fun changeCurrentIcon(iconId: Int) {
if (checkAMapView()) {
mMapView.getMapAutoViewHelper()!!.getMyLocationStyle()!!.myLocationIcon(iconId, true)
val changeResult = mMapView.getMapAutoViewHelper()!!.getMyLocationStyle()!!
.myLocationIcon(iconId, true)
if (!changeResult) {
val count = reChangeIconCount.incrementAndGet()
MapTraceUtil.log(
"", ChainConstant.CHAIN_CODE_HD_MAP_ICON_SET, TAG,
mapOf("changeCurrentIcon-count" to "$count")
)
if (count >= 3) {
return
}
UiThreadHandler.postDelayed({ changeCurrentIcon(iconId) }, 3000L,
UiThreadHandler.MODE.QUEUE)
reChangeIconCount.set(0)
}
}
}

View File

@@ -0,0 +1,56 @@
package com.mogo.map.utils
import com.mogo.commons.debug.DebugConfig
import com.mogo.eagle.core.data.deva.chain.ChainConstant
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.zhjt.service.chain.ChainLog
import com.zhjt.service.chain.ChildNodeAlias
import com.zhjt.service.chain.ParentNodeAlias
class MapTraceUtil {
companion object {
fun log(pN: String, cN: String, data: Any, data1: Any, end: Boolean = true) {
if (end) {
logEnd(pN, cN, data, data1)
} else {
realLog(pN, cN, data, data1)
}
}
@ChainLog(
linkChainLog = ChainConstant.CHAIN_TYPE_HD_MAP,
linkCode = ChainConstant.CHAIN_SOURCE_MAP,
paramIndexes = [2, 3],
endPoint = false
)
private fun realLog(
@ParentNodeAlias pN: String,
@ChildNodeAlias cN: String,
data: Any,
data1: Any
) {
if (DebugConfig.isDebug()) {
CallerLogger.d("${SceneConstant.M_MAP}$data", data1)
}
}
@ChainLog(
linkChainLog = ChainConstant.CHAIN_TYPE_HD_MAP,
linkCode = ChainConstant.CHAIN_SOURCE_MAP,
paramIndexes = [2, 3]
)
private fun logEnd(
@ParentNodeAlias pN: String,
@ChildNodeAlias cN: String,
data: Any,
data1: Any
) {
if (DebugConfig.isDebug()) {
CallerLogger.d("${SceneConstant.M_MAP}$data", data1)
}
}
}
}