https://emqx.atlassian.net/browse/EMQX-8548 Currently, we face several issues trying to keep resource metrics reasonable. For example, when a resource is re-created and has its metrics reset, but then its durable queue resumes its previous work and leads to strange (often negative) metrics. Instead using `counters` that are shared by more than one worker to manage gauges, we introduce an ETS table whose key is not only scoped by the Resource ID as before, but also by the worker ID. This way, when a worker starts/terminates, they should set their own gauges to their values (often 0 or `replayq:count` when resuming off a queue). With this scoping and initialization procedure, we'll hopefully avoid hitting those strange metrics scenarios and have better control over the gauges. |
||
|---|---|---|
| .. | ||
| etc | ||
| i18n | ||
| include | ||
| src | ||
| test | ||
| .gitignore | ||
| README.md | ||
| rebar.config | ||
emqx_bridge
EMQX Data Bridge is an application that managing the resources (see emqx_resource) used by emqx rule engine.
It provides CRUD HTTP APIs of the resources, and is also responsible for loading the resources at
startup, and saving configs of resources to data/ after configs updated.
The application depends on emqx_connector as that's where all the callback modules of connector
resources placed.