Giter Site home page Giter Site logo

descartes's People

Contributors

bitprophet avatar brntbeer avatar chrisboulton avatar gorsuch avatar jssjr avatar obfuscurity avatar pauloconnor avatar protip avatar srfraser avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

descartes's Issues

Metrics section

This page would allow users to search/filter metrics and ideally present sparklines of each metric as it loads. Eventually this could become a launching point for creating new graphs.

Basic Auth

Support basic HTTP authentication as an alternative to Google OpenID.

Better mode for destructive actions

Descartes needs to be in an edit/destructive mode when performing actions like deleting a graph or dashboard. Currently we just pop up a delete button on hover. This is also needed for iOS clients.

Rework graph toolbar

Need to rework the workflow for importing graphs and creating/appending-to dashboards in the palette. Originally mentioned in #31.

Graph Palette

... for lack of a better name. Basically this is a place where all graphs will appear. Common tasks to perform here will be to find and add graphs to personal workspaces, tag graphs, etc.

Annotations

Ability to add "notes" to a metric via our UI. This would submit a new annotation metric to Graphite.

Fullscreen layout

Clicking the "fullscreen" button should load a fullscreen-friendly layout, it should not enable the browser's fullscreen mode.

Graph gists

This would provide a workflow around transient (read: mocking) or snapshot graphs. There are two proposed workflows that would seem useful:

  • User A begins mocking up a new graph but wants to share it with User B before saving it as a real graph. Perhaps User B makes some changes or comments (discussion) surrounding the graph. They collaborate on it and eventually save it as a real graph.
  • User C has an existing saved graph and wants to share a particular view/event with someone outside the company (without access to Descartes or their Graphite server). The graph is snapshotted, both as metadata in the db and as an image on S3. This provides a hashed url that can be shared with anyone publicly.

Gists would have their own section within Descartes, with complete search functionality. If the gist is associated with a saved graph, its profile page would reference that graph accordingly.

Conversely, any graphs with associated gist snapshots would contain some sort of gallery view of snapshots within the graph profile view.

Move tag search field to page header

Does not belong in navigation bar. This current layout also causes problems with the responsive layout on resizing. Proposed redesign would look something like the following.

Client-side rendering

Perform client-side rendering of charts using D3, rather than relying on the Graphite png output. This will allow us to support interactive features like hover legends, "infinite" axes and multi-dimensional charts.

Timeshift Graphs in a Workspace

Allow the user to select a custom time period / range for the graphs in the current workspace. Ideally, they should be able to save this as the "default view". Unsure if this should be a global default or per-user default.

Graph profile view

Clicking on a graph from the palette or dashboard should take you to this page. Should allow you to update the name and description, and add tags. It should also contain a larger version of the graph instance with the legend enabled.

Save advanced graph settings

Advanced graph settings (lineMode, areaMode, logBase and drawNullAsZero) are currently transient. Need them to be written to and read from the graph config (overrides table) in the database.

Add graph by URL

Instead of requiring users to import from Saved Graphs. For example, a read-only Graphite user with a composed graph but no way to save it. Should be easy enough to add this in the existing accordion form.

Conversations associated with metrics

These would be associated with specific annotations. As such, they would (be available to) appear anytime a particular annotation event was visible on the graph / timeframe.

Display active tag filters

We should display any current filters somewhere on the page (besides the search box) so it's obvious we're looking at a subset of data.

Graph Composer

Provide an interface for creating/modifying graphs within Descartes. This should provide users with a native alternative to Graphite's composer.

Ability to save dashboard layout

Possibly a button in the toolbar (next to refresh) that saves the current Interval/Columns view to the dashboards.configuration blob.

Personal dashboards

Like we do in Tasseo, allow users to define their own dashboard spaces ("workspaces?") to display the graphs of their choosing. Users should be able to add graphs to this space from the Palette (visual mode) or using search from inside the dashboard (textual mode).

Graph Comments

Ability to post comments to a graph. These would be associated with the graph object proper, not any metrics/annotations referenced within.

Also, consider adding a global annotation type that would appear on all graphs.

URL-driven dashboards and graphs

Graph and dashboard options (e.g. interval, date range) should be capable of being set via the URL. Example URL:

/dashboards/bc3aa3c01973395f118d948824db60f8?columns=1&from=HH:MM_YYMMDD&until=HH:MM_YYMMDD

Log_mode "e" button not active on selection

The jQuery :contains() selector does not appear to work with a single alphabetic character. Demonstrated in the console:

$($('.log_mode.btn-group button.log_mode.btn:contains("e")')).attr('name');
undefined
$($('.log_mode.btn-group button.log_mode.btn:contains("1")')).attr('name');
"2"
$($('.log_mode.btn-group button.log_mode.btn:contains("10")')).attr('name');
"2"
$($('.log_mode.btn-group button.log_mode.btn:contains("2")')).attr('name');
"3"
$($('.log_mode.btn-group button.log_mode.btn:contains("o")')).attr('name');
undefined
$($('.log_mode.btn-group button.log_mode.btn:contains("of")')).attr('name');
"1"
$($('.log_mode.btn-group button.log_mode.btn:contains("off")')).attr('name');
"1"

The DOM in question:

              <div class='log_mode btn-group'>
                <button class='log_mode btn disabled'>Logarithmic Base</button>
                <button class='log_mode btn active' name='1' value='off'>off</button>
                <button class='log_mode btn' name='2' value='10'>10</button>
                <button class='log_mode btn' name='3' value='2'>2</button>
                <button class='log_mode btn' name='4' value='e'>e</button>
              </div>

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.