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

Reply via email to