https://github.com/apache/dubbo-go
Tip
Hignlighted PRs are the most important ones.
- refactor: split metrics module into multiple files
- feat: print logs of registered providers and consumers
- feat: add request processing total and request succeed total metrics
- refactor: use promauto and promhttp
- fix: metric config enable can't be set to false
- fix: solve config bool field zero value bug by using pointer
- feat: add some metrics about RT
- fix: disable metrics filter by default instead
- feat: sliding window and rt quantile metrics
- feat: wrapper sliding window with custom aggregator
- feat: wrapper sliding window with custom counter for caculating QPS
- feat: add some metrics
- feat: optimize the integration of otel tracing
- refactor: rewrite RPC metrics into the event pattern
- Metrics instrumentation in these parts:
- Provider and Consumer in RPC
- Config Center
- Registry Center
- Metadata Center
- Refactor metrics module in event-based pattern
- Optimize configuration loading of metrics module
- Simplify the initialization process of the tracing module, by configuration instead of programming
- Support more tracing exporters, include stdout, Jaeger, Zipkin, and Otlp(a bug to be fixed)
- Support for the W3C standand and the B3 standard of context propagation
- Allow user to config sampling probability to achieve a more refined sampling strategy
The metrics instrumentation for RPC Exceptions has not been completed yet.
Reason: Dubbo-go supports configuring multiple protocols for RPC communication, and different protocols define different RPC Exceptions. Dubbo has established a unified aspect for handling RPC exceptions, facilitating the metrics tracking work. However, Dubbo-go has not yet formed a unified handling layer, so prior to implementing metrics instrumentation for RPC Exceptions, a comprehensive review of the exception handling aspect related to the communication protocols supported by Dubbo-go is required. This involves abstracting a handling aspect, which must be developed before this part of the work can be accomplished.