devkanro commented on issue #4177: Enhance gRPC plugin URL: https://github.com/apache/skywalking/pull/4177#issuecomment-573498339 @wu-sheng If you trace the both of client and server-side, you would get the tracing like blow of bi-streaming call: ``` + | +-+(Server1) Exit: foo.bar.MyApi.echo | | | +-+(Server2) Entry: foo.bar.MyApi.echo | | | +-+(Server2) Local: foo.bar.MyApi.echo/server/Request/onMessage | | | | | +-+(Server2) Local: foo.bar.MyApi.echo/server/Response/onMessage | | | +-+(Server2) Local: foo.bar.MyApi.echo/server/Request/onMessage | | | | | +-+(Server2) Local: foo.bar.MyApi.echo/server/Response/onMessage | | | +-+(Server2) Local: foo.bar.MyApi.echo/server/Request/onComplete | | | +-+(Server2) Local: foo.bar.MyApi.echo/server/Response/onClose | +-+(Server1) Local: foo.bar.MyApi.echo/client/Request/onMessage | +-+(Server1) Local: foo.bar.MyApi.echo/client/Resoponse/onMessage | +-+(Server1) Local: foo.bar.MyApi.echo/client/Request/onMessage | +-+(Server1) Local: foo.bar.MyApi.echo/client/Resoponse/onMessage | +-+(Server1) Local: foo.bar.MyApi.echo/client/Request/onComplete | +-+(Server1) Local: foo.bar.MyApi.echo/client/Response/onClose ``` A call will be traced both in server1(client-side), and server2(server-side). They are redundant, and the server-side is more accurate than the client-side because of the gRPC framework. You can distinguish the server active message(parent is entry span) and passive message(parent is request message span). In the internal server case, we don't need the client-side tracing, but in the external server case, client-side tracing is the only way to tracing gRPC call.
---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services