Rethink queue prefix concept #34
Labels
documentation
Improvements or additions to documentation
enhancement
New feature or request
good first issue
Good for newcomers
The queue prefix was created to consolidate multiple queue metrics (exposed on /metrics) under a single tag.
Since Deckard does not impose a limit on the number of queues users can create, there are use cases where thousands of queues are created for the same application.
For example:
application_x:customers
- a queue containing all customers created by theapplication_x
application_x:customers:id::1232453223
- a specififc queue to the customer with the ID1232453223
, using theapplication_x:customers:id
prefixBy using the separator
::
, all metrics from these queues are grouped together under a single queue tagapplication_x:customers:id
. This approach helps prevent the cardinality problem of timeseries databases.I believe this concept is highly valuable, but it is currently somewhat hidden within Deckard's implementation. We should make it more accessible for everyone to use by documenting it and making it more easier to use.
Additionally, in some places within the documentation, the word "prefix" is used when referring to the
:
separator, which is not entirely accurate. The:
separator is merely a suggestion to provide a symbolic representation of a queue domain. For instance,application_x:customers:facebook
andapplication_x:customers:instagram
indicate that these queues are created by theapplication_x
application and contain information aboutcustomers
from specific social media platforms, facilitating audits or observation using related tools.So I propose:
::
string in the queue name, add aqueue_prefix
attribute)::
inside the queue name.The text was updated successfully, but these errors were encountered: