feat: Allow OpenTelemetry configuration (especially Collector) to be specified on a per route level
Description
Currently, the Collector address (and possibly others?) information needs to be put in config.yaml (or set in values.yaml, or Helm CLI parameters when running APISIX in Kubernetes).
This effectively means that all routes in APISIX are bound to use the same Collector. In a multi-tenant, or multi-user scenarios this might not be desired.
A possible future enhancement would be to define Collectors on a per-route level, instead of globally.
Relevant discussion on Slack: https://the-asf.slack.com/archives/CUC5MN17A/p1657549138916759
Most of the current observable row plugins are of a similar design (e.g. skywalking).
The current design architecture of APISIX does not provide for multi-tenant isolation. To satisfy this feature, it may be necessary not just to modify the plugin, but to rethink in the architectural design whether multi-tenant isolation scenarios need to be introduced.
This issue has been marked as stale due to 350 days of inactivity. It will be closed in 2 weeks if no further activity occurs. If this issue is still relevant, please simply write any comment. Even if closed, you can still revive the issue at any time or discuss it on the [email protected] list. Thank you for your contributions.
This issue has been closed due to lack of activity. If you think that is incorrect, or the issue requires additional review, you can revive the issue at any time.