Hi APISIX & SkyWalking community I was discussing with Wei Jin about using Prometheus SDK to monitor URI-level metrics of APISIX/OpenResty. Wei received feedback that way of using Prometheus SDK causing a significant performance impact. From the observability perspective, Prom is not good at gathering a large scale of entities' metrics due to its local cache and pull mode. Instead, we should consider providing a push way like Envoy ALS[1] and Metrics Service[2] did(it does through gRPC, and SkyWalking recommended in the prod environment. If this is accepted and agreed by the APISIX community, we could look for implementation in the skywalking-nginx-lua[3] repo to collect metrics(meter in SkyWalking) and use HTTP(in SkyWalking native meter format) to report
This mail has been sent to dev@apisix.apache.org and d...@skywalking.apache.org. Please reply all when you discuss in the thread. [1] https://www.envoyproxy.io/docs/envoy/latest/api-v2/config/accesslog/v2/als.proto [2] https://www.envoyproxy.io/docs/envoy/latest/api-v2/config/metrics/v2/metrics_service.proto [3] https://github.com/apache/skywalking-nginx-lua Sheng Wu 吴晟 Twitter, wusheng1108