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

Time Series Metric Visualizations #9725

Merged
merged 131 commits into from
Mar 2, 2017
Merged

Conversation

simianhacker
Copy link
Member

@simianhacker simianhacker commented Jan 4, 2017

This PR is for adding a new time series metrics editor and visualizations to Kibana. It supports the current set of pipeline aggregations and is gear towards time series data sets. It comes with 5 visualization types: Histogram, Gauge, Metric, Top N, and Markdown (with variable substitution).

screenshot from 2017-01-04 12-46-47

Feature list:

  • Full pipeline aggregation support (including sibling aggs)
  • Multiple Y-Axes
  • Fully customization histograms (line, area, bar)
  • Circle Gauges and Half Circle Gauges with customizable styles
  • Percentile bands
  • Standard deviation bands
  • Time shifting
  • Custom index patterns for each series
  • Customizable background colors
  • Rule based background and text colors for metrics visualization
  • Rule based gauge and text colors
  • Rule based bars for Top N visualization
  • Custom CSS for Markdown visualization
  • Markdown variable substitution with live aggregation data
  • Annotations for time series histograms with multiple sources
  • Ratios based on query strings

@tbragin
Copy link
Contributor

tbragin commented Jan 4, 2017

@simianhacker When i tried to build on top of master from last night, I got the following optimization errors. Have you seen that? https://gist.github.com/tbragin/572ddac9e18340376e50e02e4e536621

@simianhacker
Copy link
Member Author

Oops... forgot to add the flot-charts dependencies

@tbragin
Copy link
Contributor

tbragin commented Jan 5, 2017

@simianhacker I got it built after the latest update, looking at it now :)

@tbragin tbragin added the Feature:Visualizations Generic visualization features (in case no more specific feature label is available) label Jan 8, 2017
@tbragin
Copy link
Contributor

tbragin commented Jan 8, 2017

One issue we must resolve right off the bat is one of naming. Right now in Visualize, all of the options aside from Timelion and this new Timeseries Metric vis are specific chart types. This is what the naming looks like in this WIP PR.
screen shot 2017-01-09 at 10 51 54 am

My proposal is to:

  1. Group both with the prefix "Timeseries" and differentiate between Metrics and Timelion by naming them "Timeseries: Something" and "Timeseries: Something Else". Alternatively, we can drop "Timeseries" from both, but I sort of like being explicit about the fact that both work with time-series data specifically. (Note: It appears that "time series" is actually usually written as two words, though we currently spell it as one word in the case of Timelion.)

  2. We also probably need new icons for these two options.

  3. Finally, it may be worthwhile to consider renaming "Metric" to something like "Single-value metric" or "Singlestat" to avoid confusion with the term "Metrics" what I think is central to the goal of thist time-series visualization.

Proposal 1. Discussed with @simianhacker originally.

screen shot 2017-01-08 at 1 19 32 pm

Proposal 2. The more I thought about it, using "Metrics" for this is ambiguous, as Timelion deals with metric data as well. The main difference between the Timelion approach vs this enhancement is expressions vs visual builder.

screen shot 2017-01-09 at 10 40 14 am

@thomasneirynck @ppisljar @uboness @cjcenizal @alt74 @simianhacker @kimchy Thoughts?

@tbragin
Copy link
Contributor

tbragin commented Jan 9, 2017

@simianhacker Does this visual builder support doing series ratio? So for instance ratio of errors to overall transactions, the equivalent of the following logic in Timelion: .es(q="error").divide(.es(q="*"))

@simianhacker
Copy link
Member Author

@tbragin For a series ratio's you are limited to metric and pipeline aggregations for the series; sibling aggregations are not available from the bucket_script; this is a limitation set by Elasticsearch. Timelion isn't bound by this limitation because only the basic aggregations are handle in Elasticsearch; everything else is calculated on the Kibana server.

@thomasneirynck thomasneirynck self-assigned this Jan 9, 2017
@tbragin
Copy link
Contributor

tbragin commented Jan 11, 2017

@uboness and I chatted and discussed the naming - a couple of ideas there:

  • "Metric" -> "Number"
  • "Timeseries: Visual builder" (will need some other icon, didn't dig in)
  • "Timeseries: Timelion chart" (use Timelion icon instead of the clock)
  • Sort list of visualizations non-alphabetically to put the most important visualizations first, and to group time-series related items at the bottom.

screen shot 2017-01-11 at 3 23 05 pm

One thing I don't like right now is that descriptions push visualization types off page. Have we considered getting rid of them? Most people know what an area chart is - we don't need three lines of text explaining it. I personally prefer the simplified view without any descriptions because the chart types don't roll off the screen and Timelion and this new visual builder are a lot more discoverable as a result.

screen shot 2017-01-11 at 3 56 59 pm

@kimchy @simianhacker @alt74 @cjcenizal @ppisljar @thomasneirynck ^^

@ppisljar
Copy link
Member

descriptions: i agree we don't need them .... but not seeing all the charts on one screen .... it really depends more on the number of charts and your screen resolution. What CJ is working on (removing open saved vis from this screen) is gonna solve this problem better. Probably we should put this (removing of description) in the CJs PR and not here.

@ggupta
Copy link

ggupta commented Mar 1, 2017

In a meeting room with Shay, Chris Cowan, JeffY, Michal, etc and we were going through the features we are highlighting for the Elasticon Keynote. The the naming scheme for some of the chart types in Visualize immediately struck us as a bit odd. 'Timeseries' as a single word is just not a word. It makes it seem like we are coming up with something special, which is not necessary here. Also preceding the two chart types with a colon also seems a little weird (I wonder if there's another way to let people know Timelion is for time series data through help text). A simple proposal is to just use the following for now:

"Time series visual builder"
"Timelion"

@alexfrancoeur
Copy link

@simianhacker I think I may have either ran into a bug or am misunderstanding the design. I'm looking at standard stock data from 2009 with other indices on my local kibana instance.

Steps to reproduce:

  1. Load up the new vis builder
  2. Select Panel Options
  3. Change index pattern from * to stocks*. The time field (specific to that index) is trade_date - all is well

screen shot 2017-03-02 at 7 45 03 am

  1. Change group by from Everything to Terms
  2. Terms for all indices appear rather than just those specific to stocks*

screen shot 2017-03-02 at 7 45 42 am

However, if I select Aggregate, only the fields specific to stocks* appear. I'd expect the terms to do the same. Let me know if this is a bug or if I'm doing something crazy here.

screen shot 2017-03-02 at 7 46 20 am

@simianhacker
Copy link
Member Author

@alexfrancoeur Good catch... fixed

@simianhacker simianhacker merged commit 4f3e625 into elastic:master Mar 2, 2017
simianhacker added a commit to simianhacker/kibana that referenced this pull request Mar 2, 2017
* Initial import

* updating the editor width to match the new specs

* Adding tribe node support

* Adding tests for server libs

* removing bluebird

* removing extra cruft

* Fixing the font sizes

* Fixed the updating code

* Adding brushing

* Fixing linting issues

* Adding global filters

* Adding missing packages

* Default gauge style to half circle

* Fixing the markdown css bug

* Adding tests for the get_vis_data api

* Adding time offset

* Adding time offset to each type

* fixing bugs from time offset

* adding index pattern option to series

* Adding index pattern overrides

* Adding index pattern overrides

* Fixing tests

* Fixing brushing in the vis editor

* Changing the label

* Change the behavior of selecting a pipeline agg when only one exists.

* Refactoring series a bit

* Changing series options to just options

* Making sure we honor the toaster container height

* Adding first tests

* renaming vis_config to panel_config

* renaming vis_config to panel_config

* Adding more tests

* adding more tests

* removing api subdirectory

* refactoring get_vis_data (breaking it up and removing unused imports)

* reorganizing the visualization directory

* Re-organizing directory layouts and moving things to more logical places

* Refactoring React compontents to use ES6 syntax and adding propTypes for each. Also refactored out splats as much as possible.

* Adding serial differencing

* Refactored gauge to use 2 components instead of 4

* Finishing react refactor on visualizations. Consolidated legned funtionality

* Refactoring series config and removing a bunch of duplicate code

* fixing series config name

* Fixing numbers and strings (doesnt matter which it is); Fixing classname

* Changing the way the dark theme works

* Adding new vis into list for test

* Adding empty bucket check

* Fixing the index patterns in the aggs

* Fixing typo

* Refactoring vis_data

* Fixing std_metric

* Fixing refresh-hack

* Adding tests for get_splits, get_last_metric, map_bucket

* Fixing the error handing

* removing restrictions

* Sometimes values are strings or numbers... it doesn't matter

* Adding new color options for splits

* Fixing colors

* fixing size

* Adding support for fitlers agg

* Fixing tests

* Fixing splits for filters

* Fixing Top N to work better with fitlers

* Adding annotation editor

* initial work for annotations

* Finalizing annotations

* Fixing label

* making it expandable

* Fixing hacks fixed by elastic#10175

* Fixing bars to use the same stacking options as lines

* Getting rid of align by colons

* removing unused depends

* removing unused depends

* Changing to readable lodash function

* Adding missing parens

* refactoring custom color picker

* Removing string refs and converting uncontrolled components

* Fixing the controlled components where value maybe null; converting error to css

* refactoring styles from components

* fixing the refresh behavoir borked by fullEditor

* Adding the executor service

* Fixing the test directories

* fixing save

* Adding filter ratios

* Fixing controlled components

* Trying to fix the weird typing

* Fixing offset bug with days

* Adding percentile rank

* Fixing yaxis updates; fixing percentile rank layout; adding steps to line chart

* removing unused depends

* Fixed a bug with the index patterns updating; fixed bug with charts rendering too much

* Fixing tests

* Commenting out React tests because the ENV must have change and they are no longer working

* Moving bucket transform

* moving calculate auto

* Moving calculate_indices

* moving extended_stats_types && get_agg_value

* moving get_buckets_path

* moving get_sibling_agg_value

* moving parse_settings

* moving series_agg

* Moving unit_to_seconds

* Fixing tests

* Fixing per PR

* Renaming vars to make it more clear what's happening

* Changing the way testible functions are exported

* fixing tests

* removing unused imports; fixing typos; fixing package name

* Name has to match the plugin path

* Fixing typos; removing unused imports

* fixing tests

* rearanging and removing unused imports

* Fixing a bug with unque names for radio buttons on the same form

* Fixing filter ratio to use a metric instead of just count

* fixing a bug with the new filter ratios

* Fixing the file path from the #8

* Fixing renderComplete trigger; Fixing embedded mode; Changing names for Timelion and Time Series Visual Builder

* Fixing name

* Fixing docs

* Fixing a typo for the field select for terms splits

* Fixing tests
elastic-jasper added a commit that referenced this pull request Mar 2, 2017
Backports PR #9725

**Commit 1:**
Initial import

* Original sha: f9d527e
* Authored by Chris Cowan <chris@chriscowan.us> on 2016-12-21T00:27:11Z

**Commit 2:**
Merge branch 'master' of github.com:elastic/kibana into metrics

* Original sha: c5e936f
* Authored by Chris Cowan <chris@chriscowan.us> on 2016-12-21T14:26:16Z

**Commit 3:**
updating the editor width to match the new specs

* Original sha: 0d0f4c6
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-02T16:51:06Z

**Commit 4:**
Merge branch 'master' of github.com:elastic/kibana into metrics

* Original sha: 2fb42d0
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-02T16:54:40Z

**Commit 5:**
Adding tribe node support

* Original sha: 63a736a
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-02T16:57:40Z

**Commit 6:**
Adding tests for server libs

* Original sha: 6ede79b
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-02T22:34:57Z

**Commit 7:**
removing bluebird

* Original sha: 1cb2860
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-02T22:39:23Z

**Commit 8:**
removing extra cruft

* Original sha: 4efe0ec
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-04T17:01:32Z

**Commit 9:**
Fixing the font sizes

* Original sha: 33f4d53
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-04T18:09:08Z

**Commit 10:**
Fixed the updating code

* Original sha: 51ff9f8
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-04T18:56:29Z

**Commit 11:**
Adding brushing

* Original sha: 2ba0463
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-04T20:23:46Z

**Commit 12:**
Fixing linting issues

* Original sha: 09b6ada
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-04T20:33:12Z

**Commit 13:**
Adding global filters

* Original sha: 985ec1c
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-04T21:44:20Z

**Commit 14:**
Adding missing packages

* Original sha: bd87e89
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-05T13:16:15Z

**Commit 15:**
Default gauge style to half circle

* Original sha: 5ce7d85
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-05T15:10:51Z

**Commit 16:**
Fixing the markdown css bug

* Original sha: 0b72290
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-05T15:26:53Z

**Commit 17:**
Adding tests for the get_vis_data api

* Original sha: a6e91ba
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-12T15:16:05Z

**Commit 18:**
Adding time offset

* Original sha: 5ee12ac
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-12T17:36:56Z

**Commit 19:**
Adding time offset to each type

* Original sha: ee52e34
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-12T17:42:33Z

**Commit 20:**
fixing bugs from time offset

* Original sha: 16b7469
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-13T23:12:18Z

**Commit 21:**
adding index pattern option to series

* Original sha: 1e64c7c
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-17T21:57:13Z

**Commit 22:**
Merge branch 'master' of github.com:elastic/kibana into metrics

* Original sha: b4ce642
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-17T23:05:40Z

**Commit 23:**
Adding index pattern overrides

* Original sha: b5ff6c6
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T05:29:25Z

**Commit 24:**
Adding index pattern overrides

* Original sha: 6641c8e
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T05:38:12Z

**Commit 25:**
Fixing tests

* Original sha: b7822ec
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T05:43:56Z

**Commit 26:**
Fixing brushing in the vis editor

* Original sha: 74dc57f
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T17:14:04Z

**Commit 27:**
Changing the label

* Original sha: 95e58b0
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T17:19:03Z

**Commit 28:**
Change the behavior of selecting a pipeline agg when only one exists.

* Original sha: 5d2bf42
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T18:18:57Z

**Commit 29:**
Refactoring series a bit

* Original sha: f1ff198
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T18:33:15Z

**Commit 30:**
Changing series options to just options

* Original sha: 23821b5
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T20:34:59Z
simianhacker pushed a commit that referenced this pull request Mar 2, 2017
Backports PR #9725

**Commit 1:**
Initial import

* Original sha: f9d527e
* Authored by Chris Cowan <chris@chriscowan.us> on 2016-12-21T00:27:11Z

**Commit 2:**
Merge branch 'master' of github.com:elastic/kibana into metrics

* Original sha: c5e936f
* Authored by Chris Cowan <chris@chriscowan.us> on 2016-12-21T14:26:16Z

**Commit 3:**
updating the editor width to match the new specs

* Original sha: 0d0f4c6
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-02T16:51:06Z

**Commit 4:**
Merge branch 'master' of github.com:elastic/kibana into metrics

* Original sha: 2fb42d0
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-02T16:54:40Z

**Commit 5:**
Adding tribe node support

* Original sha: 63a736a
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-02T16:57:40Z

**Commit 6:**
Adding tests for server libs

* Original sha: 6ede79b
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-02T22:34:57Z

**Commit 7:**
removing bluebird

* Original sha: 1cb2860
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-02T22:39:23Z

**Commit 8:**
removing extra cruft

* Original sha: 4efe0ec
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-04T17:01:32Z

**Commit 9:**
Fixing the font sizes

* Original sha: 33f4d53
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-04T18:09:08Z

**Commit 10:**
Fixed the updating code

* Original sha: 51ff9f8
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-04T18:56:29Z

**Commit 11:**
Adding brushing

* Original sha: 2ba0463
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-04T20:23:46Z

**Commit 12:**
Fixing linting issues

* Original sha: 09b6ada
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-04T20:33:12Z

**Commit 13:**
Adding global filters

* Original sha: 985ec1c
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-04T21:44:20Z

**Commit 14:**
Adding missing packages

* Original sha: bd87e89
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-05T13:16:15Z

**Commit 15:**
Default gauge style to half circle

* Original sha: 5ce7d85
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-05T15:10:51Z

**Commit 16:**
Fixing the markdown css bug

* Original sha: 0b72290
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-05T15:26:53Z

**Commit 17:**
Adding tests for the get_vis_data api

* Original sha: a6e91ba
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-12T15:16:05Z

**Commit 18:**
Adding time offset

* Original sha: 5ee12ac
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-12T17:36:56Z

**Commit 19:**
Adding time offset to each type

* Original sha: ee52e34
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-12T17:42:33Z

**Commit 20:**
fixing bugs from time offset

* Original sha: 16b7469
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-13T23:12:18Z

**Commit 21:**
adding index pattern option to series

* Original sha: 1e64c7c
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-17T21:57:13Z

**Commit 22:**
Merge branch 'master' of github.com:elastic/kibana into metrics

* Original sha: b4ce642
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-17T23:05:40Z

**Commit 23:**
Adding index pattern overrides

* Original sha: b5ff6c6
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T05:29:25Z

**Commit 24:**
Adding index pattern overrides

* Original sha: 6641c8e
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T05:38:12Z

**Commit 25:**
Fixing tests

* Original sha: b7822ec
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T05:43:56Z

**Commit 26:**
Fixing brushing in the vis editor

* Original sha: 74dc57f
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T17:14:04Z

**Commit 27:**
Changing the label

* Original sha: 95e58b0
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T17:19:03Z

**Commit 28:**
Change the behavior of selecting a pipeline agg when only one exists.

* Original sha: 5d2bf42
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T18:18:57Z

**Commit 29:**
Refactoring series a bit

* Original sha: f1ff198
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T18:33:15Z

**Commit 30:**
Changing series options to just options

* Original sha: 23821b5
* Authored by Chris Cowan <chris@chriscowan.us> on 2017-01-18T20:34:59Z
// import AddDeleteButtons from '../add_delete_buttons';
// import Tooltip from '../tooltip';

// describe('<AddDeleteButtons />', () => {
Copy link
Contributor

@kimjoar kimjoar Mar 3, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Both giving LGTMs and merging while tests are commented out? -1 from me. I'm hoping there is an issue created already to fix this? If we can't get tests to run we have to either fix them or delete them.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(Oh, saw the comment in the backport. I still think this should have been fixed first though. Broken windows and all that.)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with your sentiment but we (team) wanted to get this commit in this week so it would be available via snapshots for Elastic{ON} and allow more time for people to use it before 5.4 ships. Luckily this is "soft"ware and we can work towards getting Enzyme working again. It broke when the Babel upgrade occurred; had this been merged before that upgrade it would hve been addressed by that team. The issue I have with keeping PR's like this separate for too long is you keep having to chase master as they change things; the PR keeps getting bigger and never seems to finish. With this merged we can now focus on creating smaller more manageable PR's to fix anything that needs addressed between now and code freeze.

@alexfrancoeur
Copy link

alexfrancoeur commented Mar 3, 2017

Update: Issue created for bug tracking #10683
@simianhacker I can't seem to change the date with timelion in both the panel and metric options. They show up as available options but when selected, I get the following error in Kibana. Thoughts?

status: 400, displayName: 'BadRequest', message: '[illegal_argument_exception] Invalid format: "2015-11-25T11:16:25.765Z" is malformed at "T11:16:25.765Z"', path: '/*/_field_stats', query: { level: 'indices', ignore_unavailable: true }, body: { error: { root_cause: [Object], type: 'illegal_argument_exception', reason: 'Invalid format: "2015-11-25T11:16:25.765Z" is malformed at "T11:16:25.765Z"' }, status: 400 }, statusCode: 400, response: '{"error":{"root_cause":[{"type":"illegal_argument_exception","reason":"Invalid format: \\"2015-11-25T11:16:25.765Z\\" is malformed at \\"T11:16:25.765Z\\""}],"type":"illegal_argument_exception","reason":"Invalid format: \\"2015-11-25T11:16:25.765Z\\" is malformed at \\"T11:16:25.765Z\\""},"status":400}', toString: [Function], toJSON: [Function] }

screen shot 2017-03-03 at 5 11 11 am

Date format is the following
"dropoff_datetime": { "type": "date", "format": "yyyy-MM-dd HH:mm:ss" }

There doesn't seem to be an issue in Timelion
screen shot 2017-03-03 at 7 21 01 am

@simianhacker simianhacker deleted the metrics branch March 16, 2017 21:34
coverslide pushed a commit to coverslide/kibana that referenced this pull request Mar 17, 2017
* Initial import

* updating the editor width to match the new specs

* Adding tribe node support

* Adding tests for server libs

* removing bluebird

* removing extra cruft

* Fixing the font sizes

* Fixed the updating code

* Adding brushing

* Fixing linting issues

* Adding global filters

* Adding missing packages

* Default gauge style to half circle

* Fixing the markdown css bug

* Adding tests for the get_vis_data api

* Adding time offset

* Adding time offset to each type

* fixing bugs from time offset

* adding index pattern option to series

* Adding index pattern overrides

* Adding index pattern overrides

* Fixing tests

* Fixing brushing in the vis editor

* Changing the label

* Change the behavior of selecting a pipeline agg when only one exists.

* Refactoring series a bit

* Changing series options to just options

* Making sure we honor the toaster container height

* Adding first tests

* renaming vis_config to panel_config

* renaming vis_config to panel_config

* Adding more tests

* adding more tests

* removing api subdirectory

* refactoring get_vis_data (breaking it up and removing unused imports)

* reorganizing the visualization directory

* Re-organizing directory layouts and moving things to more logical places

* Refactoring React compontents to use ES6 syntax and adding propTypes for each. Also refactored out splats as much as possible.

* Adding serial differencing

* Refactored gauge to use 2 components instead of 4

* Finishing react refactor on visualizations. Consolidated legned funtionality

* Refactoring series config and removing a bunch of duplicate code

* fixing series config name

* Fixing numbers and strings (doesnt matter which it is); Fixing classname

* Changing the way the dark theme works

* Adding new vis into list for test

* Adding empty bucket check

* Fixing the index patterns in the aggs

* Fixing typo

* Refactoring vis_data

* Fixing std_metric

* Fixing refresh-hack

* Adding tests for get_splits, get_last_metric, map_bucket

* Fixing the error handing

* removing restrictions

* Sometimes values are strings or numbers... it doesn't matter

* Adding new color options for splits

* Fixing colors

* fixing size

* Adding support for fitlers agg

* Fixing tests

* Fixing splits for filters

* Fixing Top N to work better with fitlers

* Adding annotation editor

* initial work for annotations

* Finalizing annotations

* Fixing label

* making it expandable

* Fixing hacks fixed by elastic#10175

* Fixing bars to use the same stacking options as lines

* Getting rid of align by colons

* removing unused depends

* removing unused depends

* Changing to readable lodash function

* Adding missing parens

* refactoring custom color picker

* Removing string refs and converting uncontrolled components

* Fixing the controlled components where value maybe null; converting error to css

* refactoring styles from components

* fixing the refresh behavoir borked by fullEditor

* Adding the executor service

* Fixing the test directories

* fixing save

* Adding filter ratios

* Fixing controlled components

* Trying to fix the weird typing

* Fixing offset bug with days

* Adding percentile rank

* Fixing yaxis updates; fixing percentile rank layout; adding steps to line chart

* removing unused depends

* Fixed a bug with the index patterns updating; fixed bug with charts rendering too much

* Fixing tests

* Commenting out React tests because the ENV must have change and they are no longer working

* Moving bucket transform

* moving calculate auto

* Moving calculate_indices

* moving extended_stats_types && get_agg_value

* moving get_buckets_path

* moving get_sibling_agg_value

* moving parse_settings

* moving series_agg

* Moving unit_to_seconds

* Fixing tests

* Fixing per PR

* Renaming vars to make it more clear what's happening

* Changing the way testible functions are exported

* fixing tests

* removing unused imports; fixing typos; fixing package name

* Name has to match the plugin path

* Fixing typos; removing unused imports

* fixing tests

* rearanging and removing unused imports

* Fixing a bug with unque names for radio buttons on the same form

* Fixing filter ratio to use a metric instead of just count

* fixing a bug with the new filter ratios

* Fixing the file path from the elastic#8

* Fixing renderComplete trigger; Fixing embedded mode; Changing names for Timelion and Time Series Visual Builder

* Fixing name

* Fixing docs

* Fixing a typo for the field select for terms splits

* Fixing tests
@tbragin
Copy link
Contributor

tbragin commented May 1, 2017

@jimgoodwin Summary & screenshots for 5.4 release blog

Time Series Visual Builder provides a specialized user interface for users working with time series data. It allows users to build up analytics based on time-series in a visual way and uses pipeline aggregations in Elasticsearch to fully distribute all of the computation. While support for some of the pipeline aggregations is available in traditional Visualize charts, with Time Series Visual Builder we wanted to provide a curated experience focused specifically on working with time series data. Making the assumption around time-series simplifies the user interface and saves users many steps when building up these types of charts. Time Series Visual Builder also adds some unique features, such as confidence bands and annotations, specific to the time-series use case. Time Series Visual Builder is marked “experimental” in Kibana 5.4, which means that we may change or modify this feature in the future, and do not guarantee backward compatibility of charts built using this visualization type until it becomes available in GA.

tsvb1
tsvb2
tsvb3

@trevorndodds
Copy link

When using derivative with the network counters system.network.in.bytes / system.network.out.bytes when the incrementing counter resets I'm sometimes left with a rather large negative number, this usually occurs when the network is really busy thus increasing the value very quick. How do you deal with these negatives?

@simianhacker
Copy link
Member Author

@trevorndodds Add a "positive only" pipeline agg and set the derivative as the target metric

image

@trevorndodds
Copy link

Great thank you, I had to upgrade.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature:Visualizations Generic visualization features (in case no more specific feature label is available) review v5.4.0 v6.0.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants