Closed fireblackman closed 4 months ago
grpc server in docker, port is same.
ifconfig in docker
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.17.0.5 netmask 255.255.0.0 broadcast 172.17.255.255
ether 02:42:ac:11:00:05 txqueuelen 0 (Ethernet)
RX packets 6812 bytes 8602382 (8.2 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 3259 bytes 686989 (670.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
What is the function of this judgment?
Looking forward to your reply, thank you!
f. Lengh indicates the size of the payload in the Frame. The payload of the TCP packet should be larger than this value.
2024/07/30 17:19:18 [error] get TCP pkg:127.0.0.1:39792 -> 127.0.0.1:6789, seq:2194564660, tcp flags:[PSH ACK]
This line of error log is caused by an bug in the connection preface processing.I have fix it in tag v0.0.6. If you update the code and rebuild it, this log will no longer appear.The program exit is not caused by this problem
2024/07/30 17:19:18 [fatal] protodesc.NewFile, svcAndMethod:/xxxxxx.xxxxxxx.xxxxxx/PushHighFrameVehicleStatus
The program exited because an error was reported when trying to obtain the definition of /xxxxxx.xxxxxxx.xxxxxx/PushHighFrameVehicleStatus through reflection
If you can provide a demo, I can analyze the problem further. @fireblackman
The production project is more complex, not very easy to generate the demo, whether the tcpdump packets can be used for positioning the problem, I can provide
Looks like a parsing imported package failed, but why?
Project proto directory and initialization script
I guess it's because the method and input parameters are defined in different proto files. I'll test it later. @fireblackman
I have fixed it. please update code and rebuild bin file and try again. @fireblackman
$ sudo ./grpcr --input-raw="127.0.0.1:6789" --output-stdout --output-grpc="grpc://192.168.3.69:20001"
/ __// \ / \ / __// \
/ / / // // // // / / // /
/ // // , // // /_ / , /
__/// ||/_/ \/// ||
2024/08/01 16:58:19 [info] input-raw, [127.0.0.1:6789]
2024/08/01 16:58:19 [info] input-file-directory, []
2024/08/01 16:58:19 [info] input-file-replay-speed, 1
2024/08/01 16:58:19 [info] input-rocketmq-name-server, []
2024/08/01 16:58:19 [info] input-rocketmq-topic, test
2024/08/01 16:58:19 [info] output-stdout, true
2024/08/01 16:58:19 [info] output-file-directory, []
2024/08/01 16:58:19 [info] output-grpc, [grpc://192.168.3.69:20001]
2024/08/01 16:58:19 [info] output-rocketmq-name-server, []
2024/08/01 16:58:19 [info] output-rocketmq-topic, test
2024/08/01 16:58:19 [info] create new Processer
2024/08/01 16:58:19 [info] ipSet:[fe80::e8d6:a5ff:fe0f:5d1d fe80::5450:1eff:feca:14e0 fe80::9844:8ff:fe54:a5e2 fe80::c02e:3639:c93a:8590 127.0.0.1 fe80::42:28ff:fe02:700b fe80::48a7:91ff:fea8:ec2c fe80::409d:14ff:feb9:de05 192.168.40.222 ::1 172.17.0.1 fe80::bcaf:a6ff:fe91:9486]
2024/08/01 16:58:19 [info] create grpc output, addr:192.168.3.69:20001
2024/08/01 16:58:19 [info] plugins:##### len(Inputs):1, len(Outputs):2, len(All):3 #####
2024/08/01 16:58:19 [info] All history connections has exited.
2024/08/01 16:58:19 [info] listener:device:lo, port:6789, filter:tcp and port 6789
2024/08/01 16:58:35 [info] create Http2Conn, MaxDynamicTableSize:4096
2024/08/01 16:58:35 [fatal] protodesc.NewFiles, svcAndMethod:/xxxxxx.xxxx.xxxxxxx/PushVehicleStatus, error:proto: could not resolve import "xxxxpilot/error_code.proto": not found
Maybe there are some unusual scenarios? There are many levels of directory. It seems that there is no problem with the first one, but there is still a problem with the subsequent file parsing.
Ok, I'll try to build a more complex demo tomorrow
fix it in v0.0.8. please update code and rebuild bin file and try again. @fireblackman
$ sudo ./grpcr --input-raw="127.0.0.1:6789" --output-stdout --output-grpc="grpc://192.168.3.69:20001"
/ __// \ / \ / __// \
/ / / // // // // / / // /
/ // // , // // /_ / , /
__/// ||/_/ \/// ||
2024/08/02 16:02:58 [info] input-raw, [127.0.0.1:6789]
2024/08/02 16:02:58 [info] input-file-directory, []
2024/08/02 16:02:58 [info] input-file-replay-speed, 1
2024/08/02 16:02:58 [info] input-rocketmq-name-server, []
2024/08/02 16:02:58 [info] input-rocketmq-topic, test
2024/08/02 16:02:58 [info] output-stdout, true
2024/08/02 16:02:58 [info] output-file-directory, []
2024/08/02 16:02:58 [info] output-grpc, [grpc://192.168.3.69:20001]
2024/08/02 16:02:58 [info] output-rocketmq-name-server, []
2024/08/02 16:02:58 [info] output-rocketmq-topic, test
2024/08/02 16:02:58 [info] create new Processer
2024/08/02 16:02:58 [info] ipSet:[192.168.11.239 fe80::1808:d264:a187:f27 172.17.0.1 fe80::842f:bdff:fe2c:d3b1 127.0.0.1 ::1 fe80::42:50ff:fe38:493d fe80::782e:b3ff:fed1:9474 fe80::5029:b6ff:fef9:f262 fe80::344a:6cff:feaa:124c]
2024/08/02 16:02:58 [info] create grpc output, addr:192.168.3.69:20001
2024/08/02 16:02:58 [info] plugins:##### len(Inputs):1, len(Outputs):2, len(All):3 #####
2024/08/02 16:02:58 [info] All history connections has exited.
2024/08/02 16:02:58 [info] listener:device:lo, port:6789, filter:tcp and port 6789
2024/08/02 16:03:14 [info] create Http2Conn, MaxDynamicTableSize:4096
2024/08/02 16:03:14 [fatal] protodesc.NewFiles, svcAndMethod:/xxxxx.antenna.AntennaServer/PushVehicleStatus, error:proto: file appears multiple times: "xxxxx/geometry.proto"
Look at some other error errors
fix it in v0.0.9. please update code and rebuild bin file and try again. @fireblackman
resolve is ok, but has another problem. look like send failed. 024/08/02 19:01:46 [info] create Http2Conn, MaxDynamicTableSize:4096 1 9c2f690e-50be-11ef-9ca4-04421a24b909 1722596506613582635 {"headers":{":authority":"127.0.0.1:6789",":method":"POST",":path":"/xxxxxx.antenna.AntennaServer/PushHighFrameVehicleStatus",":scheme":"http","content-type":"application/grpc","grpc-accept-encoding":"gzip","grpc-timeout":"3996220u","te":"trailers","user-agent":"grpc-java-netty/1.38.0"},"method":"/xxxxxx.antenna.AntennaServer/PushHighFrameVehicleStatus","request":"{\"highFrameVehicleStatus\":{\"vehicleName\":\"howo8_test\", \"timestampMs\":\"1722596503723\", \"planningTrajectoryOnCameraScreen\":[{\"x\":935.7707370822919, \"y\":661.1819027606092}, {\"x\":947.8241823603645, \"y\":599.9305995053898}, {\"x\":952.2394360421201, \"y\":577.516286352017}, {\"x\":954.5238712177461, \"y\":565.923822189014}], \"taskState\":{\"header\":{\"timestampSec\":1722596503, \"moduleName\":\"planning\", \"sequenceNum\":1, \"pubTimestampSec\":1722596503}, \"taskMode\":\"FAIL\", \"commandId\":-1, \"targetDist\":1000000, \"errorCode\":\"ROUTE_FAIL\", \"commandTimestamp\":\"0\"}, \"auxiliaryLane\":{\"leftPoint\":[{\"x\":-528.4106933209357, \"y\":1080}, {\"x\":432.7471013108524, \"y\":719.8254164699838}, {\"x\":613.576842529405, \"y\":653.5464621630298}, {\"x\":710.3219485706621, \"y\":618.6818189216101}, {\"x\":766.8136120690656, \"y\":598.4816432084923}, {\"x\":846.5159764388881, \"y\":570.154708247289}, {\"x\":880.2100588240829, \"y\":558.2330572677541}], \"midPoint\":[{\"x\":853.7293708588164, \"y\":1080}, {\"x\":910.6617379133294, \"y\":788.7924334894587}, {\"x\":933.8389719645023, \"y\":670.6567212408539}, {\"x\":942.6403026348695, \"y\":625.8755778159164}, {\"x\":947.220050419739, \"y\":602.5795528135692}, {\"x\":953.2602254120447, \"y\":571.8258099665255}, {\"x\":955.7128562221404, \"y\":559.2927525290835}], \"rightPoint\":[{\"x\":2171.522764862415, \"y\":1080}, {\"x\":1442.0855704044757, \"y\":744.0163958466491}, {\"x\":1267.4675786202029, \"y\":665.0135620440459}, {\"x\":1179.6982494393965, \"y\":625.8233061075888}, {\"x\":1129.7651514571933, \"y\":603.6576822068582}, {\"x\":1060.4275080994744, \"y\":573.0211818060529}, {\"x\":1031.3619517048442, \"y\":560.227763231365}]}}}"}
2024/08/02 19:01:46 [error] dst.Write:rpc error: code = Unknown desc = failed to query for service descriptor "xxxxxxx.antenna.AntennaServer": Error in service handler! 2024/08/02 19:01:51 [info] create Http2Conn, MaxDynamicTableSize:4096
192.168.3.69:20001 also needs to turn on reflection @fireblackman
127.0.0.1:6789 -> 192.168.3.69:20001 Perhaps in the future, we can consider letting output-grpc reuse the reflection result of 127.0.0.1:6789
2024/08/02 19:05:32 [error] dst.Write:rpc error: code = Unknown desc = failed to query for service descriptor "xxxxxx.antenna.AntennaServer": Error in service handler! 1 22af0c70-50bf-11ef-9ca4-04421a24b909 1722596732264766697 {"headers":{},"method":"","request":""}
panic: runtime error: slice bounds out of range [1:0]
goroutine 50 [running]: github.com/vearne/grpcreplay/plugin.(GRPCOutput).Write(0xc000013a10, 0xc0015ddb30) /home/tester/go_workspace/grpcreplay/plugin/output_grpc.go:67 +0x4d4 github.com/vearne/grpcreplay/biz.(Emitter).CopyMulty(0xc0002f3710, {0x7fef15eb4098, 0xc0003b0000}, {0xc00009b9c0, 0x2, 0xc00012a000?}) /home/tester/go_workspace/grpcreplay/biz/emitter.go:63 +0xf5 github.com/vearne/grpcreplay/biz.(Emitter).Start.func1({0x7fef15eb4098?, 0xc0003b0000?}) /home/tester/go_workspace/grpcreplay/biz/emitter.go:31 +0x73 created by github.com/vearne/grpcreplay/biz.(Emitter).Start in goroutine 28 /home/tester/go_workspace/grpcreplay/biz/emitter.go:29 +0x57
Continuously call the interface, the program will be abnormal
2024/08/03 14:04:55 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/03 14:04:55 [error] method:/xxxxxx.antenna.AntennaServer/PushVehicleStatus, proto.Unmarshal:proto: cannot parse invalid wire-format data 2024/08/03 14:04:55 [error] get TCP pkg:127.0.0.1:53322 -> 127.0.0.1:6789, seq:2950422669, tcp flags:[PSH ACK] 1 4e71d4fb-515e-11ef-8d38-04421a24b909 1722665095663515270 {"headers":{":authority":"127.0.0.1:6789",":method":"POST",":path":"/xxxxxx.antenna.AntennaServer/PushVehicleStatus",":scheme":"http","content-type":"application/grpc","grpc-accept-encoding":"gzip","grpc-timeout":"3997683u","te":"trailers","user-agent":"grpc-java-netty/1.38.0"},"method":"/xxxxxx.antenna.AntennaServer/PushVehicleStatus","request":"{}"}
{} 2024/08/03 14:05:00 [info] create Http2Conn, MaxDynamicTableSize:4096
Some interfaces failed to parse the body, causing forwarding to another server to fail!
2024/08/03 14:04:55 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/03 14:04:55 [error] method:/xxxxxx.antenna.AntennaServer/PushVehicleStatus, proto.Unmarshal:proto: cannot parse invalid wire-format data 2024/08/03 14:04:55 [error] get TCP pkg:127.0.0.1:53322 -> 127.0.0.1:6789, seq:2950422669, tcp flags:[PSH ACK] 1 4e71d4fb-515e-11ef-8d38-04421a24b909 1722665095663515270 {"headers":{":authority":"127.0.0.1:6789",":method":"POST",":path":"/xxxxxx.antenna.AntennaServer/PushVehicleStatus",":scheme":"http","content-type":"application/grpc","grpc-accept-encoding":"gzip","grpc-timeout":"3997683u","te":"trailers","user-agent":"grpc-java-netty/1.38.0"},"method":"/xxxxxx.antenna.AntennaServer/PushVehicleStatus","request":"{}"}
{} 2024/08/03 14:05:00 [info] create Http2Conn, MaxDynamicTableSize:4096
Some interfaces failed to parse the body, causing forwarding to another server to fail!
2024/08/02 19:05:32 [error] dst.Write:rpc error: code = Unknown desc = failed to query for service descriptor "xxxxxx.antenna.AntennaServer": Error in service handler! 1 22af0c70-50bf-11ef-9ca4-04421a24b909 1722596732264766697 {"headers":{},"method":"","request":""}
panic: runtime error: slice bounds out of range [1:0]
goroutine 50 [running]: github.com/vearne/grpcreplay/plugin.(GRPCOutput).Write(0xc000013a10, 0xc0015ddb30) /home/tester/go_workspace/grpcreplay/plugin/output_grpc.go:67 +0x4d4 github.com/vearne/grpcreplay/biz.(Emitter).CopyMulty(0xc0002f3710, {0x7fef15eb4098, 0xc0003b0000}, {0xc00009b9c0, 0x2, 0xc00012a000?}) /home/tester/go_workspace/grpcreplay/biz/emitter.go:63 +0xf5 github.com/vearne/grpcreplay/biz.(Emitter).Start.func1({0x7fef15eb4098?, 0xc0003b0000?}) /home/tester/go_workspace/grpcreplay/biz/emitter.go:31 +0x73 created by github.com/vearne/grpcreplay/biz.(Emitter).Start in goroutine 28 /home/tester/go_workspace/grpcreplay/biz/emitter.go:29 +0x57
Continuously call the interface, the program will be abnormal
{"headers":{},"method":"","request":""} From the console output, the request parsing is incorrect, but the reason is not clear. In tag v0.1.0, I added some defensive code to prevent the program from crashing.
2024/08/03 14:04:55 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/03 14:04:55 [error] method:/xxxxxx.antenna.AntennaServer/PushVehicleStatus, proto.Unmarshal:proto: cannot parse invalid wire-format data 2024/08/03 14:04:55 [error] get TCP pkg:127.0.0.1:53322 -> 127.0.0.1:6789, seq:2950422669, tcp flags:[PSH ACK] 1 4e71d4fb-515e-11ef-8d38-04421a24b909 1722665095663515270 {"headers":{":authority":"127.0.0.1:6789",":method":"POST",":path":"/xxxxxx.antenna.AntennaServer/PushVehicleStatus",":scheme":"http","content-type":"application/grpc","grpc-accept-encoding":"gzip","grpc-timeout":"3997683u","te":"trailers","user-agent":"grpc-java-netty/1.38.0"},"method":"/xxxxxx.antenna.AntennaServer/PushVehicleStatus","request":"{}"}
{} 2024/08/03 14:05:00 [info] create Http2Conn, MaxDynamicTableSize:4096
Some interfaces failed to parse the body, causing forwarding to another server to fail!
2024/08/03 14:04:55 [error] method:/xxxxxx.antenna.AntennaServer/PushVehicleStatus, proto.Unmarshal:proto: cannot parse invalid wire-format data From the log, it can be seen that the request body deserialization failed. If possible, please provide the definition of the input parameter of: /xxxxxx.antenna.AntennaServer/PushVehicleStatus so that I can further analyze it. @fireblackman
5 hz in sec. the body is follow of PushVehicleStatus: { "status": { "vehicleName": "howo11_test", "position": { "longitude": 0.0, "latitude": 0.0, "utmX": 405681.344526563, "utmY": 3295470.0408920045 }, "speed": 0.0, "sensorStatus": "ERROR", "errorSensors": ["camera_driver", "gnss_driver", "lidar_driver", "vehicle"], "systemReady": false, "timestampNs": "1722823665968757947", "heading": -2.3959458123956896, "sensorInfo": [], "drivingStatus": "AUTO_DRIVE", "fitRoutePoints": [], "soc": 100.0, "noLoad": true, "vehicleOwner": "FABU_AUTO_PILIOT", "totalMileage": 0.0, "currentMileage": 0.0, "localizationDetail": { "header": { "timestampSec": 1.71740451959506E9, "moduleName": "agent_dynamics", "sequenceNum": 312566, "lidarTimestamp": "0", "cameraTimestamp": "0", "radarTimestamp": "0", "version": 1, "pubTimestampSec": 1.7174045195950742E9 }, "velX": 0.0, "velY": 0.0, "velZ": 0.0, "accX": 0.0, "accY": 0.0, "accZ": 0.0, "angularVelX": 0.0, "angularVelY": 0.0, "angularVelZ": 0.0, "heading": -2.3959458123956896, "pitch": 0.0, "roll": 0.0, "utmX": 405681.344526563, "utmY": 3295470.0408920045, "utmZ": 0.0, "navMode": 0.0, "posMode": 0.0, "velMode": 0.0, "attMode": 0.0, "latitudeStd": 0.0, "longitudeStd": 0.0, "heightStd": 0.0, "northVelocityStd": 0.0, "eastVelocityStd": 0.0, "upVelocityStd": 0.0, "rollStd": 0.0, "pitchStd": 0.0, "azimuthStd": 0.0, "level": "NONE", "needVlane": false, "offsetUtmX": 0.0, "offsetUtmY": 0.0, "headingOffset": 0.0, "lat": 0.0, "lon": 0.0, "gpsMeasurementTime": 0.0, "isStable": true, "localizationType": "RTK", "externalSignal": "EMPTY", "baseState": { "x": 405681.31185891666, "y": 3295470.010723495, "z": 0.0, "yaw": -8.679131119575276, "pitch": 0.0, "roll": 0.0, "lonVel": 0.0, "latVel": 0.0, "lonAcc": 0.0, "latAcc": 0.0, "yawRate": 0.0, "pitchRate": 0.0, "rollRate": 0.0, "curvature": -1.0290066808751688E-4 } }, "chassisDetail": { "acuDrivingMode": "COMPLETE_AUTO_DRIVE", "brand": "DONGFENG", "howoV2": { "ebs": { "ebsStatus": 0, "pressureLoop1": 1000000, "pressureLoop2": 1000000, "ebsPedalStatus": 0, "ebsWeakError": 0, "ebsStrongError": 0, "vehicleSpeed": 0.0, "wheelspeedLeftFront": 0.0, "wheelspeedRightFront": 0.0, "wheelspeedLeftRear": 0.0, "wheelspeedRightRear": 0.0, "leftFrontHydraulicPressure": 0.0, "rightFrontHydraulicPressure": 0.0, "leftRearHydraulicPressure": 0.0, "rightRearHydraulicPressure": 0.0 } }, "header": { "timestampSec": 1.717404519582858E9, "moduleName": "", "sequenceNum": 0, "lidarTimestamp": "0", "cameraTimestamp": "0", "radarTimestamp": "0", "version": 1, "pubTimestampSec": 1.717404519582858E9 } }, "containerStatus": { "frontExist": false, "midExist": false, "rearExist": false }, "nodePath": [], "path1": [], "netDelay": 2, "chassis": { "header": { "timestampSec": 1.717404519673446E9, "moduleName": "", "sequenceNum": 0, "lidarTimestamp": "0", "cameraTimestamp": "0", "radarTimestamp": "0", "version": 1, "pubTimestampSec": 1.717404519673446E9 }, "steeringAngleSpeedExecuted": 0.0, "steeringAngleExecuted": -5.512779719921488, "frontAxleSpeed": 0.0, "wheelspeedLeftfront": 0.0, "wheelspeedRightfront": 0.0, "wheelspeedLeftrear": 0.0, "wheelspeedRightrear": 0.0, "vehicleSpeed": 0.0, "motorRpm": 0.0, "motorTorque": "NaN", "chassisErrorMask": 0, "errorCode": "NO_ERROR", "drivingMode": "COMPLETE_AUTO_DRIVE", "gearPosition": "GEAR_NEUTRAL", "leftTurnLamp": "OFF", "rightTurnLamp": "OFF", "throttlePedal": 0.0, "brakePedal": 0.0, "autoDriveRequest": false, "soc": 100.0, "hydraulicPressure": 0.0, "highBeam": "OFF", "lowBeam": "OFF", "failureLevel": "NO_FAILURE", "enterAutoDriveErrorCode": [], "parkingBrakeReleased": false, "emergencyDetail": "", "rainlevel": "NORAIN", "totalMileage": 0.0, "currentMileage": 0.0, "autoDriveEmergency": false, "autoDriveStatusOk": false, "deceleration": 0.0, "signal": { "turnSignal": "TURN_NONE", "highBeam": false, "lowBeam": false, "horn": false, "emergencyLight": false, "clearanceLight": false, "doubleFlashLight": false, "rainWiperSpeed": 0, "rainWiperSwitch": false, "frontFogLight": false, "rearFogLight": false, "frontDoor": 0, "rearDoor": 0 } }, "driverless": true, "behaviorInfoSub": { "sceneInfo": { "sceneType": "PORT_MEISHAN_DOCK", "roadName": "dock", "laneIndex": 5 }, "functionType": "LANE_KEEP", "behaviorType": "NORMAL_LANE_KEEP", "stageType": "PRECISE-PARKING" }, "workMode": "OFFLINE_WORK", "receiveTimestampNs": "0", "canEnterAutoDriveMode": true, "trailerFrontCenter": { "longitude": 0.0, "latitude": 0.0, "utmX": 405681.344526563, "utmY": 3295470.0408920045 }, "vehicleMode": { "businessScene": "port_meishan_driverless", "safeMode": false, "dynamicVesselStatus": true, "bridgeDrivingMode": 0, "airPumpStatus": false, "bridgesDrivingMode": [{ "bridgeNo": 10, "drivingMode": 1 }, { "bridgeNo": 11, "drivingMode": 1 }, { "bridgeNo": 12, "drivingMode": 1 }], "useOnlineRouting": false }, "deviceInfo": { "hostInfo": [], "envMode": "PRO" }, "lightColor": "LIGHT_GREEN", "commandType": "UNKNOWN", "trailerHeading": -8.67903757727091, "fleetId": 0, "candidateRouteStartPoint": [], "trajectoryPoints": [{ "timestamp": 0.0, "posX": 405681.31274145405, "posY": 3295470.0097679766, "heading": -2.395857810974121, "trailerAngle": -2.395857810974121, "vel": 0.0 }, { "timestamp": 9.899999618530273, "posX": 405681.31274145405, "posY": 3295470.0097679766, "heading": -2.395857810974121, "trailerAngle": -2.395857810974121, "vel": 0.0 }, { "timestamp": 9.920000076293945, "posX": 405681.31274145405, "posY": 3295470.0097679766, "heading": -2.395857810974121, "trailerAngle": -2.395857810974121, "vel": 0.0 }, { "timestamp": 9.940000534057617, "posX": 405681.31274145405, "posY": 3295470.0097679766, "heading": -2.395857810974121, "trailerAngle": -2.395857810974121, "vel": 0.0 }, { "timestamp": 9.960000038146973, "posX": 405681.31274145405, "posY": 3295470.0097679766, "heading": -2.395857810974121, "trailerAngle": -2.395857810974121, "vel": 0.0 }, { "timestamp": 9.979999542236328, "posX": 405681.31274145405, "posY": 3295470.0097679766, "heading": -2.395857810974121, "trailerAngle": -2.395857810974121, "vel": 0.0 }, { "timestamp": 10.0, "posX": 405681.31274145405, "posY": 3295470.0097679766, "heading": -2.395857810974121, "trailerAngle": -2.395857810974121, "vel": 0.0 }], "distToPlcDevice": { "craneDist": [{ "craneId": 37, "dist": -11.325037940786938 }], "gantryDist": [], "timestampSec": 1.7174044956927228E9 }, "errorInfoForEnterAutoDriveMode": "", "startupTimestampNs": "1722823665968709996", "vehicleType": "CAR" } }
v0.1.0 tag console in terminal. 2024/08/05 10:17:59 [info] create Http2Conn, MaxDynamicTableSize:4096 {} 1 ef6ba8ff-52d0-11ef-b74a-04421a24b909 1722824279526016300 {"headers":{":authority":"127.0.0.1:6789",":method":"POST",":path":"/xxxxxx.antenna.AntennaServer/PushHighFrameVehicleStatus",":scheme":"http","content-type":"application/grpc","grpc-accept-encoding":"gzip","grpc-timeout":"3999963u","te":"trailers","user-agent":"grpc-java-netty/1.38.0"},"method":"/xxxxxx.antenna.AntennaServer/PushHighFrameVehicleStatus","request":"{\"highFrameVehicleStatus\":{\"vehicleName\":\"howo11_test\",\"timestampMs\":\"1722824278954\",\"planningTrajectoryOnCameraScreen\":[{\"x\":935.7707370822919,\"y\":661.1819027606092},{\"x\":947.8241823603645,\"y\":599.9305995053898},{\"x\":952.2394360421201,\"y\":577.516286352017},{\"x\":954.5238712177461,\"y\":565.923822189014}],\"taskState\":{\"header\":{\"timestampSec\":1722824278,\"moduleName\":\"planning\",\"sequenceNum\":38,\"pubTimestampSec\":1722824278},\"taskMode\":\"FAIL\",\"commandId\":-1,\"targetDist\":1000000,\"errorCode\":\"ROUTE_FAIL\",\"commandTimestamp\":\"0\"},\"auxiliaryLane\":{\"leftPoint\":[{\"x\":-528.4106933209357,\"y\":1080},{\"x\":432.7471013108524,\"y\":719.8254164699838},{\"x\":613.576842529405,\"y\":653.5464621630298},{\"x\":710.3219485706621,\"y\":618.6818189216101},{\"x\":766.8136120690656,\"y\":598.4816432084923},{\"x\":846.5159764388881,\"y\":570.154708247289},{\"x\":880.2100588240829,\"y\":558.2330572677541}],\"midPoint\":[{\"x\":853.7293708588164,\"y\":1080},{\"x\":910.6617379133294,\"y\":788.7924334894587},{\"x\":933.8389719645023,\"y\":670.6567212408539},{\"x\":942.6403026348695,\"y\":625.8755778159164},{\"x\":947.220050419739,\"y\":602.5795528135692},{\"x\":953.2602254120447,\"y\":571.8258099665255},{\"x\":955.7128562221404,\"y\":559.2927525290835}],\"rightPoint\":[{\"x\":2171.522764862415,\"y\":1080},{\"x\":1442.0855704044757,\"y\":744.0163958466491},{\"x\":1267.4675786202029,\"y\":665.0135620440459},{\"x\":1179.6982494393965,\"y\":625.8233061075888},{\"x\":1129.7651514571933,\"y\":603.6576822068582},{\"x\":1060.4275080994744,\"y\":573.0211818060529},{\"x\":1031.3619517048442,\"y\":560.227763231365}]}}}"}
2024/08/05 10:17:59 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/05 10:17:59 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/05 10:17:59 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/05 10:17:59 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/05 10:17:59 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/05 10:17:59 [info] create Http2Conn, MaxDynamicTableSize:4096 {}
2024/08/05 10:18:00 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/05 10:18:00 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/05 10:18:00 [error] decoding error: invalid indexed representation index 95 panic: runtime error: index out of range [0] with length 0
goroutine 19 [running]: github.com/vearne/grpcreplay/http2.parseSymbol({0x0?, 0x19639e0?}) /home/tester/go_workspace/grpcreplay/http2/processor.go:389 +0xf7 github.com/vearne/grpcreplay/http2.(PBMessageFinder).FindMethodInput(0xc0002f5860, {0x0, 0x0}) /home/tester/go_workspace/grpcreplay/http2/processor.go:346 +0x1ed github.com/vearne/grpcreplay/http2.(Processor).processFrameData(0xc00009b1c0, 0xc011c28b40) /home/tester/go_workspace/grpcreplay/http2/processor.go:156 +0x439 github.com/vearne/grpcreplay/http2.(Processor).ProcessFrame(0xbdd500?, 0xc0002f5830?) /home/tester/go_workspace/grpcreplay/http2/processor.go:102 +0x45 github.com/vearne/grpcreplay/http2.(Processor).ProcessTCPPkg(0xc00009b1c0) /home/tester/go_workspace/grpcreplay/http2/processor.go:73 +0x518 created by github.com/vearne/grpcreplay/plugin.NewRAWInput in goroutine 1 /home/tester/go_workspace/grpcreplay/plugin/input_raw.go:180 +0x7bd
10 hz in sec. the body of highFrameVehicleStatus in follow: { "highFrameVehicleStatus": { "vehicleName": "howo11_test", "timestampMs": "1722825215941", "planningTrajectoryOnCameraScreen": [{ "x": 935.7707370822919, "y": 661.1819027606092 }, { "x": 947.8241823603645, "y": 599.9305995053898 }, { "x": 952.2394360421201, "y": 577.516286352017 }, { "x": 954.5238712177461, "y": 565.923822189014 }], "taskState": { "header": { "timestampSec": 1.722825215E9, "moduleName": "planning", "sequenceNum": 1, "lidarTimestamp": "0", "cameraTimestamp": "0", "radarTimestamp": "0", "version": 1, "pubTimestampSec": 1.722825215E9 }, "taskMode": "FAIL", "commandId": -1, "blockRegion": [], "targetDist": 1000000.0, "targetUtmX": 0.0, "targetUtmY": 0.0, "targetPrecision": 0.0, "errorCode": "ROUTE_FAIL", "commandTimestamp": "0", "hmiTaskMode": "HMIUNKNOW", "hmiErrorCode": "HMI_UNKNOW_ERROR", "routeTaskId": "", "pathId": "", "cloudPathTaskMode": "CLOUDUNKNOW" }, "auxiliaryLane": { "leftPoint": [{ "x": -528.4106933209357, "y": 1080.0 }, { "x": 432.7471013108524, "y": 719.8254164699838 }, { "x": 613.576842529405, "y": 653.5464621630298 }, { "x": 710.3219485706621, "y": 618.6818189216101 }, { "x": 766.8136120690656, "y": 598.4816432084923 }, { "x": 846.5159764388881, "y": 570.154708247289 }, { "x": 880.2100588240829, "y": 558.2330572677541 }], "midPoint": [{ "x": 853.7293708588164, "y": 1080.0 }, { "x": 910.6617379133294, "y": 788.7924334894587 }, { "x": 933.8389719645023, "y": 670.6567212408539 }, { "x": 942.6403026348695, "y": 625.8755778159164 }, { "x": 947.220050419739, "y": 602.5795528135692 }, { "x": 953.2602254120447, "y": 571.8258099665255 }, { "x": 955.7128562221404, "y": 559.2927525290835 }], "rightPoint": [{ "x": 2171.522764862415, "y": 1080.0 }, { "x": 1442.0855704044757, "y": 744.0163958466491 }, { "x": 1267.4675786202029, "y": 665.0135620440459 }, { "x": 1179.6982494393965, "y": 625.8233061075888 }, { "x": 1129.7651514571933, "y": 603.6576822068582 }, { "x": 1060.4275080994744, "y": 573.0211818060529 }, { "x": 1031.3619517048442, "y": 560.227763231365 }] } } }
v0.1.0 tag console in terminal. 2024/08/05 10:17:59 [info] create Http2Conn, MaxDynamicTableSize:4096 {} 1 ef6ba8ff-52d0-11ef-b74a-04421a24b909 1722824279526016300 {"headers":{":authority":"127.0.0.1:6789",":method":"POST",":path":"/xxxxxx.antenna.AntennaServer/PushHighFrameVehicleStatus",":scheme":"http","content-type":"application/grpc","grpc-accept-encoding":"gzip","grpc-timeout":"3999963u","te":"trailers","user-agent":"grpc-java-netty/1.38.0"},"method":"/xxxxxx.antenna.AntennaServer/PushHighFrameVehicleStatus","request":"{"highFrameVehicleStatus":{"vehicleName":"howo11_test","timestampMs":"1722824278954","planningTrajectoryOnCameraScreen":[{"x":935.7707370822919,"y":661.1819027606092},{"x":947.8241823603645,"y":599.9305995053898},{"x":952.2394360421201,"y":577.516286352017},{"x":954.5238712177461,"y":565.923822189014}],"taskState":{"header":{"timestampSec":1722824278,"moduleName":"planning","sequenceNum":38,"pubTimestampSec":1722824278},"taskMode":"FAIL","commandId":-1,"targetDist":1000000,"errorCode":"ROUTE_FAIL","commandTimestamp":"0"},"auxiliaryLane":{"leftPoint":[{"x":-528.4106933209357,"y":1080},{"x":432.7471013108524,"y":719.8254164699838},{"x":613.576842529405,"y":653.5464621630298},{"x":710.3219485706621,"y":618.6818189216101},{"x":766.8136120690656,"y":598.4816432084923},{"x":846.5159764388881,"y":570.154708247289},{"x":880.2100588240829,"y":558.2330572677541}],"midPoint":[{"x":853.7293708588164,"y":1080},{"x":910.6617379133294,"y":788.7924334894587},{"x":933.8389719645023,"y":670.6567212408539},{"x":942.6403026348695,"y":625.8755778159164},{"x":947.220050419739,"y":602.5795528135692},{"x":953.2602254120447,"y":571.8258099665255},{"x":955.7128562221404,"y":559.2927525290835}],"rightPoint":[{"x":2171.522764862415,"y":1080},{"x":1442.0855704044757,"y":744.0163958466491},{"x":1267.4675786202029,"y":665.0135620440459},{"x":1179.6982494393965,"y":625.8233061075888},{"x":1129.7651514571933,"y":603.6576822068582},{"x":1060.4275080994744,"y":573.0211818060529},{"x":1031.3619517048442,"y":560.227763231365}]}}}"}
2024/08/05 10:17:59 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/05 10:17:59 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/05 10:17:59 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/05 10:17:59 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/05 10:17:59 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/05 10:17:59 [info] create Http2Conn, MaxDynamicTableSize:4096 {}
2024/08/05 10:18:00 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/05 10:18:00 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/08/05 10:18:00 [error] decoding error: invalid indexed representation index 95 panic: runtime error: index out of range [0] with length 0
goroutine 19 [running]: github.com/vearne/grpcreplay/http2.parseSymbol({0x0?, 0x19639e0?}) /home/tester/go_workspace/grpcreplay/http2/processor.go:389 +0xf7 github.com/vearne/grpcreplay/http2.(PBMessageFinder).FindMethodInput(0xc0002f5860, {0x0, 0x0}) /home/tester/go_workspace/grpcreplay/http2/processor.go:346 +0x1ed github.com/vearne/grpcreplay/http2.(Processor).processFrameData(0xc00009b1c0, 0xc011c28b40) /home/tester/go_workspace/grpcreplay/http2/processor.go:156 +0x439 github.com/vearne/grpcreplay/http2.(Processor).ProcessFrame(0xbdd500?, 0xc0002f5830?) /home/tester/go_workspace/grpcreplay/http2/processor.go:102 +0x45 github.com/vearne/grpcreplay/http2.(Processor).ProcessTCPPkg(0xc00009b1c0) /home/tester/go_workspace/grpcreplay/http2/processor.go:73 +0x518 created by github.com/vearne/grpcreplay/plugin.NewRAWInput in goroutine 1 /home/tester/go_workspace/grpcreplay/plugin/input_raw.go:180 +0x7bd
10 hz in sec. the body of highFrameVehicleStatus in follow: { "highFrameVehicleStatus": { "vehicleName": "howo11_test", "timestampMs": "1722825215941", "planningTrajectoryOnCameraScreen": [{ "x": 935.7707370822919, "y": 661.1819027606092 }, { "x": 947.8241823603645, "y": 599.9305995053898 }, { "x": 952.2394360421201, "y": 577.516286352017 }, { "x": 954.5238712177461, "y": 565.923822189014 }], "taskState": { "header": { "timestampSec": 1.722825215E9, "moduleName": "planning", "sequenceNum": 1, "lidarTimestamp": "0", "cameraTimestamp": "0", "radarTimestamp": "0", "version": 1, "pubTimestampSec": 1.722825215E9 }, "taskMode": "FAIL", "commandId": -1, "blockRegion": [], "targetDist": 1000000.0, "targetUtmX": 0.0, "targetUtmY": 0.0, "targetPrecision": 0.0, "errorCode": "ROUTE_FAIL", "commandTimestamp": "0", "hmiTaskMode": "HMIUNKNOW", "hmiErrorCode": "HMI_UNKNOW_ERROR", "routeTaskId": "", "pathId": "", "cloudPathTaskMode": "CLOUDUNKNOW" }, "auxiliaryLane": { "leftPoint": [{ "x": -528.4106933209357, "y": 1080.0 }, { "x": 432.7471013108524, "y": 719.8254164699838 }, { "x": 613.576842529405, "y": 653.5464621630298 }, { "x": 710.3219485706621, "y": 618.6818189216101 }, { "x": 766.8136120690656, "y": 598.4816432084923 }, { "x": 846.5159764388881, "y": 570.154708247289 }, { "x": 880.2100588240829, "y": 558.2330572677541 }], "midPoint": [{ "x": 853.7293708588164, "y": 1080.0 }, { "x": 910.6617379133294, "y": 788.7924334894587 }, { "x": 933.8389719645023, "y": 670.6567212408539 }, { "x": 942.6403026348695, "y": 625.8755778159164 }, { "x": 947.220050419739, "y": 602.5795528135692 }, { "x": 953.2602254120447, "y": 571.8258099665255 }, { "x": 955.7128562221404, "y": 559.2927525290835 }], "rightPoint": [{ "x": 2171.522764862415, "y": 1080.0 }, { "x": 1442.0855704044757, "y": 744.0163958466491 }, { "x": 1267.4675786202029, "y": 665.0135620440459 }, { "x": 1179.6982494393965, "y": 625.8233061075888 }, { "x": 1129.7651514571933, "y": 603.6576822068582 }, { "x": 1060.4275080994744, "y": 573.0211818060529 }, { "x": 1031.3619517048442, "y": 560.227763231365 }] } } }
add some defensive code, use v0.1.1 and try again @fireblackman
Does v0.1.1 create a tag? I use the main branch and see no more exception to exit the program
Does v0.1.1 create a tag? I use the main branch and see no more exception to exit the program
Just use the main branch is ok. @fireblackman
$ sudo ./grpcr --input-raw="127.0.0.1:6789" --output-stdout --output-grpc="grpc://192.168.3.69:20001"
/ __// \ / \ / __// \ / / / // // // // / / // / / // // , // // /_ / , / __/// ||/_/ \/// ||
2024/07/30 17:18:57 [info] input-raw, [127.0.0.1:6789] 2024/07/30 17:18:57 [info] input-file-directory, [] 2024/07/30 17:18:57 [info] input-file-replay-speed, 1 2024/07/30 17:18:57 [info] input-rocketmq-name-server, [] 2024/07/30 17:18:57 [info] input-rocketmq-topic, test 2024/07/30 17:18:57 [info] output-stdout, true 2024/07/30 17:18:57 [info] output-file-directory, [] 2024/07/30 17:18:57 [info] output-grpc, [grpc://192.168.3.69:20001] 2024/07/30 17:18:57 [info] output-rocketmq-name-server, [] 2024/07/30 17:18:57 [info] output-rocketmq-topic, test 2024/07/30 17:18:57 [info] create new Processer 2024/07/30 17:18:57 [info] ipSet:[::1 fe80::42:28ff:fe02:700b fe80::e8d6:a5ff:fe0f:5d1d fe80::5450:1eff:feca:14e0 127.0.0.1 192.168.40.222 fe80::c02e:3639:c93a:8590 172.17.0.1 fe80::bcaf:a6ff:fe91:9486 fe80::48a7:91ff:fea8:ec2c] 2024/07/30 17:18:57 [info] create grpc output, addr:192.168.3.69:20001 2024/07/30 17:18:57 [info] plugins:##### len(Inputs):1, len(Outputs):2, len(All):3 ##### 2024/07/30 17:18:57 [info] All history connections has exited. 2024/07/30 17:18:57 [info] listener:device:lo, port:6789, filter:tcp and port 6789 2024/07/30 17:19:18 [info] create Http2Conn, MaxDynamicTableSize:4096 2024/07/30 17:19:18 [error] get TCP pkg:127.0.0.1:39792 -> 127.0.0.1:6789, seq:2194564660, tcp flags:[PSH ACK] 2024/07/30 17:19:18 [fatal] protodesc.NewFile, svcAndMethod:/xxxxxx.xxxxxxx.xxxxxx/PushHighFrameVehicleStatus