-
Notifications
You must be signed in to change notification settings - Fork 15
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
Enable remote_ip dimension in rtr_clients #120
base: master
Are you sure you want to change the base?
Conversation
This makes the rtr_clients track the number of connections per remote IP, enabling us to see if a client flaps, and what client it is.
This is something that should be enabled behind a CLI flag, since there will be users who will not want the cardinality in their prometheus setups that this would cause. Overall I can see the use case for it though, just we should be mindful of large users of stayrtr and the impact that a change like this might have on their existing setups |
For cardinality issues, unless it's a public server, it should more or less be fine, since the IPs of the routers will not change too often. There is also a possibility to do label_replace/drop on prometheus server. Nonetheless, maybe a flag is the way to go to make sure we avoid breaking people stuff :) Also, I was thinking that a Gauge may not be the best approach here. Could also be a single "flap" counters, that increments whenever a router connects or disconnects. What are your thoughts on that ? |
Another +1 for that. Tracking remote ips is really useful for operational needs: different client implementations behave differently, for example how many sessions they hold active. I've ended up using customly written connections_exporter for all connections - when it is a private server, new connections, flaps and restarts are rare. Yet when they happen, it may of course flood prometheus database. For cardinality issues one should consider dropping labels in prometheus as mentioned above. Nevertheless something that is possible but not trivial to implement within prometheus - tracking of flapping/resets from remote clients.
|
for resets, there is already
which is counter, but doesn't have the remote_ip label to it. I guess I could add it there. |
This makes the rtr_clients track the number of connections per remote IP, enabling us to see if a client flaps, and what client it is.
I am not 100% sure that this is the right implementation, and ready to discuss better ideas :)