m3db / m3

M3 monorepo - Distributed TSDB, Aggregator and Query Engine, Prometheus Sidecar, Graphite Compatible, Metrics Platform
https://m3db.io/
Apache License 2.0
4.7k stars 451 forks source link

Add IncludeTags to R2 Rollup Options #4270

Open kentzeng12 opened 1 month ago

kentzeng12 commented 1 month ago

What this PR does / why we need it:

To add new reserved metric tags, we need to add the reserved tag to the initial metric id, and the rollup id otherwise the reserved tag will be lost during the R2 rollup process. Currently to do this, we would need to manually update the R2 rules to filter for the new reserved tag. However, this is a time consuming process because we need to update all R2 rules in the repo to ensure the reserved tag is added to all rollup ids.

To address this issue, in the matcher config, I added functionality to specify a list of "include tags" which are tags that if seen in the metric id, we should add to the rollup id. So if the metric id contains a reserved tag that needs to be added to the rollup id, the forward matching logic will add the reserved tag to the rollup id.

In the future, if there are more reserved tags that R2 forward match should add to rollup ids, we should add those tags in the include tags config.

CLAassistant commented 1 month ago

CLA assistant check
All committers have signed the CLA.

abliqo commented 3 weeks ago

Please provide more clear description of the problem.

kentzeng12 commented 3 weeks ago

Please provide more clear description of the problem.

Please provide more clear description of the problem.

kentzeng12 commented 3 weeks ago

Please provide more clear description of the problem

Updated the problem description. Let me know if I should expand on anything.