uber-archive / statsrelay

A consistent-hashing relay for statsd and carbon metrics
Other
101 stars 28 forks source link

Allow defining shard maps less verbosely using ranges and lists #57

Open drawks opened 9 years ago

drawks commented 9 years ago

Since #34 is still open I suppose it's possible that this is already implemented and not documented, but a cursory glance at the code doesn't seem to support that theory. It would be nice, especially when many shards are defined if some short hand could be used instead of the current simple k:v mapping.

Allowing shard keys to be defined as things like 0-100 for the inclusive range of integers from 0 to 100 or 2,4,6,8 as an arbitrary set of shards would make the yaml much simpler to write and maintain especially in cases of large installations with thousands of shards.

JeremyGrosser commented 9 years ago

This seems like a reasonable feature request... Just taking quick look at the yaml_config stuff that @eklitzke added a while ago, it'll need a bit of a refactor to make it possible to define shard ranges. Also, that code makes my eyes bleed.

It was always sorta assumed that you'd be generating the statsrelay config programmatically rather than writing it by hand, so we never really worried about making it terribly user friendly.