I think the second way is better. It's just that we need to study how it is stored in share memory.
On Mon, Mar 2, 2020 at 10:47 AM liyong <[email protected]> wrote: > Hello community, > > If I want to know the health status for all probed targets when build an > upstream healthy dashboard, how to effectively fetch or expose the realtime > or near realtime data? > > 1. `apisix` use the healthcheck status by calling `get_target_status` in > `apisix.balancer.fetch_health_nodes` function at balancer_by_lua phase. we > may add probe here but this is a passively method, when the target does not > be routed, we don't know its status. > > 2. `lua-resty-healthcheck` use `ngx.shared.DICT` entry for each probed > target internal health(healthy, unhealthy, mostly_healthy, > mostly_unhealthy), do we have some way to explore the internal for > `ngx.shared.DICT` > > 3. Use log collection: when the `lua-resty-healthcheck` lib have changed > the internal state of the target, output a formatted log and we collected > it. > > One more ... > -- *MembPhis* My github: https://github.com/membphis Apache APISIX: https://github.com/apache/incubator-apisix
