Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ISSUE #10377] Migrating Client OpenTelemetry trace from dynamic proxies to delegate classes #11559

Open
wants to merge 5 commits into
base: summer-ospp#10377
Choose a base branch
from

Conversation

FAWC438
Copy link

@FAWC438 FAWC438 commented Dec 26, 2023

What is the purpose of the change

This PR is to fix some problems about dynamic proxies in PR #11138

The dynamic proxy solution used in the previous PR has problems with backward compatibility.

In order to solve this problem, this PR turns to inheritance or interface implementation to complete the OpenTelemetry trace packaging of the client's main logic class.

Fix issue #10377

Brief changelog

  • Config
    • ClientWorkerTraceDelegate: Delegate the ClientWorker by inheritance
    • ConfigRpcTransportClientProxyTraceDelegate: Delegate the ConfigRpcTransportClient by implementing ConfigRpcTransportClientProxy since ConfigRpcTransportClient is an anonymous inner class
    • ServerHttpAgentTraceDelegate: Delegate the ServerHttpAgent by inheritance
  • Naming
    • NamingClientProxyTraceDelegate: Delegate all the NamingClientProxy interface
    • NamingGrpcRedoServiceTraceDelegate: Delegate the NamingGrpcRedoService by inheritance

Verifying this change

Unit tests are provided for all delegate classes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants