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

Supporting different metrics backends #309

Open
aalpern opened this issue Sep 13, 2014 · 3 comments
Open

Supporting different metrics backends #309

aalpern opened this issue Sep 13, 2014 · 3 comments

Comments

@aalpern
Copy link
Member

aalpern commented Sep 13, 2014

Thoughts have been running through my head occasionally on how to support more metrics backends than just Graphite (i.e. InfluxDB), so this is a spot for preliminary thoughts and discussion.

With querying for data mostly isolated to the ds.models.data.Query class, creating infrastructure for handling different kinds of queries and transforming them to a common data format should make it fairly straightforward.

@obfuscurity
Copy link

Funny, I was looking through the code this morning wondering the exact same thing (except for Librato). 😉

It looks like there's a lot of duplicated stuff throughout, e.g. graphite url refs. Would be nice if things were a bit more normalized first but I know that's a lot of work.

@aalpern
Copy link
Member Author

aalpern commented Sep 13, 2014

Yeah - the javascript code in particular is a bit of a hot mess, but gradually moving towards sanity. This is my first big JS project :). A few more bug fixes and bits of packaging/polishing work and I'll be ready to call it 1.0 - then the next big push will be to clean things up.

@aalpern
Copy link
Member Author

aalpern commented Dec 13, 2015

Minor update - I'm currently investigating adding support for multiple backends by way of a gateway that can multiplex queries to different backends (looking at graphite, influxdb, prometheus, and opentsdb initially) and return results in a common format.

So, rather than browser -> graphite, we get browser -> time series gateway -> [graphite/influx/etc...], and would gain the ability to include data from multiple backends in a single dashboard with minimal impact on the frontend code.

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

No branches or pull requests

2 participants