Conversation
|
Please clean up your commits, rebase them to one commit. |
2b2f063 to
45f0534
Compare
a117692 to
ea11323
Compare
mrproliu
left a comment
There was a problem hiding this comment.
There seem to be some license and style check issues, please fix them.
| tags: | ||
| - { key: url, value: not null } | ||
| - { key: rpc.type, value: Unary } | ||
| - operationName: /user.User/UserFind |
There was a problem hiding this comment.
I think zrpc should be a framework similar to grpc, mainly used for communication between multiple processes, right? Then why is the RPC-related span still local? As I understand it, there should be entry and exit spans.
There was a problem hiding this comment.
The method enhanced by zrpc is to add a unary interceptor. The underlying service is still a gRPC service. The purpose of adding this unary interceptor is to extend the RPC service provided by go-zero, such as logging parameters, responses, errors, etc. Currently, due to proxy restrictions, additional packages cannot be introduced, so the span can be considered local. Additionally, can you explain the issue of not being able to introduce additional packages in the interceptor? Otherwise, it will be impossible to complete some more distinctive tag reporting.
There was a problem hiding this comment.
For the additional package import, please read this document to know the implementation key principles. The short version is because the package import mechanism of golang compiler, we cannot add more package, that's why we have tools operator to let plugin do more operation without package import.
There was a problem hiding this comment.
If all of spans still in one single segment(only create local rather entry and exit span), we cannot building the topology, because OAP don't know which one is exit span to communicate with other application.
There was a problem hiding this comment.
Also, I cannot see any exit span by building grpc or zrpc, could you help to explain this?
| - serviceName: gozero | ||
| segmentSize: ge 1 | ||
| segments: | ||
| - segmentId: not null |
There was a problem hiding this comment.
Why is there just a single segment, if they are cross-process, it should have two segments. Please correct me if I'm wrong.
mrproliu
left a comment
There was a problem hiding this comment.
Please fix the CI problem.
| tags: | ||
| - { key: url, value: not null } | ||
| - { key: rpc.type, value: Unary } | ||
| - operationName: /user.User/UserFind |
There was a problem hiding this comment.
Also, I cannot see any exit span by building grpc or zrpc, could you help to explain this?
feat(go-zero): framework plugin support.