blacklocus / anvil Goto Github PK
View Code? Open in Web Editor NEW(experimental) Linkable CloudWatch metrics graphs
Home Page: https://anvil.blacklocus.com
(experimental) Linkable CloudWatch metrics graphs
Home Page: https://anvil.blacklocus.com
Organizations can then share a link embedded with preferred configuration.
do it in a modal (because the boards are too large to drag-order). Consider click and drag handles. It won't be too horrible in the minimal elements of the modal (drag would be very horrible trying to attach to the actual boards on the main page)
Metrics are often not named particularly descriptively. Allow a wall override of the name. This will have to be serialized into saved data.
It's hard to tell the difference between 100000 and 1000000 without commas. I don't know if this still applies, but something on this page might do the trick: http://stackoverflow.com/questions/5968212/comma-separated-numbers-for-an-axis-in-flot
filter by creator, order by name, etc
Metrics cost $. A lot of metrics probably go unused. Generate a report of metrics that are not referenced by any wall.
because there may be useful documentation there, that concerns a potential user
should really get some tests in here because prior things are going to start breaking as more features are added. The current rough set of features follows, which could be broken down into smaller scenarios, or could all be stitched into one giant "story"
auth check works, but other configuration isn't involved (like s3 bucket, prefix) and so is not verified.
Make the check better. Inform check failures to users in a useful way, e.g.
Failed to read Anvil data for your organization. Did you receive a "shared configuration link" provided by your organization? Did you click "Check and Save" on the configuration page?
This is standard browser behavior which has been somehow subverted by our application (probably ui-router).
Because all pages have proper linking navigation, this should be possible. Just need to
turn the "View" button into an <a href="..." class="btn" ...>
and I think the browser will do the right thing.
I have been able to trigger overlapping searches, which have caused the "Search ..." text to disappear prematurely
Time/window/period sliders/dials will quickly become absolutely onerous if done to 100%. Start with a small input on the window/period which reads something like "overlay adjacent windows".
This will require some help text to explain what the hell it is.
Often in practice the metric name is the same across many series added to the same board. Often dimensions are the only part of the metric identifier that differs.
Concatenate all identifiers of a metric and then default the displayed name to portion of that string which is unique (differentiable) from all other such series identifiers (new behavior).
If that produces no string, fallback to the plain name field (existing behavior).
so that a potential user understands what AWS resources are in play, and a general idea of how anvil works (walls defined in JSON stored in S3, all data is read directly from AWS APIs, ...)
so that this app can be used by anyone
possibly a race condition between
graph refresh purple spinner disppears before graph is actually refreshed
All solutions seem to require a backend?
In configuration provide optional indexer http endpoint, which is a search backend. If a backend has been defined, make searches run against that instead of against CloudWatch.listMetrics
Update: 2015/04/16
Scoured the internet to finally arrive at half an answer https://forums.aws.amazon.com/thread.jspa?messageID=595838&tstart=0 and https://forums.aws.amazon.com/thread.jspa?messageID=599963
What I really wanted was to authenticate with AWS console credentials (and so permissions are checked by those associated with IAM users), which is not available for API use. So, where do we go from here?
Currently the x-axis is the min/max datetime of data points. If the window is set to 12 hours, but the series only go as far as 2 hours back, the x-axis starts 2 hours ago, which can be confusing since the window is set to 12.
Explicitly set the range of the x-axis to [now - window, now]
example: current series includes something with name "the orange metric"
user clicks on "the orange metric" and that is copied into the corresponding search field. This will be particularly useful on namespaces which are likely the same for a particular board
for attaching to other things
There's a big difference between no-data and "I'm not sure if this is data or flot is just connecting the dots"
There's a flot plugin that might work
http://joeloughton.com/blog/web-applications/flot-plugins-x-gap-threshold/
Set gaps threshold based on aggregation period, e.g. if aggregation periods of 15 minutes is selected,
then a continuous set of data would have a point every 15 minutes. A gap is any consecutive pair of points more than 15 minutes apart.
This will have be serialized into the saved data.
The present value of anvil is simply to save, recall, and share selections of series. Take it to the next (nearby) level of allowing a few basic layouts.
by clicking the little squares in the legend
but it probably doesn't
Would be slightly nicer than refreshing the whole page because scroll.
Loading is a little slow (but not really) because there are a bunch of individual files that the browser must retrieve. Right now it's not too many, but eventually there will be more and slow load is always unacceptable (says me).
gulp-concat all the js into one file?
webpack?
browserify?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.