diff --git a/app/build.gradle b/app/build.gradle index c1354c58fc..718938602a 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -5,9 +5,6 @@ apply plugin: 'kotlin-android-extensions' apply plugin: 'android-aspectjx' apply plugin: 'bugly' -if (!isAndroidTestBuild()) { - apply plugin: 'apm-plugin' -} //apply ByteX宿主 @@ -20,72 +17,76 @@ if (!isAndroidTestBuild()) { } } -if (!isAndroidTestBuild()) { - apply plugin: 'bytex.threadOpt' - thread_opt { - enable true - enableInDebug true - rxJavaIoReplacer 'com/mogo/eagle/core/utilcode/util/ThreadUtils@@getIoPool@@()Ljava/util/concurrent/ExecutorService;' - rxJavaComputationReplacer 'com/mogo/eagle/core/utilcode/util/ThreadUtils@@getCpuPool@@()Ljava/util/concurrent/ExecutorService;' - coroutineIoReplacer 'com/mogo/eagle/core/utilcode/util/ThreadUtils@@getIoPool@@()Ljava/util/concurrent/ExecutorService;' - coroutineDefaultReplacer 'com/mogo/eagle/core/utilcode/util/ThreadUtils@@getCpuPool@@()Ljava/util/concurrent/ExecutorService;' - } - - /** - * 方便使用systrace工具,在工程侧打点,便于分析工程侧性能问题 - */ - apply plugin: 'bytex.systrace' - systrace { - /** - * 交付时要关闭,会有性能损耗 - */ - enable false - enableInDebug false - /** - * - 是否使用[Trace.beginAsyncSection(String, int)/Trace.endAsyncSection(String, int)]进行打点 - * - 默认使用[Trace.beginSection(String)/Trace.endSection()]进行打点 - */ - isTraceAsync false - /** - * - 是否在运行时只针对主线程打点,其它线程不打 - */ - isOnlyMainThread false - - /** - * - 是否忽略对类的静态构造方法打点 - * - 默认不忽略 - */ - isIgnoreClinitMethod false - - /** - * - 是否忽略对类中的简单方法打点 - * 简单方法定义: - * - 空方法 - * - get/set 方法 - * - 单独的方法,方法体内没有调用其它方法 - * - 默认不忽略 - */ - isIgnoreSampleMethod false - - /** - * - 针对特定类集合,配置打点白名单,在此集合中的类中的所有方法不打点 - * - 支持正则表达式 - */ - whiteListForClass = [] - - /** - * - 针对特定包名集合,配置打点白名单,所有类以此包名为前缀的类不打点 - * - 支持正则表达式 - */ - whiteListForPackage = [] - } -} - - -/*apply plugin: 'chain.log.hook' +apply plugin: 'chain.log.hook' hooklog{ enableLoggerToServer true -}*/ +} + +//if (!isAndroidTestBuild()) { +// apply plugin: 'apm-plugin' +//} + +//if (!isAndroidTestBuild()) { +// apply plugin: 'bytex.threadOpt' +// thread_opt { +// enable true +// enableInDebug true +// rxJavaIoReplacer 'com/mogo/eagle/core/utilcode/util/ThreadUtils@@getIoPool@@()Ljava/util/concurrent/ExecutorService;' +// rxJavaComputationReplacer 'com/mogo/eagle/core/utilcode/util/ThreadUtils@@getCpuPool@@()Ljava/util/concurrent/ExecutorService;' +// coroutineIoReplacer 'com/mogo/eagle/core/utilcode/util/ThreadUtils@@getIoPool@@()Ljava/util/concurrent/ExecutorService;' +// coroutineDefaultReplacer 'com/mogo/eagle/core/utilcode/util/ThreadUtils@@getCpuPool@@()Ljava/util/concurrent/ExecutorService;' +// } +// +// /** +// * 方便使用systrace工具,在工程侧打点,便于分析工程侧性能问题 +// */ +// apply plugin: 'bytex.systrace' +// systrace { +// /** +// * 交付时要关闭,会有性能损耗 +// */ +// enable false +// enableInDebug false +// /** +// * - 是否使用[Trace.beginAsyncSection(String, int)/Trace.endAsyncSection(String, int)]进行打点 +// * - 默认使用[Trace.beginSection(String)/Trace.endSection()]进行打点 +// */ +// isTraceAsync false +// /** +// * - 是否在运行时只针对主线程打点,其它线程不打 +// */ +// isOnlyMainThread false +// +// /** +// * - 是否忽略对类的静态构造方法打点 +// * - 默认不忽略 +// */ +// isIgnoreClinitMethod false +// +// /** +// * - 是否忽略对类中的简单方法打点 +// * 简单方法定义: +// * - 空方法 +// * - get/set 方法 +// * - 单独的方法,方法体内没有调用其它方法 +// * - 默认不忽略 +// */ +// isIgnoreSampleMethod false +// +// /** +// * - 针对特定类集合,配置打点白名单,在此集合中的类中的所有方法不打点 +// * - 支持正则表达式 +// */ +// whiteListForClass = [] +// +// /** +// * - 针对特定包名集合,配置打点白名单,所有类以此包名为前缀的类不打点 +// * - 支持正则表达式 +// */ +// whiteListForPackage = [] +// } +//} + bugly { appId = 'ac71228f85' // 注册时分配的App ID appKey = '3c736249-d6be-4066-b577-b7a6dc975cf7' // 注册时分配的App Key @@ -260,31 +261,31 @@ dependencies { androidTestImplementation rootProject.ext.dependencies.androidx_espresso_core } -if (!isAndroidTestBuild()) { - ApmPlugin { - // 是否进行插桩 - enable true - // 是否在Debug包插桩,默认不插桩 - enableInDebug true - // DEBUG("DEBUG"), INFO("INFO"), WARN("WARN"), ERROR("ERROR"); - // INFO 级别Log会汇总所有被插桩处理的类供查看,路径 app/build/ByteX/ApmPlugin - logLevel "DEBUG" - // 启动分析开关:监控App启动耗时,需要同时开启pageLoadSwitch - startSwitch = true - // 页面响应开关:监控Activity的生命周期耗时 - pageLoadSwitch = true - // 网络监控开关:监控okhttp3的网络请求 - okHttp3Switch = true - // 白名单下的包进行插桩,需要填写要插装类所在的包名,支持前缀配置 - whiteList = [ - "com.mogo" - ] - // 黑名单包下类不进行插桩,可以配置包名和类名,没有可以填空 - blackList = [ - - ] - } -} +//if (!isAndroidTestBuild()) { +// ApmPlugin { +// // 是否进行插桩 +// enable true +// // 是否在Debug包插桩,默认不插桩 +// enableInDebug true +// // DEBUG("DEBUG"), INFO("INFO"), WARN("WARN"), ERROR("ERROR"); +// // INFO 级别Log会汇总所有被插桩处理的类供查看,路径 app/build/ByteX/ApmPlugin +// logLevel "DEBUG" +// // 启动分析开关:监控App启动耗时,需要同时开启pageLoadSwitch +// startSwitch = true +// // 页面响应开关:监控Activity的生命周期耗时 +// pageLoadSwitch = true +// // 网络监控开关:监控okhttp3的网络请求 +// okHttp3Switch = true +// // 白名单下的包进行插桩,需要填写要插装类所在的包名,支持前缀配置 +// whiteList = [ +// "com.mogo" +// ] +// // 黑名单包下类不进行插桩,可以配置包名和类名,没有可以填空 +// blackList = [ +// +// ] +// } +//} android.applicationVariants.all { variant -> def buildTime = new Date().format("yyyyMMdd", TimeZone.getTimeZone("GMT+08:00")) diff --git a/app/src/androidTest/java/com/mogo/functions/test/AutoPilotBadCaseTest.kt b/app/src/androidTest/java/com/mogo/functions/test/AutoPilotBadCaseTest.kt index 8657b3107e..3ad1fd561d 100644 --- a/app/src/androidTest/java/com/mogo/functions/test/AutoPilotBadCaseTest.kt +++ b/app/src/androidTest/java/com/mogo/functions/test/AutoPilotBadCaseTest.kt @@ -5,7 +5,7 @@ import androidx.test.core.app.ActivityScenario import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.LargeTest import com.mogo.eagle.core.data.autopilot.AutoPilotRecordResult -import com.mogo.eagle.core.function.hmi.ui.MoGoHmiFragment +import com.mogo.eagle.core.function.hmi.ui.MoGoHm·iFragment import com.mogo.eagle.core.function.main.MainLauncherActivity import kotlinx.coroutines.* import kotlinx.coroutines.flow.* diff --git a/build.gradle b/build.gradle index c6d6a9c787..260cc9f6fd 100644 --- a/build.gradle +++ b/build.gradle @@ -36,8 +36,6 @@ buildscript { classpath 'com.mogo.cloud:thread_opt:1.0.0' classpath 'com.mogo.cloud:systrace:1.0.1' classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.8' -// classpath "com.bytedance.android.byteX:base-plugin:0.3.0" -// classpath "com.mogo.cloud:hook:${HOOK_LOG_VERSION}" // classpath ("com.tencent.matrix:matrix-gradle-plugin:0.6.6") { changing = true } } diff --git a/core/function-impl/mogo-core-function-autopilot/build.gradle b/core/function-impl/mogo-core-function-autopilot/build.gradle index 0cf2df7226..2e837d3467 100644 --- a/core/function-impl/mogo-core-function-autopilot/build.gradle +++ b/core/function-impl/mogo-core-function-autopilot/build.gradle @@ -51,7 +51,7 @@ dependencies { kapt rootProject.ext.dependencies.aroutercompiler - implementation rootProject.ext.dependencies.adasHigh +// implementation rootProject.ext.dependencies.adasHigh if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { implementation rootProject.ext.dependencies.mogo_core_data @@ -63,6 +63,7 @@ dependencies { implementation project(':core:mogo-core-utils') implementation project(':core:mogo-core-function-api') implementation project(':core:mogo-core-function-call') + implementation project(':libraries:mogo-adas') } } diff --git a/core/function-impl/mogo-core-function-map/build.gradle b/core/function-impl/mogo-core-function-map/build.gradle index cc7eeed20f..a7f911ad00 100644 --- a/core/function-impl/mogo-core-function-map/build.gradle +++ b/core/function-impl/mogo-core-function-map/build.gradle @@ -50,7 +50,7 @@ dependencies { implementation rootProject.ext.dependencies.rxandroid kapt rootProject.ext.dependencies.aroutercompiler - implementation rootProject.ext.dependencies.adasHigh +// implementation rootProject.ext.dependencies.adasHigh if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { implementation rootProject.ext.dependencies.mogoserviceapi @@ -74,6 +74,8 @@ dependencies { implementation project(":libraries:mogo-map") implementation project(":libraries:mogo-map-api") + + implementation project(':libraries:mogo-adas') } } diff --git a/core/function-impl/mogo-core-function-v2x/build.gradle b/core/function-impl/mogo-core-function-v2x/build.gradle index e8df059182..5ec1a4c322 100644 --- a/core/function-impl/mogo-core-function-v2x/build.gradle +++ b/core/function-impl/mogo-core-function-v2x/build.gradle @@ -53,7 +53,7 @@ dependencies { implementation rootProject.ext.dependencies.flexbox kapt rootProject.ext.dependencies.aroutercompiler - implementation rootProject.ext.dependencies.adasHigh +// implementation rootProject.ext.dependencies.adasHigh implementation rootProject.ext.dependencies.mogo_v2x implementation rootProject.ext.dependencies.mogoaicloudtrafficlive if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { @@ -75,6 +75,8 @@ dependencies { implementation project(':modules:mogo-module-carchattingprovider') implementation project(':core:mogo-core-res') + implementation project(':libraries:mogo-adas') + } } diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/chain/ChainConstant.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/chain/ChainConstant.kt new file mode 100644 index 0000000000..f48d43b91f --- /dev/null +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/chain/ChainConstant.kt @@ -0,0 +1,25 @@ +package com.mogo.eagle.core.data.chain + +class ChainConstant { + + companion object{ + + const val CHAIN_LINK_CLOUD_SHOW = 0 + const val CHAIN_LINK_ADAS = 1 + + const val CHAIN_ALIAS_CODE_UDP_INIT = "PAD_ADAS_UDP_INIT" + const val CHAIN_ALIAS_CODE_UDP_CONNECT_ADDRESS = "PAD_ADAS_UDP_CONNECT_ADDRESS" + const val CHAIN_ALIAS_CODE_WEB_SOCKET_OPEN = "PAD_ADAS_WEB_SOCKET_OPEN" + const val CHAIN_ALIAS_CODE_WEB_SOCKET_MESSAGE_JSON = "PAD_ADAS_WEB_SOCKET_MESSAGE_JSON" + const val CHAIN_ALIAS_CODE_WEB_SOCKET_MESSAGE_BYTE = "PAD_ADAS_WEB_SOCKET_MESSAGE_BYTE" + const val CHAIN_ALIAS_CODE_ADAS_MESSAGE_RECT_DATA = "PAD_ADAS_MESSAGE_AUTOPILOT_RECT_DATA" + const val CHAIN_ALIAS_CODE_ADAS_MESSAGE_CAR_STATE = "PAD_ADAS_MESSAGE_AUTOPILOT_CAR_STATE" + const val CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_STATUS = "PAD_ADAS_MESSAGE_AUTOPILOT_STATUS" + const val CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_ARRIVE = "PAD_ADAS_MESSAGE_AUTOPILOT_ARRIVE" + const val CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_ROUTE = "PAD_ADAS_MESSAGE_AUTOPILOT_ROUTE" + const val CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_TRAJECTORY = "PAD_ADAS_MESSAGE_AUTOPILOT_TRAJECTORY" + const val CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_GUARDIAN = "PAD_ADAS_MESSAGE_AUTOPILOT_GUARDIAN" + const val CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_RECORD = "PAD_ADAS_MESSAGE_AUTOPILOT_RECORD" + const val CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_WARN = "PAD_ADAS_MESSAGE_AUTOPILOT_WARN" + } +} \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 434b03b691..5725da0b85 100644 --- a/gradle.properties +++ b/gradle.properties @@ -56,8 +56,8 @@ bytex.forbidUseLenientMutationDuringGetArtifact=true bytex.verifyProguardConfigurationChanged=false bytex.ASM_API=ASM7 -HOOK_LOG_VERSION=1.4.109 -SERVICE_CHAIN_VERSION=1.0.43 +HOOK_LOG_VERSION=1.5.0 +SERVICE_CHAIN_VERSION=1.0.47 ################ 外部依赖引用 ################ # loglib LOGLIB_VERSION=1.1.18 diff --git a/libraries/mogo-adas/build.gradle b/libraries/mogo-adas/build.gradle index e24df46820..1ad426e62a 100644 --- a/libraries/mogo-adas/build.gradle +++ b/libraries/mogo-adas/build.gradle @@ -67,6 +67,8 @@ android { dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) + + implementation rootProject.ext.dependencies.mogochainbase //okhttp3的依赖 implementation 'com.squareup.okhttp3:okhttp:3.12.3' // parser @@ -80,6 +82,12 @@ dependencies { implementation 'com.jcraft:jsch:0.1.55' // api project(path: ':lib_recorder') api "com.zhidao.support.recorder:recorder:1.0.0.3" + + if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { + implementation rootProject.ext.dependencies.mogo_core_data + } else { + implementation project(':core:mogo-core-data') + } } //task androidSourcesJar(type: Jar) { diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java index c01887c6bd..985848fbd2 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java @@ -1,5 +1,6 @@ package com.zhidao.support.adas.high; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_ALIAS_CODE_UDP_CONNECT_ADDRESS; import static com.zhidao.support.adas.high.common.ActionTypeReceive.ACTION_WS_AUTOPILOT_CONTROL; import static com.zhidao.support.adas.high.udp.CupidUdpConstract.VIDEO_RENDER_IMAGE_UDP; @@ -39,6 +40,8 @@ import com.zhidao.support.adas.high.socket.read.SocketReader; import com.zhidao.support.adas.high.udp.CupidUdpConstract; import com.zhidao.support.adas.high.udp.IConnectRtpListener; import com.zhidao.support.adas.high.udp.IGetH264Data; +import com.zhjt.service.chain.ChainLog; +import com.zhjt.service.chain.TracingConstants; import org.json.JSONObject; @@ -109,6 +112,7 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec this(context, null); } + AdasChannel(Context context, String ipAddr) { initData(context); this.ipAddr = ipAddr; @@ -167,6 +171,11 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec } } + @ChainLog(linkCode = 1, + endpoint = TracingConstants.Endpoint.PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_UDP_CONNECT_ADDRESS, + paramIndexes = {0}, + clientPkFileName = "sn") private void connectSocket(String address) { mSocket.connectWebSocket(address); } diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/socket/FpgaSocket.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/socket/FpgaSocket.java index 34052cb95e..6f77fe585b 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/socket/FpgaSocket.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/socket/FpgaSocket.java @@ -1,17 +1,25 @@ package com.zhidao.support.adas.high.socket; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_ALIAS_CODE_WEB_SOCKET_MESSAGE_BYTE; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_ALIAS_CODE_WEB_SOCKET_MESSAGE_JSON; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_ALIAS_CODE_WEB_SOCKET_OPEN; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_LINK_ADAS; +import static com.zhidao.support.adas.high.common.Constants.WS_IP_HOST_HEAD; +import static com.zhidao.support.adas.high.common.Constants.WS_PORT; + import android.graphics.Bitmap; import android.text.TextUtils; import com.google.gson.Gson; import com.google.protobuf.InvalidProtocolBufferException; import com.zhidao.support.adas.high.AdasChannel; -import com.zhidao.support.adas.high.common.CupidLogUtils; import com.zhidao.support.adas.high.bean.FaceLoginResponse; -import com.zhidao.support.adas.high.common.DigitalTrans; +import com.zhidao.support.adas.high.common.CupidLogUtils; import com.zhidao.support.adas.high.common.RequestWsMsgType; import com.zhidao.support.adas.high.queue.WSByteQueueManager; import com.zhidao.support.adas.high.queue.WebSocketQueueManager; +import com.zhjt.service.chain.ChainLog; +import com.zhjt.service.chain.TracingConstants; import org.json.JSONArray; import org.json.JSONException; @@ -21,7 +29,6 @@ import java.io.File; import java.util.List; import java.util.concurrent.TimeUnit; -import adas.Adas; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; @@ -29,9 +36,6 @@ import okhttp3.WebSocket; import okhttp3.WebSocketListener; import okio.ByteString; -import static com.zhidao.support.adas.high.common.Constants.WS_IP_HOST_HEAD; -import static com.zhidao.support.adas.high.common.Constants.WS_PORT; - /** * @ProjectName: lib-adas-fpga * @Package: com.zhidao.lib.adas.high @@ -79,6 +83,11 @@ public class FpgaSocket implements IWebSocket { } } + @ChainLog(linkCode = 1, + endpoint = TracingConstants.Endpoint.PAD, + nodeAliasCode = "PAD_YINGYAN_ADAS", + paramIndexes = {0}, + clientPkFileName = "sn") @Override public void connectWebSocket(String address) { String wsHost = WS_IP_HOST_HEAD + address + WS_PORT; @@ -95,7 +104,7 @@ public class FpgaSocket implements IWebSocket { @Override public void closeWebSocket() { CupidLogUtils.e("===>closeWebSocket"); - if (AdasChannel.isUseQueue){ + if (AdasChannel.isUseQueue) { WebSocketQueueManager.getInstance().release(); WSByteQueueManager.getInstance().release(); } @@ -239,7 +248,7 @@ public class FpgaSocket implements IWebSocket { public interface IWebSocketConnectListener { void onWebSocketConnectSuccess(WebSocket webSocket); - void onWebSocketConnectFailed(WebSocket webSocket,String t); + void onWebSocketConnectFailed(WebSocket webSocket, String t); void onMessage(String message); @@ -251,6 +260,12 @@ public class FpgaSocket implements IWebSocket { } public class EchoWebSocketListener extends WebSocketListener { + + @ChainLog(linkCode = CHAIN_LINK_ADAS, + endpoint = TracingConstants.Endpoint.PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_WEB_SOCKET_OPEN, + paramIndexes = {1}, + clientPkFileName = "sn") @Override public void onOpen(WebSocket webSocket, Response response) { super.onOpen(webSocket, response); @@ -259,6 +274,11 @@ public class FpgaSocket implements IWebSocket { mWebSocketConnectListener.onWebSocketConnectSuccess(webSocket); } + @ChainLog(linkCode = CHAIN_LINK_ADAS, + endpoint = TracingConstants.Endpoint.PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_WEB_SOCKET_MESSAGE_JSON, + paramIndexes = {1}, + clientPkFileName = "sn") @Override public void onMessage(WebSocket webSocket, String text) { super.onMessage(webSocket, text); @@ -273,12 +293,16 @@ public class FpgaSocket implements IWebSocket { } } - + @ChainLog(linkCode = CHAIN_LINK_ADAS, + endpoint = TracingConstants.Endpoint.PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_WEB_SOCKET_MESSAGE_BYTE, + paramIndexes = {1}, + clientPkFileName = "sn") @Override public void onMessage(WebSocket webSocket, ByteString bytes) { super.onMessage(webSocket, bytes); CupidLogUtils.e("--->websocket response connect byte" + bytes.hex()); - if (bytes==null){ + if (bytes == null) { return; } if (AdasChannel.isUseQueue) { @@ -305,7 +329,7 @@ public class FpgaSocket implements IWebSocket { super.onClosed(webSocket, code, reason); mWebSocket = null; CupidLogUtils.e("--->websocket onClosed ==> " + reason); - mWebSocketConnectListener.onWebSocketConnectFailed(webSocket,reason); + mWebSocketConnectListener.onWebSocketConnectFailed(webSocket, reason); } @Override @@ -313,7 +337,7 @@ public class FpgaSocket implements IWebSocket { super.onFailure(webSocket, t, response); mWebSocket = null; CupidLogUtils.e("--->websocket onFailure ===>" + t.getMessage()); - mWebSocketConnectListener.onWebSocketConnectFailed(webSocket,t.toString()); + mWebSocketConnectListener.onWebSocketConnectFailed(webSocket, t.toString()); } } diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/udp/CupidUdpConstract.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/udp/CupidUdpConstract.java index 77022ac8df..98b5164f23 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/udp/CupidUdpConstract.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/udp/CupidUdpConstract.java @@ -1,9 +1,14 @@ package com.zhidao.support.adas.high.udp; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_ALIAS_CODE_UDP_INIT; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_LINK_ADAS; + import com.zhidao.support.adas.high.common.CupidLogUtils; import com.zhidao.support.adas.high.udp.factory.AbstractUdpImpl; import com.zhidao.support.adas.high.udp.factory.CupidUdpFactory; +import com.zhjt.service.chain.ChainLog; +import com.zhjt.service.chain.TracingConstants; /** * @author nie yunlong @@ -45,6 +50,11 @@ public class CupidUdpConstract { /** * 初始化UDPserver 接收数据 */ + @ChainLog(linkCode = CHAIN_LINK_ADAS, + endpoint = TracingConstants.Endpoint.PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_UDP_INIT, + paramIndexes = {0}, + clientPkFileName = "sn") private void init(int udpType) { if (udpType == VIDEO_STREAM_UDP) { udpImpl = CupidUdpFactory.createVideoStreamUdp(); diff --git a/modules/mogo-module-adas/build.gradle b/modules/mogo-module-adas/build.gradle index 28b5c71236..6875245931 100644 --- a/modules/mogo-module-adas/build.gradle +++ b/modules/mogo-module-adas/build.gradle @@ -47,10 +47,11 @@ dependencies { implementation rootProject.ext.dependencies.arouter kapt rootProject.ext.dependencies.aroutercompiler + implementation rootProject.ext.dependencies.mogochainbase // 现有的ADAS的通讯SDK,需要将里面的东西融合到我们项目中 compileOnly rootProject.ext.dependencies.adasapi - api rootProject.ext.dependencies.adasHigh +// api rootProject.ext.dependencies.adasHigh implementation rootProject.ext.dependencies.mogoami annotationProcessor rootProject.ext.dependencies.aroutercompiler @@ -74,6 +75,8 @@ dependencies { implementation project(':core:mogo-core-utils') implementation project(':core:mogo-core-function-api') implementation project(':core:mogo-core-function-call') + + implementation project(':libraries:mogo-adas') } } apply from: new File(rootProject.rootDir, "gradle/upload.gradle").toString() diff --git a/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/OnAdasListenerAdapter.java b/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/OnAdasListenerAdapter.java index f3cc8039b2..048e23b52a 100644 --- a/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/OnAdasListenerAdapter.java +++ b/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/OnAdasListenerAdapter.java @@ -1,5 +1,16 @@ package com.mogo.module.adas; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_ARRIVE; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_GUARDIAN; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_RECORD; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_ROUTE; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_STATUS; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_TRAJECTORY; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_WARN; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_ALIAS_CODE_ADAS_MESSAGE_CAR_STATE; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_ALIAS_CODE_ADAS_MESSAGE_RECT_DATA; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_LINK_ADAS; + import android.util.Log; import com.mogo.eagle.core.data.autopilot.ADASTrajectoryInfo; @@ -25,7 +36,6 @@ import com.zhidao.support.adas.high.bean.AutopilotStatus; import com.zhidao.support.adas.high.bean.AutopilotWayArrive; import com.zhidao.support.adas.high.bean.CarLaneInfo; import com.zhidao.support.adas.high.bean.CarStateInfo; -import com.zhidao.support.adas.high.bean.IPCUpgradeInfo; import com.zhidao.support.adas.high.bean.IPCUpgradeStateInfo; import com.zhidao.support.adas.high.bean.LightStatueInfo; import com.zhidao.support.adas.high.bean.ObstaclesInfo; @@ -36,6 +46,8 @@ import com.zhidao.support.adas.high.bean.WarnMessageInfo; import com.zhidao.support.adas.high.bean.guardian.AutopilotGuardianInfo; import com.zhidao.support.adas.high.bean.record.AutopilotRecordResult; import com.zhidao.support.obu.ami.AmiClientManager; +import com.zhjt.service.chain.ChainLog; +import com.zhjt.service.chain.TracingConstants; import java.util.ArrayList; import java.util.List; @@ -49,7 +61,11 @@ import java.util.List; public class OnAdasListenerAdapter implements OnAdasListener { private final String TAG = "OnAdasListenerAdapter"; - + @ChainLog(linkCode = CHAIN_LINK_ADAS, + endpoint = TracingConstants.Endpoint.PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_RECT_DATA, + paramIndexes = {0}, + clientPkFileName = "sn") @Override public void onRectData(RectInfo rectInfo) { if (HdMapBuildConfig.isMapLoaded) { @@ -58,7 +74,11 @@ public class OnAdasListenerAdapter implements OnAdasListener { } } - + @ChainLog(linkCode = CHAIN_LINK_ADAS, + endpoint = TracingConstants.Endpoint.PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_CAR_STATE, + paramIndexes = {0}, + clientPkFileName = "sn") @Override public void onCarStateData(CarStateInfo carStateInfo) { if (HdMapBuildConfig.isMapLoaded) { @@ -87,6 +107,11 @@ public class OnAdasListenerAdapter implements OnAdasListener { } } + @ChainLog(linkCode = CHAIN_LINK_ADAS, + endpoint = TracingConstants.Endpoint.PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_STATUS, + paramIndexes = {0}, + clientPkFileName = "sn") @Override public void autopilotStatus(AutopilotStatus autopilotStatus) { if (HdMapBuildConfig.isMapLoaded) { @@ -113,6 +138,11 @@ public class OnAdasListenerAdapter implements OnAdasListener { } } + @ChainLog(linkCode = CHAIN_LINK_ADAS, + endpoint = TracingConstants.Endpoint.PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_ARRIVE, + paramIndexes = {0}, + clientPkFileName = "sn") @Override public void autopilotArrive(AutopilotWayArrive autopilotWayArrive) { if (HdMapBuildConfig.isMapLoaded) { @@ -131,6 +161,11 @@ public class OnAdasListenerAdapter implements OnAdasListener { } } + @ChainLog(linkCode = CHAIN_LINK_ADAS, + endpoint = TracingConstants.Endpoint.PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_ROUTE, + paramIndexes = {0}, + clientPkFileName = "sn") @Override public void onAutopilotRoute(AutopilotRoute route) { if (HdMapBuildConfig.isMapLoaded) { @@ -140,6 +175,11 @@ public class OnAdasListenerAdapter implements OnAdasListener { } } + @ChainLog(linkCode = CHAIN_LINK_ADAS, + endpoint = TracingConstants.Endpoint.PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_TRAJECTORY, + paramIndexes = {0}, + clientPkFileName = "sn") @Override public void onAutopilotTrajectory(List trajectoryList) { if (HdMapBuildConfig.isMapLoaded) { @@ -170,6 +210,11 @@ public class OnAdasListenerAdapter implements OnAdasListener { CallerAutoPilotStatusListenerManager.INSTANCE.invokeAutopilotSNRequest(); } + @ChainLog(linkCode = CHAIN_LINK_ADAS, + endpoint = TracingConstants.Endpoint.PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_GUARDIAN, + paramIndexes = {0}, + clientPkFileName = "sn") @Override public void onAutopilotGuardian(AutopilotGuardianInfo guardianInfo) { if (HdMapBuildConfig.isMapLoaded) { @@ -178,6 +223,11 @@ public class OnAdasListenerAdapter implements OnAdasListener { } } + @ChainLog(linkCode = CHAIN_LINK_ADAS, + endpoint = TracingConstants.Endpoint.PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_RECORD, + paramIndexes = {0}, + clientPkFileName = "sn") @Override public void onAutopilotRecord(AutopilotRecordResult result) { if (result != null) { @@ -212,7 +262,11 @@ public class OnAdasListenerAdapter implements OnAdasListener { } - + @ChainLog(linkCode = CHAIN_LINK_ADAS, + endpoint = TracingConstants.Endpoint.PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_WARN, + paramIndexes = {0}, + clientPkFileName = "sn") @Override public void onWarnMessage(WarnMessageInfo warnMessageInfo) { final AutopilotWarnMessage warnMessage = AdasObjectUtils.INSTANCE.fromAdasObject(warnMessageInfo); @@ -226,6 +280,7 @@ public class OnAdasListenerAdapter implements OnAdasListener { /** * 工控机升级状态 + * * @param info 工控机升级状态 */ @Override @@ -264,7 +319,6 @@ public class OnAdasListenerAdapter implements OnAdasListener { // } - @Override public void onSSHResult(SSHResult info) { diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/SnapshotSetDataDrawer.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/SnapshotSetDataDrawer.java index c6fa8939fc..9eef614826 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/SnapshotSetDataDrawer.java +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/SnapshotSetDataDrawer.java @@ -1,5 +1,6 @@ package com.mogo.module.common.drawer; +import static com.mogo.eagle.core.data.chain.ChainConstant.CHAIN_LINK_CLOUD_SHOW; import static com.mogo.module.common.constants.DataTypes.TYPE_MARKER_CLOUD_DATA; import android.os.Build; @@ -140,11 +141,11 @@ public class SnapshotSetDataDrawer extends BaseDrawer implements IMogoMarkerClic * * @param data 自车周边数据 */ - @ChainLog(linkCode = 0, - endpoint = TracingConstants.Endpoint.PAD, - nodeAliasCode = "PAD_YINGYAN_SHOW", - paramIndexes = {0}, - clientPkFileName = "sn") +// @ChainLog(linkCode = CHAIN_LINK_CLOUD_SHOW, +// endpoint = TracingConstants.Endpoint.PAD, +// nodeAliasCode = "PAD_YINGYAN_SHOW", +// paramIndexes = {0}, +// clientPkFileName = "sn") public void renderSnapshotData(SocketDownData.LauncherSnapshotProto data) { final long start = System.nanoTime(); if (clear(data)) {