Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Record consumer / client ID on metrics #357

Open
mwarkentin opened this issue Apr 22, 2024 · 2 comments
Open

Record consumer / client ID on metrics #357

mwarkentin opened this issue Apr 22, 2024 · 2 comments

Comments

@mwarkentin
Copy link
Member

We currently have a bunch of metrics in the arroyo namespace, however they are only tagged with VM / host information, rather than consumer, so it is hard (or impossible) to breakdown metrics properly per consumer.

One example of this would be to try to determine if partitions are balanced evenly across consumers. We have a metric called arroyo.consumer.partitions_assigned.count however we can only break it down by instance-id and similar tags which may include partitions assigned to multiple consumers running on the same node:

image

Ideally we could break this down by consumer and see if they all have the same number of partitions assigned.

@untitaker
Copy link
Member

the min_partition tag is a similar case. we want a global tag for the entire consumer, but arroyo itself does not support that. so we had to implement it in the application.

in this particular case of checking for partition balance, I think it is sufficient to check that min == max == avg == p50 == p70 == ... of the metric, the tag breakdown is not needed IMO

@mwarkentin
Copy link
Member Author

Interesting idea, but in practice if I take min - max for partition count it looks like this..

Image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants