From 2672b724b5ec4352bc2f1d1ae8ecde5530643985 Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Tue, 29 Dec 2015 14:10:00 -0500 Subject: [PATCH 01/60] beginning to play with jsdata (cherry picked from commit 8cbf211) --- package.json | 2 ++ .../public/settings/sections/data/_review.html | 1 + .../kibana/public/settings/sections/data/_review.js | 13 +++++++++++++ .../kibana/public/settings/sections/data/index.js | 1 + .../kibana/public/settings/sections/index.js | 1 + src/ui/public/store/store.js | 6 ++++++ 6 files changed, 24 insertions(+) create mode 100644 src/plugins/kibana/public/settings/sections/data/_review.html create mode 100644 src/plugins/kibana/public/settings/sections/data/_review.js create mode 100644 src/plugins/kibana/public/settings/sections/data/index.js create mode 100644 src/ui/public/store/store.js diff --git a/package.json b/package.json index 0718b94b1831..243b8f9157a9 100644 --- a/package.json +++ b/package.json @@ -108,6 +108,8 @@ "jade-loader": "0.7.1", "joi": "6.6.1", "jquery": "2.1.4", + "js-data": "2.8.2", + "js-data-angular": "3.1.0", "js-yaml": "3.4.1", "json-loader": "0.5.3", "json-stringify-safe": "5.0.1", diff --git a/src/plugins/kibana/public/settings/sections/data/_review.html b/src/plugins/kibana/public/settings/sections/data/_review.html new file mode 100644 index 000000000000..c5af519b1516 --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/data/_review.html @@ -0,0 +1 @@ +
hello kibana
diff --git a/src/plugins/kibana/public/settings/sections/data/_review.js b/src/plugins/kibana/public/settings/sections/data/_review.js new file mode 100644 index 000000000000..08f667378b04 --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/data/_review.js @@ -0,0 +1,13 @@ +import routes from 'ui/routes'; +import modules from 'ui/modules'; +import template from 'plugins/kibana/settings/sections/data/_review.html'; +import storeProvider from 'ui/store'; + +routes.when('/settings/data', { + template: template +}); + +modules.get('apps/settings') + .controller('settingsDataReview', function ($scope, Private) { + var store = Private(storeProvider); + }); diff --git a/src/plugins/kibana/public/settings/sections/data/index.js b/src/plugins/kibana/public/settings/sections/data/index.js new file mode 100644 index 000000000000..63e57128fb22 --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/data/index.js @@ -0,0 +1 @@ +import review from 'plugins/kibana/settings/sections/data/_review'; diff --git a/src/plugins/kibana/public/settings/sections/index.js b/src/plugins/kibana/public/settings/sections/index.js index c2be1402c526..0ef737f9437a 100644 --- a/src/plugins/kibana/public/settings/sections/index.js +++ b/src/plugins/kibana/public/settings/sections/index.js @@ -6,6 +6,7 @@ define(function (require) { require('plugins/kibana/settings/sections/advanced/index'), require('plugins/kibana/settings/sections/objects/index'), require('plugins/kibana/settings/sections/status/index'), + require('plugins/kibana/settings/sections/data/index'), require('plugins/kibana/settings/sections/about/index') ]; }); diff --git a/src/ui/public/store/store.js b/src/ui/public/store/store.js new file mode 100644 index 000000000000..91ed994522e4 --- /dev/null +++ b/src/ui/public/store/store.js @@ -0,0 +1,6 @@ +import modules from 'ui/modules'; +const module = modules.get('kibana', [require('js-data-angular')]); + +export default function storeProvider(DS) { + return DS; +} From 6b2a52599bed3a1adfc220c9544622134401d68a Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Tue, 29 Dec 2015 14:11:03 -0500 Subject: [PATCH 02/60] Add exception for unneeded lib since we're using js-data-angular (cherry picked from commit 1fc754b) --- src/optimize/BaseOptimizer.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/optimize/BaseOptimizer.js b/src/optimize/BaseOptimizer.js index 9ca708ab04fd..b6fbb05a55b6 100644 --- a/src/optimize/BaseOptimizer.js +++ b/src/optimize/BaseOptimizer.js @@ -79,6 +79,8 @@ class BaseOptimizer { devtoolModuleFilenameTemplate: '[absolute-resource-path]' }, + externals: ['axios'], + recordsPath: resolve(this.env.workingDir, 'webpack.records'), plugins: [ From f1f0eabe45d7db22456c1f5224db24f8f3c66148 Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Tue, 29 Dec 2015 14:12:19 -0500 Subject: [PATCH 03/60] starting to work on pattern creation UI (cherry picked from commit 4975f57) --- .../settings/sections/data/_review.html | 8 +++++- .../public/settings/sections/data/_review.js | 25 ++++++++++++++++++- 2 files changed, 31 insertions(+), 2 deletions(-) diff --git a/src/plugins/kibana/public/settings/sections/data/_review.html b/src/plugins/kibana/public/settings/sections/data/_review.html index c5af519b1516..fb7be1910008 100644 --- a/src/plugins/kibana/public/settings/sections/data/_review.html +++ b/src/plugins/kibana/public/settings/sections/data/_review.html @@ -1 +1,7 @@ -
hello kibana
+
+ + +
diff --git a/src/plugins/kibana/public/settings/sections/data/_review.js b/src/plugins/kibana/public/settings/sections/data/_review.js index 08f667378b04..03157f4312ec 100644 --- a/src/plugins/kibana/public/settings/sections/data/_review.js +++ b/src/plugins/kibana/public/settings/sections/data/_review.js @@ -2,12 +2,35 @@ import routes from 'ui/routes'; import modules from 'ui/modules'; import template from 'plugins/kibana/settings/sections/data/_review.html'; import storeProvider from 'ui/store'; +import _ from 'lodash'; -routes.when('/settings/data', { +var testData = { + message: 'src=1.1.1.1 evil=1', + src: '1.1.1.1', + evil: '1', + coordinates: { + lat: 37.3894, + lon: 122.0819 + }, + '@timestamp': '2015-11-24T00:00:00.000Z' +}; + +routes.when('/settings/data/review', { template: template }); modules.get('apps/settings') .controller('settingsDataReview', function ($scope, Private) { var store = Private(storeProvider); + $scope.perPage = 25; + $scope.columns = [ + {title: 'field'}, + {title: 'mapping'}, + {title: 'example', sortable: false}, + {title: '', sortable: false} + ]; + + $scope.rows = _.map(testData, (value, key) => { + return [key, 'type', value, 'edit']; + }); }); From 518b9a3670c52bede9861b54ef3505aeda382331 Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Tue, 29 Dec 2015 15:18:48 -0500 Subject: [PATCH 04/60] remove per page limit (cherry picked from commit 599e012) --- src/plugins/kibana/public/settings/sections/data/_review.html | 3 +-- src/plugins/kibana/public/settings/sections/data/_review.js | 1 - 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/src/plugins/kibana/public/settings/sections/data/_review.html b/src/plugins/kibana/public/settings/sections/data/_review.html index fb7be1910008..ead31499513c 100644 --- a/src/plugins/kibana/public/settings/sections/data/_review.html +++ b/src/plugins/kibana/public/settings/sections/data/_review.html @@ -1,7 +1,6 @@
+ rows="rows">
diff --git a/src/plugins/kibana/public/settings/sections/data/_review.js b/src/plugins/kibana/public/settings/sections/data/_review.js index 03157f4312ec..3d1d148c5a61 100644 --- a/src/plugins/kibana/public/settings/sections/data/_review.js +++ b/src/plugins/kibana/public/settings/sections/data/_review.js @@ -22,7 +22,6 @@ routes.when('/settings/data/review', { modules.get('apps/settings') .controller('settingsDataReview', function ($scope, Private) { var store = Private(storeProvider); - $scope.perPage = 25; $scope.columns = [ {title: 'field'}, {title: 'mapping'}, From dcb5e5abd8480fa951dfd9008c204f94c47bd984 Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Wed, 30 Dec 2015 12:40:48 -0500 Subject: [PATCH 05/60] starting a simple wizard controller with placeholder steps (cherry picked from commit 36dc443) --- .../settings/sections/data/_review.html | 6 ---- .../public/settings/sections/data/_review.js | 35 ------------------- .../directives/install_filebeat_step.html | 1 + .../data/directives/install_filebeat_step.js | 10 ++++++ .../data/directives/paste_samples_step.html | 1 + .../data/directives/paste_samples_step.js | 10 ++++++ .../data/directives/pattern_review_step.html | 1 + .../data/directives/pattern_review_step.js | 10 ++++++ .../data/directives/pipeline_step.html | 1 + .../sections/data/directives/pipeline_step.js | 10 ++++++ .../sections/data/filebeat/index.html | 15 ++++++++ .../settings/sections/data/filebeat/index.js | 32 +++++++++++++++++ .../public/settings/sections/data/index.html | 5 +++ .../public/settings/sections/data/index.js | 13 ++++++- .../kibana/public/settings/sections/index.js | 2 +- 15 files changed, 109 insertions(+), 43 deletions(-) delete mode 100644 src/plugins/kibana/public/settings/sections/data/_review.html delete mode 100644 src/plugins/kibana/public/settings/sections/data/_review.js create mode 100644 src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.html create mode 100644 src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.js create mode 100644 src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.html create mode 100644 src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.js create mode 100644 src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html create mode 100644 src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js create mode 100644 src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html create mode 100644 src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.js create mode 100644 src/plugins/kibana/public/settings/sections/data/filebeat/index.html create mode 100644 src/plugins/kibana/public/settings/sections/data/filebeat/index.js create mode 100644 src/plugins/kibana/public/settings/sections/data/index.html diff --git a/src/plugins/kibana/public/settings/sections/data/_review.html b/src/plugins/kibana/public/settings/sections/data/_review.html deleted file mode 100644 index ead31499513c..000000000000 --- a/src/plugins/kibana/public/settings/sections/data/_review.html +++ /dev/null @@ -1,6 +0,0 @@ -
- - -
diff --git a/src/plugins/kibana/public/settings/sections/data/_review.js b/src/plugins/kibana/public/settings/sections/data/_review.js deleted file mode 100644 index 3d1d148c5a61..000000000000 --- a/src/plugins/kibana/public/settings/sections/data/_review.js +++ /dev/null @@ -1,35 +0,0 @@ -import routes from 'ui/routes'; -import modules from 'ui/modules'; -import template from 'plugins/kibana/settings/sections/data/_review.html'; -import storeProvider from 'ui/store'; -import _ from 'lodash'; - -var testData = { - message: 'src=1.1.1.1 evil=1', - src: '1.1.1.1', - evil: '1', - coordinates: { - lat: 37.3894, - lon: 122.0819 - }, - '@timestamp': '2015-11-24T00:00:00.000Z' -}; - -routes.when('/settings/data/review', { - template: template -}); - -modules.get('apps/settings') - .controller('settingsDataReview', function ($scope, Private) { - var store = Private(storeProvider); - $scope.columns = [ - {title: 'field'}, - {title: 'mapping'}, - {title: 'example', sortable: false}, - {title: '', sortable: false} - ]; - - $scope.rows = _.map(testData, (value, key) => { - return [key, 'type', value, 'edit']; - }); - }); diff --git a/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.html b/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.html new file mode 100644 index 000000000000..48b974b48a47 --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.html @@ -0,0 +1 @@ +Install filebeat step diff --git a/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.js b/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.js new file mode 100644 index 000000000000..4eed9ae61a55 --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.js @@ -0,0 +1,10 @@ +var modules = require('ui/modules'); +var template = require('plugins/kibana/settings/sections/data/directives/install_filebeat_step.html'); + +modules.get('apps/settings') + .directive('installFilebeatStep', function () { + return { + template: template + }; + }); + diff --git a/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.html b/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.html new file mode 100644 index 000000000000..31f41b0b76f7 --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.html @@ -0,0 +1 @@ +Paste samples step diff --git a/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.js b/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.js new file mode 100644 index 000000000000..7b033ecbf770 --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.js @@ -0,0 +1,10 @@ +var modules = require('ui/modules'); +var template = require('plugins/kibana/settings/sections/data/directives/paste_samples_step.html'); + +modules.get('apps/settings') + .directive('pasteSamplesStep', function () { + return { + template: template + }; + }); + diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html new file mode 100644 index 000000000000..c113af3185f8 --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html @@ -0,0 +1 @@ +Pattern review step diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js new file mode 100644 index 000000000000..ddfba97e52a3 --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js @@ -0,0 +1,10 @@ +var modules = require('ui/modules'); +var template = require('plugins/kibana/settings/sections/data/directives/pattern_review_step.html'); + +modules.get('apps/settings') + .directive('patternReviewStep', function () { + return { + template: template + }; + }); + diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html b/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html new file mode 100644 index 000000000000..0447d428d6b1 --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html @@ -0,0 +1 @@ +Build pipeline step diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.js b/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.js new file mode 100644 index 000000000000..ff18fe60b32f --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.js @@ -0,0 +1,10 @@ +var modules = require('ui/modules'); +var template = require('plugins/kibana/settings/sections/data/directives/pipeline_step.html'); + +modules.get('apps/settings') + .directive('pipelineStep', function () { + return { + template: template + }; + }); + diff --git a/src/plugins/kibana/public/settings/sections/data/filebeat/index.html b/src/plugins/kibana/public/settings/sections/data/filebeat/index.html new file mode 100644 index 000000000000..d3516c6b32c1 --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/data/filebeat/index.html @@ -0,0 +1,15 @@ + +
+ Filebeat wizard breadcrumb + +
+ + + + +
+ + + +
+
diff --git a/src/plugins/kibana/public/settings/sections/data/filebeat/index.js b/src/plugins/kibana/public/settings/sections/data/filebeat/index.js new file mode 100644 index 000000000000..974ddeb72894 --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/data/filebeat/index.js @@ -0,0 +1,32 @@ +var routes = require('ui/routes'); +var modules = require('ui/modules'); +var template = require('plugins/kibana/settings/sections/data/filebeat/index.html'); + +require('plugins/kibana/settings/sections/data/directives/pattern_review_step'); +require('plugins/kibana/settings/sections/data/directives/paste_samples_step'); +require('plugins/kibana/settings/sections/data/directives/pipeline_step'); +require('plugins/kibana/settings/sections/data/directives/install_filebeat_step'); + +routes.when('/settings/data/filebeat', { + template: template +}); + +// wrapper directive, which sets up the breadcrumb for all filebeat steps +modules.get('apps/settings') + .controller('kbnSettingsDataFilebeat', function ($scope) { + var totalSteps = 4; + var currentStep = 0; + + $scope.currentStep = currentStep; + $scope.nextStep = function () { + if ($scope.currentStep + 1 < totalSteps) { + ++$scope.currentStep; + } + }; + $scope.prevStep = function () { + if ($scope.currentStep > 0) { + --$scope.currentStep; + } + }; + + }); diff --git a/src/plugins/kibana/public/settings/sections/data/index.html b/src/plugins/kibana/public/settings/sections/data/index.html new file mode 100644 index 000000000000..ec9f280d1d6e --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/data/index.html @@ -0,0 +1,5 @@ + + + diff --git a/src/plugins/kibana/public/settings/sections/data/index.js b/src/plugins/kibana/public/settings/sections/data/index.js index 63e57128fb22..12d9ec4fe3e0 100644 --- a/src/plugins/kibana/public/settings/sections/data/index.js +++ b/src/plugins/kibana/public/settings/sections/data/index.js @@ -1 +1,12 @@ -import review from 'plugins/kibana/settings/sections/data/_review'; +require('plugins/kibana/settings/sections/data/filebeat/index'); + +require('ui/routes') + .when('/settings/data', { + template: require('plugins/kibana/settings/sections/data/index.html') + }); + +module.exports = { + name: 'data', + display: 'Data', + url: '#/settings/data' +}; diff --git a/src/plugins/kibana/public/settings/sections/index.js b/src/plugins/kibana/public/settings/sections/index.js index 0ef737f9437a..394e6e488c9e 100644 --- a/src/plugins/kibana/public/settings/sections/index.js +++ b/src/plugins/kibana/public/settings/sections/index.js @@ -3,10 +3,10 @@ define(function (require) { // are used to create the nav bar return [ require('plugins/kibana/settings/sections/indices/index'), + require('plugins/kibana/settings/sections/data/index'), require('plugins/kibana/settings/sections/advanced/index'), require('plugins/kibana/settings/sections/objects/index'), require('plugins/kibana/settings/sections/status/index'), - require('plugins/kibana/settings/sections/data/index'), require('plugins/kibana/settings/sections/about/index') ]; }); From 52a4ee3c9cc3d609b2f5e967934e5d40e873926b Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Wed, 30 Dec 2015 12:57:56 -0500 Subject: [PATCH 06/60] add breadcrumb to wizard (cherry picked from commit ad25d24) --- .../sections/data/filebeat/index.html | 19 ++++++++++++++++++- .../settings/sections/data/filebeat/index.js | 3 +++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/src/plugins/kibana/public/settings/sections/data/filebeat/index.html b/src/plugins/kibana/public/settings/sections/data/filebeat/index.html index d3516c6b32c1..bfeacb0f96f1 100644 --- a/src/plugins/kibana/public/settings/sections/data/filebeat/index.html +++ b/src/plugins/kibana/public/settings/sections/data/filebeat/index.html @@ -1,6 +1,23 @@
- Filebeat wizard breadcrumb +
+ + + + +
diff --git a/src/plugins/kibana/public/settings/sections/data/filebeat/index.js b/src/plugins/kibana/public/settings/sections/data/filebeat/index.js index 974ddeb72894..07b3198b99b2 100644 --- a/src/plugins/kibana/public/settings/sections/data/filebeat/index.js +++ b/src/plugins/kibana/public/settings/sections/data/filebeat/index.js @@ -28,5 +28,8 @@ modules.get('apps/settings') --$scope.currentStep; } }; + $scope.setCurrentStep = function (step) { + $scope.currentStep = step; + }; }); From 8b5c95d190aed06504e41830b7940ecf6600405e Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Wed, 30 Dec 2015 14:17:59 -0500 Subject: [PATCH 07/60] demonstrating flow of data through the wizard steps (cherry picked from commit 4bcc5a1) --- .../data/directives/install_filebeat_step.html | 11 ++++++++++- .../sections/data/directives/install_filebeat_step.js | 8 +++++++- .../sections/data/directives/paste_samples_step.html | 4 +++- .../sections/data/directives/paste_samples_step.js | 5 ++++- .../sections/data/directives/pattern_review_step.html | 8 +++++++- .../sections/data/directives/pattern_review_step.js | 6 +++++- .../sections/data/directives/pipeline_step.html | 8 +++++++- .../sections/data/directives/pipeline_step.js | 6 +++++- .../public/settings/sections/data/filebeat/index.html | 8 ++++---- .../public/settings/sections/data/filebeat/index.js | 7 +++++-- 10 files changed, 57 insertions(+), 14 deletions(-) diff --git a/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.html b/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.html index 48b974b48a47..e2de5be0d535 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.html +++ b/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.html @@ -1 +1,10 @@ -Install filebeat step +

Install filebeat step

+ +
+Results: +
    +
  • Logs: {{results[0]}}
  • +
  • Docs: {{results[1]}}
  • +
  • Pattern: {{results[2]}}
  • +
+
diff --git a/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.js b/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.js index 4eed9ae61a55..c615e76c3752 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.js +++ b/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.js @@ -4,7 +4,13 @@ var template = require('plugins/kibana/settings/sections/data/directives/install modules.get('apps/settings') .directive('installFilebeatStep', function () { return { - template: template + template: template, + scope: { + results: '=' + }, + controller: function ($scope) { + var results = $scope.results; + } }; }); diff --git a/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.html b/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.html index 31f41b0b76f7..af6875cd3524 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.html +++ b/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.html @@ -1 +1,3 @@ -Paste samples step +

Paste samples step

+ + diff --git a/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.js b/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.js index 7b033ecbf770..42b14e1417d2 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.js +++ b/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.js @@ -4,7 +4,10 @@ var template = require('plugins/kibana/settings/sections/data/directives/paste_s modules.get('apps/settings') .directive('pasteSamplesStep', function () { return { - template: template + template: template, + scope: { + save: '&onSave' + } }; }); diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html index c113af3185f8..75d8dc49dab0 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html @@ -1 +1,7 @@ -Pattern review step +

Pattern review step

+ +
+ Docs: {{docs}} +
+ + diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js index ddfba97e52a3..6ceb1ecb03a1 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js @@ -4,7 +4,11 @@ var template = require('plugins/kibana/settings/sections/data/directives/pattern modules.get('apps/settings') .directive('patternReviewStep', function () { return { - template: template + template: template, + scope: { + docs: '=', + save: '&onSave' + } }; }); diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html b/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html index 0447d428d6b1..d2140d708bf6 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html +++ b/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html @@ -1 +1,7 @@ -Build pipeline step +

Build pipeline step

+ +
+ Logs: {{logs}} +
+ + diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.js b/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.js index ff18fe60b32f..9336d94da507 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.js +++ b/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.js @@ -4,7 +4,11 @@ var template = require('plugins/kibana/settings/sections/data/directives/pipelin modules.get('apps/settings') .directive('pipelineStep', function () { return { - template: template + template: template, + scope: { + logs: '=', + save: '&onSave' + } }; }); diff --git a/src/plugins/kibana/public/settings/sections/data/filebeat/index.html b/src/plugins/kibana/public/settings/sections/data/filebeat/index.html index bfeacb0f96f1..bd9f6703347b 100644 --- a/src/plugins/kibana/public/settings/sections/data/filebeat/index.html +++ b/src/plugins/kibana/public/settings/sections/data/filebeat/index.html @@ -20,10 +20,10 @@
- - - - + + + +
diff --git a/src/plugins/kibana/public/settings/sections/data/filebeat/index.js b/src/plugins/kibana/public/settings/sections/data/filebeat/index.js index 07b3198b99b2..dc6a8863cafb 100644 --- a/src/plugins/kibana/public/settings/sections/data/filebeat/index.js +++ b/src/plugins/kibana/public/settings/sections/data/filebeat/index.js @@ -15,9 +15,9 @@ routes.when('/settings/data/filebeat', { modules.get('apps/settings') .controller('kbnSettingsDataFilebeat', function ($scope) { var totalSteps = 4; - var currentStep = 0; + $scope.currentStep = 0; + $scope.stepResults = []; - $scope.currentStep = currentStep; $scope.nextStep = function () { if ($scope.currentStep + 1 < totalSteps) { ++$scope.currentStep; @@ -32,4 +32,7 @@ modules.get('apps/settings') $scope.currentStep = step; }; + $scope.saveStepResults = function (step, results) { + $scope.stepResults[step] = results; + }; }); From 7dbef2fb9a25a3122ceab828a1096766d4cc9636 Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Tue, 12 Jan 2016 13:04:54 -0500 Subject: [PATCH 08/60] Starting work on pattern review page --- .../data/directives/pattern_review_step.html | 7 ++++++ .../data/directives/pattern_review_step.js | 24 +++++++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html index 75d8dc49dab0..3d6e318795d7 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html @@ -1,5 +1,12 @@

Pattern review step

+
+ + +
+
Docs: {{docs}}
diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js index 6ceb1ecb03a1..031345e3f33d 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js @@ -1,5 +1,17 @@ var modules = require('ui/modules'); var template = require('plugins/kibana/settings/sections/data/directives/pattern_review_step.html'); +var _ = require('lodash'); + +var testData = { + message: 'src=1.1.1.1 evil=1', + src: '1.1.1.1', + evil: '1', + coordinates: { + lat: 37.3894, + lon: 122.0819 + }, + '@timestamp': '2015-11-24T00:00:00.000Z' +}; modules.get('apps/settings') .directive('patternReviewStep', function () { @@ -8,6 +20,18 @@ modules.get('apps/settings') scope: { docs: '=', save: '&onSave' + }, + controller: function ($scope, Private) { + $scope.docs = testData; + $scope.columns = [ + {title: 'Field'}, + {title: 'Type'}, + {title: 'Example', sortable: false} + ]; + + $scope.rows = _.map($scope.docs, (value, key) => { + return [key, 'type', value]; + }); } }; }); From d4aff7709531a133b7dad83eefc6e716eaa81e76 Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Tue, 12 Jan 2016 14:29:12 -0500 Subject: [PATCH 09/60] Type selection dropdown --- .../data/directives/pattern_review_step.html | 3 ++- .../data/directives/pattern_review_step.js | 16 ++++++++++++++-- .../sections/data/partials/_edit_field_type.html | 9 +++++++++ 3 files changed, 25 insertions(+), 3 deletions(-) create mode 100644 src/plugins/kibana/public/settings/sections/data/partials/_edit_field_type.html diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html index 3d6e318795d7..cf394b42de50 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html @@ -11,4 +11,5 @@ Docs: {{docs}}
- + + diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js index 031345e3f33d..d06e30e20c55 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js @@ -1,6 +1,7 @@ var modules = require('ui/modules'); var template = require('plugins/kibana/settings/sections/data/directives/pattern_review_step.html'); var _ = require('lodash'); +var editFieldTypeHTML = require('plugins/kibana/settings/sections/data/partials/_edit_field_type.html'); var testData = { message: 'src=1.1.1.1 evil=1', @@ -23,14 +24,25 @@ modules.get('apps/settings') }, controller: function ($scope, Private) { $scope.docs = testData; + $scope.fields = _.map($scope.docs, (value, key) => { + return {name: key, type: typeof value}; + }); + $scope.columns = [ {title: 'Field'}, {title: 'Type'}, {title: 'Example', sortable: false} ]; - $scope.rows = _.map($scope.docs, (value, key) => { - return [key, 'type', value]; + $scope.rows = _.map($scope.fields, (field) => { + return [ + field.name, + { + markup: editFieldTypeHTML, + scope: _.assign($scope.$new(), {field: field}) + }, + $scope.docs[field.name] + ]; }); } }; diff --git a/src/plugins/kibana/public/settings/sections/data/partials/_edit_field_type.html b/src/plugins/kibana/public/settings/sections/data/partials/_edit_field_type.html new file mode 100644 index 000000000000..eecf3a3f3548 --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/data/partials/_edit_field_type.html @@ -0,0 +1,9 @@ + From 27e402bad468fd896ffbb0018bc35d059a8be1fc Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Tue, 12 Jan 2016 14:59:55 -0500 Subject: [PATCH 10/60] add index pattern input --- .../sections/data/directives/pattern_review_step.html | 11 +++++------ .../sections/data/directives/pattern_review_step.js | 9 +++++++-- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html index cf394b42de50..e0d52236a435 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html @@ -1,5 +1,9 @@

Pattern review step

+
+ +
+
-
- Docs: {{docs}} -
- - - + diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js index d06e30e20c55..c1695f532cbd 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js @@ -24,17 +24,22 @@ modules.get('apps/settings') }, controller: function ($scope, Private) { $scope.docs = testData; - $scope.fields = _.map($scope.docs, (value, key) => { + $scope.indexPattern = {id: 'filebeat-*', title: 'filebeat-*'}; + $scope.indexPattern.fields = _.map($scope.docs, (value, key) => { return {name: key, type: typeof value}; }); + $scope.$watch('indexPattern.id', function (value) { + $scope.indexPattern.title = value; + }); + $scope.columns = [ {title: 'Field'}, {title: 'Type'}, {title: 'Example', sortable: false} ]; - $scope.rows = _.map($scope.fields, (field) => { + $scope.rows = _.map($scope.indexPattern.fields, (field) => { return [ field.name, { From db8014c6b7654cb05528030a790434ef20f8187a Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Tue, 12 Jan 2016 17:32:14 -0500 Subject: [PATCH 11/60] Simplifying communication between wizard and the step directives --- .../data/directives/install_filebeat_step.html | 6 +++--- .../data/directives/paste_samples_step.html | 2 +- .../data/directives/paste_samples_step.js | 2 +- .../data/directives/pattern_review_step.html | 4 ++-- .../data/directives/pattern_review_step.js | 5 +++-- .../sections/data/directives/pipeline_step.html | 4 ++-- .../sections/data/directives/pipeline_step.js | 5 +++-- .../settings/sections/data/filebeat/index.html | 16 +++++++++++++--- .../settings/sections/data/filebeat/index.js | 6 +----- 9 files changed, 29 insertions(+), 21 deletions(-) diff --git a/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.html b/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.html index e2de5be0d535..f65d65f4b31d 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.html +++ b/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.html @@ -3,8 +3,8 @@
Results:
    -
  • Logs: {{results[0]}}
  • -
  • Docs: {{results[1]}}
  • -
  • Pattern: {{results[2]}}
  • +
  • Logs: {{results.samples}}
  • +
  • Docs: {{results.sampleDocs}}
  • +
  • Pattern: {{results.indexPattern}}
diff --git a/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.html b/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.html index af6875cd3524..919a609f5af8 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.html +++ b/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.html @@ -1,3 +1,3 @@

Paste samples step

- + diff --git a/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.js b/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.js index 42b14e1417d2..03ae62052ea3 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.js +++ b/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.js @@ -6,7 +6,7 @@ modules.get('apps/settings') return { template: template, scope: { - save: '&onSave' + samples: '=' } }; }); diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html index 75d8dc49dab0..25b713bd7fd3 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html @@ -1,7 +1,7 @@

Pattern review step

- Docs: {{docs}} + Docs: {{sampleDocs}}
- + diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js index 6ceb1ecb03a1..63c1d1f71aa3 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js @@ -6,8 +6,9 @@ modules.get('apps/settings') return { template: template, scope: { - docs: '=', - save: '&onSave' + sampleDocs: '=', + indexPattern: '=', + pipeline: '=' } }; }); diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html b/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html index d2140d708bf6..88c952bb0652 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html +++ b/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html @@ -1,7 +1,7 @@

Build pipeline step

- Logs: {{logs}} + Logs: {{samples}}
- + diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.js b/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.js index 9336d94da507..99e7bee782ff 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.js +++ b/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.js @@ -6,8 +6,9 @@ modules.get('apps/settings') return { template: template, scope: { - logs: '=', - save: '&onSave' + samples: '=', + sampleDocs: '=', + pipeline: '=' } }; }); diff --git a/src/plugins/kibana/public/settings/sections/data/filebeat/index.html b/src/plugins/kibana/public/settings/sections/data/filebeat/index.html index bd9f6703347b..ac9249cf3e94 100644 --- a/src/plugins/kibana/public/settings/sections/data/filebeat/index.html +++ b/src/plugins/kibana/public/settings/sections/data/filebeat/index.html @@ -20,9 +20,19 @@
- - - + + + + +
diff --git a/src/plugins/kibana/public/settings/sections/data/filebeat/index.js b/src/plugins/kibana/public/settings/sections/data/filebeat/index.js index dc6a8863cafb..81289972d371 100644 --- a/src/plugins/kibana/public/settings/sections/data/filebeat/index.js +++ b/src/plugins/kibana/public/settings/sections/data/filebeat/index.js @@ -16,7 +16,7 @@ modules.get('apps/settings') .controller('kbnSettingsDataFilebeat', function ($scope) { var totalSteps = 4; $scope.currentStep = 0; - $scope.stepResults = []; + $scope.stepResults = {}; $scope.nextStep = function () { if ($scope.currentStep + 1 < totalSteps) { @@ -31,8 +31,4 @@ modules.get('apps/settings') $scope.setCurrentStep = function (step) { $scope.currentStep = step; }; - - $scope.saveStepResults = function (step, results) { - $scope.stepResults[step] = results; - }; }); From ede8ef67d0dab9734cd2783e655f4d8182747629 Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Tue, 12 Jan 2016 18:22:38 -0500 Subject: [PATCH 12/60] Disabling navigation buttons until each step is complete and adding some light styling --- .../data/directives/pipeline_step.html | 2 +- .../sections/data/filebeat/index.html | 83 +++++++++++-------- .../kibana/public/settings/styles/main.less | 13 +++ 3 files changed, 63 insertions(+), 35 deletions(-) diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html b/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html index 88c952bb0652..0c717c86256b 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html +++ b/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html @@ -4,4 +4,4 @@ Logs: {{samples}} - + diff --git a/src/plugins/kibana/public/settings/sections/data/filebeat/index.html b/src/plugins/kibana/public/settings/sections/data/filebeat/index.html index ac9249cf3e94..f12112107e46 100644 --- a/src/plugins/kibana/public/settings/sections/data/filebeat/index.html +++ b/src/plugins/kibana/public/settings/sections/data/filebeat/index.html @@ -1,42 +1,57 @@
-
- - - - +
+ + 1. Paste + + + 2. Parse + + + 3. Review + + + 4. Install Filebeat +
- - - - - - -
+
+ + +
- - +
+ + + + +
+ +
+ + + + +
+ +
+ +
+
diff --git a/src/plugins/kibana/public/settings/styles/main.less b/src/plugins/kibana/public/settings/styles/main.less index ef10f7317faa..c9bf7066da97 100644 --- a/src/plugins/kibana/public/settings/styles/main.less +++ b/src/plugins/kibana/public/settings/styles/main.less @@ -186,3 +186,16 @@ kbn-settings-indices { .kbn-settings-indices-create { .time-and-pattern > div {} } + +.wizard-step-headings{ + margin-top: 1em; + + .wizard-step-heading { + font-size: 1.5em; + padding-right: 1.5em; + + &.active { + font-weight: bold; + } + } +} From 027e807eddb6a1812184419eec1ccead6080a182 Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Tue, 12 Jan 2016 18:52:59 -0500 Subject: [PATCH 13/60] avoid overwriting pattern properties if they were previously set --- .../sections/data/directives/pattern_review_step.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js index e44ee5a31d19..dc96296352da 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js @@ -25,10 +25,14 @@ modules.get('apps/settings') }, controller: function ($scope, Private) { $scope.sampleDocs = testData; - $scope.indexPattern = {id: 'filebeat-*', title: 'filebeat-*'}; - $scope.indexPattern.fields = _.map($scope.sampleDocs, (value, key) => { - return {name: key, type: typeof value}; - }); + if (_.isEmpty($scope.indexPattern)) { + $scope.indexPattern = {id: 'filebeat-*', title: 'filebeat-*'}; + } + if (_.isEmpty($scope.indexPattern.fields)) { + $scope.indexPattern.fields = _.map($scope.sampleDocs, (value, key) => { + return {name: key, type: typeof value}; + }); + } $scope.$watch('indexPattern.id', function (value) { $scope.indexPattern.title = value; From da6183cd6ede970923ddeca6f96cec8f3206f8d8 Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Tue, 12 Jan 2016 19:07:09 -0500 Subject: [PATCH 14/60] add timeFieldName form input and time based checkbox --- .../data/directives/pattern_review_step.html | 10 +++++++++- .../data/directives/pattern_review_step.js | 18 ++++++++++++------ 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html index 61951167d55c..aa4f427dbfb3 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html @@ -1,7 +1,15 @@

Pattern review step

- + + +
diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js index dc96296352da..935314a3788b 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js @@ -25,14 +25,20 @@ modules.get('apps/settings') }, controller: function ($scope, Private) { $scope.sampleDocs = testData; - if (_.isEmpty($scope.indexPattern)) { - $scope.indexPattern = {id: 'filebeat-*', title: 'filebeat-*'}; + if (_.isUndefined($scope.indexPattern)) { + $scope.indexPattern = {}; } - if (_.isEmpty($scope.indexPattern.fields)) { - $scope.indexPattern.fields = _.map($scope.sampleDocs, (value, key) => { + + _.defaults($scope.indexPattern, { + id: 'filebeat-*', + title: 'filebeat-*', + timeFieldName: '@timestamp', + fields: _.map($scope.sampleDocs, (value, key) => { return {name: key, type: typeof value}; - }); - } + }) + }); + + $scope.isTimeBased = !!$scope.indexPattern.timeFieldName; $scope.$watch('indexPattern.id', function (value) { $scope.indexPattern.title = value; From a47fc05ef79b334fbfe5d0aa30af5ab3bf4ee745 Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Wed, 13 Jan 2016 12:03:30 -0500 Subject: [PATCH 15/60] Detect geo_points and dates by looking at the pipeline --- .../data/directives/pattern_review_step.js | 69 +++++++++++++++++-- 1 file changed, 62 insertions(+), 7 deletions(-) diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js index 935314a3788b..299142f93811 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js @@ -4,16 +4,55 @@ var _ = require('lodash'); var editFieldTypeHTML = require('plugins/kibana/settings/sections/data/partials/_edit_field_type.html'); var testData = { - message: 'src=1.1.1.1 evil=1', - src: '1.1.1.1', - evil: '1', - coordinates: { + message: '11/24/2015 ip=1.1.1.1 bytes=1234', + clientip: '1.1.1.1', + bytes: 1234, + geoip: { lat: 37.3894, lon: 122.0819 }, - '@timestamp': '2015-11-24T00:00:00.000Z' + location: { + lat: 37.3894, + lon: 122.0819 + }, + '@timestamp': '2015-11-24T00:00:00.000Z', + otherdate: '2015-11-24T00:00:00.000Z', + codes: [1, 2, 3, 4] }; +var testPipeline = [ + { + grok: { + match_field: 'message', + match_pattern: 'foo' + } + }, + { + geoip: { + source_field: 'ip' + } + }, + { + geoip: { + source_field: 'ip', + target_field: 'location' + } + }, + { + date: { + match_field: 'initialDate', + match_formats: ['dd/MM/yyyy hh:mm:ss'] + } + }, + { + date: { + match_field: 'initialDate', + match_formats: ['dd/MM/yyyy hh:mm:ss'], + target_field: 'otherdate' + } + } +]; + modules.get('apps/settings') .directive('patternReviewStep', function () { return { @@ -25,16 +64,31 @@ modules.get('apps/settings') }, controller: function ($scope, Private) { $scope.sampleDocs = testData; + $scope.pipeline = testPipeline; + if (_.isUndefined($scope.indexPattern)) { $scope.indexPattern = {}; } + const knownFieldTypes = {}; + $scope.pipeline.forEach(function (processor) { + if (processor.geoip) { + let field = processor.geoip.target_field || 'geoip'; + knownFieldTypes[field] = 'geo_point'; + } + if (processor.date) { + let field = processor.date.target_field || '@timestamp'; + knownFieldTypes[field] = 'date'; + } + }); + _.defaults($scope.indexPattern, { id: 'filebeat-*', title: 'filebeat-*', timeFieldName: '@timestamp', fields: _.map($scope.sampleDocs, (value, key) => { - return {name: key, type: typeof value}; + let type = knownFieldTypes[key] || typeof value; + return {name: key, type: type}; }) }); @@ -51,13 +105,14 @@ modules.get('apps/settings') ]; $scope.rows = _.map($scope.indexPattern.fields, (field) => { + const sampleValue = $scope.sampleDocs[field.name]; return [ field.name, { markup: editFieldTypeHTML, scope: _.assign($scope.$new(), {field: field}) }, - $scope.sampleDocs[field.name] + typeof sampleValue === 'object' ? JSON.stringify(sampleValue) : sampleValue ]; }); } From 3bad81de585275aa418887b376dffe321ec4b8ed Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Wed, 13 Jan 2016 12:07:09 -0500 Subject: [PATCH 16/60] detect the type of array elements --- .../settings/sections/data/directives/pattern_review_step.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js index 299142f93811..df75d5f2d814 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js @@ -88,6 +88,9 @@ modules.get('apps/settings') timeFieldName: '@timestamp', fields: _.map($scope.sampleDocs, (value, key) => { let type = knownFieldTypes[key] || typeof value; + if (type === 'object' && _.isArray(value) && !_.isEmpty(value)) { + type = typeof value[0]; + } return {name: key, type: type}; }) }); From 9e4362b2456764be2ede6582e104746caed4f98a Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Wed, 13 Jan 2016 14:10:58 -0500 Subject: [PATCH 17/60] Pick default date field and update date field list when user changes type --- .../data/directives/pattern_review_step.html | 6 +++- .../data/directives/pattern_review_step.js | 28 ++++++++++++++++++- 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html index aa4f427dbfb3..e97520f0b0ba 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html @@ -8,7 +8,11 @@
diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js index df75d5f2d814..a7a4f838a382 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js +++ b/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js @@ -53,6 +53,19 @@ var testPipeline = [ } ]; +function pickDefaultTimeFieldName(dateFields) { + if (_.isEmpty(dateFields)) { + return undefined; + } + + let fieldName = dateFields[0]; + if (_.includes(dateFields, '@timestamp')) { + fieldName = '@timestamp'; + } + + return fieldName; +} + modules.get('apps/settings') .directive('patternReviewStep', function () { return { @@ -71,6 +84,7 @@ modules.get('apps/settings') } const knownFieldTypes = {}; + $scope.dateFields = []; $scope.pipeline.forEach(function (processor) { if (processor.geoip) { let field = processor.geoip.target_field || 'geoip'; @@ -79,13 +93,14 @@ modules.get('apps/settings') if (processor.date) { let field = processor.date.target_field || '@timestamp'; knownFieldTypes[field] = 'date'; + $scope.dateFields.push(field); } }); _.defaults($scope.indexPattern, { id: 'filebeat-*', title: 'filebeat-*', - timeFieldName: '@timestamp', + timeFieldName: pickDefaultTimeFieldName($scope.dateFields), fields: _.map($scope.sampleDocs, (value, key) => { let type = knownFieldTypes[key] || typeof value; if (type === 'object' && _.isArray(value) && !_.isEmpty(value)) { @@ -100,6 +115,17 @@ modules.get('apps/settings') $scope.$watch('indexPattern.id', function (value) { $scope.indexPattern.title = value; }); + $scope.$watch('isTimeBased', function (value) { + if (value) { + $scope.indexPattern.timeFieldName = pickDefaultTimeFieldName($scope.dateFields); + } + else { + delete $scope.indexPattern.timeFieldName; + } + }); + $scope.$watch('indexPattern.fields', (fields) => { + $scope.dateFields = _.map(_.filter(fields, {type: 'date'}), 'name'); + }, true); $scope.columns = [ {title: 'Field'}, From 4df54be44c073277fc45c0b6f814ed390a4341b5 Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Wed, 13 Jan 2016 14:17:11 -0500 Subject: [PATCH 18/60] lock type if we detect a geo_point --- .../settings/sections/data/partials/_edit_field_type.html | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/plugins/kibana/public/settings/sections/data/partials/_edit_field_type.html b/src/plugins/kibana/public/settings/sections/data/partials/_edit_field_type.html index eecf3a3f3548..accc574f4d72 100644 --- a/src/plugins/kibana/public/settings/sections/data/partials/_edit_field_type.html +++ b/src/plugins/kibana/public/settings/sections/data/partials/_edit_field_type.html @@ -1,4 +1,4 @@ - @@ -7,3 +7,7 @@ + + + geo_point + From 6709fbabe04c2d419244fb739bdc44bb3fbe486c Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Wed, 20 Jan 2016 17:31:31 -0500 Subject: [PATCH 19/60] Make the index pattern creation page a sub-section of the new Add Data start page --- .../settings/sections/indices/_create.js | 2 +- .../directives/kbn_settings_indices.html | 38 +++++++++++++ .../directives/kbn_settings_indices.js | 27 ++++++++++ .../settings/sections/indices/index.html | 54 ++++++------------- .../public/settings/sections/indices/index.js | 34 +++--------- 5 files changed, 89 insertions(+), 66 deletions(-) create mode 100644 src/plugins/kibana/public/settings/sections/indices/directives/kbn_settings_indices.html create mode 100644 src/plugins/kibana/public/settings/sections/indices/directives/kbn_settings_indices.js diff --git a/src/plugins/kibana/public/settings/sections/indices/_create.js b/src/plugins/kibana/public/settings/sections/indices/_create.js index ec92360435ae..4437fbc7ddde 100644 --- a/src/plugins/kibana/public/settings/sections/indices/_create.js +++ b/src/plugins/kibana/public/settings/sections/indices/_create.js @@ -7,7 +7,7 @@ define(function (require) { require('ui/directives/auto_select_if_only_one'); require('ui/routes') - .when('/settings/indices/', { + .when('/settings/indices/existing', { template: require('plugins/kibana/settings/sections/indices/_create.html') }); diff --git a/src/plugins/kibana/public/settings/sections/indices/directives/kbn_settings_indices.html b/src/plugins/kibana/public/settings/sections/indices/directives/kbn_settings_indices.html new file mode 100644 index 000000000000..95039645907b --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/indices/directives/kbn_settings_indices.html @@ -0,0 +1,38 @@ + + +
diff --git a/src/plugins/kibana/public/settings/sections/indices/directives/kbn_settings_indices.js b/src/plugins/kibana/public/settings/sections/indices/directives/kbn_settings_indices.js new file mode 100644 index 000000000000..6035eb85f003 --- /dev/null +++ b/src/plugins/kibana/public/settings/sections/indices/directives/kbn_settings_indices.js @@ -0,0 +1,27 @@ +// wrapper directive, which sets some global stuff up like the left nav +require('ui/modules').get('apps/settings') +.directive('kbnSettingsIndices', function ($route, config, kbnUrl) { + return { + restrict: 'E', + transclude: true, + template: require('plugins/kibana/settings/sections/indices/directives/kbn_settings_indices.html'), + link: function ($scope) { + $scope.edittingId = $route.current.params.indexPatternId; + config.$bind($scope, 'defaultIndex'); + + $scope.$watch('defaultIndex', function () { + var ids = $route.current.locals.indexPatternIds; + $scope.indexPatternList = ids.map(function (id) { + return { + id: id, + url: kbnUrl.eval('#/settings/indices/{{id}}', {id: id}), + class: 'sidebar-item-title ' + ($scope.edittingId === id ? 'active' : ''), + default: $scope.defaultIndex === id + }; + }); + }); + + $scope.$emit('application.load'); + } + }; +}); diff --git a/src/plugins/kibana/public/settings/sections/indices/index.html b/src/plugins/kibana/public/settings/sections/indices/index.html index 15809f900a47..a083d5a51105 100644 --- a/src/plugins/kibana/public/settings/sections/indices/index.html +++ b/src/plugins/kibana/public/settings/sections/indices/index.html @@ -1,38 +1,18 @@ - + + +
+ -
+

+ Existing Indices +

+
+ Pick this option if you already have data in Elasticsearch. +
+
+
+
diff --git a/src/plugins/kibana/public/settings/sections/indices/index.js b/src/plugins/kibana/public/settings/sections/indices/index.js index b3588ef40bd7..45139727fa47 100644 --- a/src/plugins/kibana/public/settings/sections/indices/index.js +++ b/src/plugins/kibana/public/settings/sections/indices/index.js @@ -1,6 +1,7 @@ define(function (require) { var _ = require('lodash'); + require('plugins/kibana/settings/sections/indices/directives/kbn_settings_indices'); require('plugins/kibana/settings/sections/indices/_create'); require('plugins/kibana/settings/sections/indices/_edit'); require('plugins/kibana/settings/sections/indices/_field_editor'); @@ -15,37 +16,14 @@ define(function (require) { } }); - // wrapper directive, which sets some global stuff up like the left nav - require('ui/modules').get('apps/settings') - .directive('kbnSettingsIndices', function ($route, config, kbnUrl) { - return { - restrict: 'E', - transclude: true, - template: require('plugins/kibana/settings/sections/indices/index.html'), - link: function ($scope) { - $scope.edittingId = $route.current.params.indexPatternId; - config.$bind($scope, 'defaultIndex'); - - $scope.$watch('defaultIndex', function () { - var ids = $route.current.locals.indexPatternIds; - $scope.indexPatternList = ids.map(function (id) { - return { - id: id, - url: kbnUrl.eval('#/settings/indices/{{id}}', {id: id}), - class: 'sidebar-item-title ' + ($scope.edittingId === id ? 'active' : ''), - default: $scope.defaultIndex === id - }; - }); - }); - - $scope.$emit('application.load'); - } - }; - }); + require('ui/routes') + .when('/settings/indices', { + template: require('plugins/kibana/settings/sections/indices/index.html') + }); return { name: 'indices', display: 'Indices', - url: '#/settings/indices', + url: '#/settings/indices' }; }); From b7ddd7e1ec4c74c9da3f42636e77f7f5ecac64d6 Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Wed, 20 Jan 2016 18:02:49 -0500 Subject: [PATCH 20/60] move filebeat wizard under settings/indices --- .../public/settings/sections/data/index.html | 5 ----- .../kibana/public/settings/sections/data/index.js | 12 ------------ .../kibana/public/settings/sections/index.js | 1 - .../directives/install_filebeat_step.html | 0 .../directives/install_filebeat_step.js | 2 +- .../directives/paste_samples_step.html | 0 .../directives/paste_samples_step.js | 2 +- .../directives/pattern_review_step.html | 0 .../directives/pattern_review_step.js | 2 +- .../directives/pipeline_step.html | 0 .../{data => indices}/directives/pipeline_step.js | 2 +- .../sections/{data => indices}/filebeat/index.html | 4 ++-- .../sections/{data => indices}/filebeat/index.js | 14 +++++++------- .../public/settings/sections/indices/index.html | 7 +++++++ .../public/settings/sections/indices/index.js | 1 + 15 files changed, 21 insertions(+), 31 deletions(-) delete mode 100644 src/plugins/kibana/public/settings/sections/data/index.html delete mode 100644 src/plugins/kibana/public/settings/sections/data/index.js rename src/plugins/kibana/public/settings/sections/{data => indices}/directives/install_filebeat_step.html (100%) rename src/plugins/kibana/public/settings/sections/{data => indices}/directives/install_filebeat_step.js (73%) rename src/plugins/kibana/public/settings/sections/{data => indices}/directives/paste_samples_step.html (100%) rename src/plugins/kibana/public/settings/sections/{data => indices}/directives/paste_samples_step.js (67%) rename src/plugins/kibana/public/settings/sections/{data => indices}/directives/pattern_review_step.html (100%) rename src/plugins/kibana/public/settings/sections/{data => indices}/directives/pattern_review_step.js (71%) rename src/plugins/kibana/public/settings/sections/{data => indices}/directives/pipeline_step.html (100%) rename src/plugins/kibana/public/settings/sections/{data => indices}/directives/pipeline_step.js (72%) rename src/plugins/kibana/public/settings/sections/{data => indices}/filebeat/index.html (94%) rename src/plugins/kibana/public/settings/sections/{data => indices}/filebeat/index.js (54%) diff --git a/src/plugins/kibana/public/settings/sections/data/index.html b/src/plugins/kibana/public/settings/sections/data/index.html deleted file mode 100644 index ec9f280d1d6e..000000000000 --- a/src/plugins/kibana/public/settings/sections/data/index.html +++ /dev/null @@ -1,5 +0,0 @@ - - - diff --git a/src/plugins/kibana/public/settings/sections/data/index.js b/src/plugins/kibana/public/settings/sections/data/index.js deleted file mode 100644 index 12d9ec4fe3e0..000000000000 --- a/src/plugins/kibana/public/settings/sections/data/index.js +++ /dev/null @@ -1,12 +0,0 @@ -require('plugins/kibana/settings/sections/data/filebeat/index'); - -require('ui/routes') - .when('/settings/data', { - template: require('plugins/kibana/settings/sections/data/index.html') - }); - -module.exports = { - name: 'data', - display: 'Data', - url: '#/settings/data' -}; diff --git a/src/plugins/kibana/public/settings/sections/index.js b/src/plugins/kibana/public/settings/sections/index.js index 394e6e488c9e..c2be1402c526 100644 --- a/src/plugins/kibana/public/settings/sections/index.js +++ b/src/plugins/kibana/public/settings/sections/index.js @@ -3,7 +3,6 @@ define(function (require) { // are used to create the nav bar return [ require('plugins/kibana/settings/sections/indices/index'), - require('plugins/kibana/settings/sections/data/index'), require('plugins/kibana/settings/sections/advanced/index'), require('plugins/kibana/settings/sections/objects/index'), require('plugins/kibana/settings/sections/status/index'), diff --git a/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.html b/src/plugins/kibana/public/settings/sections/indices/directives/install_filebeat_step.html similarity index 100% rename from src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.html rename to src/plugins/kibana/public/settings/sections/indices/directives/install_filebeat_step.html diff --git a/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.js b/src/plugins/kibana/public/settings/sections/indices/directives/install_filebeat_step.js similarity index 73% rename from src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.js rename to src/plugins/kibana/public/settings/sections/indices/directives/install_filebeat_step.js index c615e76c3752..be0ea96b2386 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/install_filebeat_step.js +++ b/src/plugins/kibana/public/settings/sections/indices/directives/install_filebeat_step.js @@ -1,5 +1,5 @@ var modules = require('ui/modules'); -var template = require('plugins/kibana/settings/sections/data/directives/install_filebeat_step.html'); +var template = require('plugins/kibana/settings/sections/indices/directives/install_filebeat_step.html'); modules.get('apps/settings') .directive('installFilebeatStep', function () { diff --git a/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.html b/src/plugins/kibana/public/settings/sections/indices/directives/paste_samples_step.html similarity index 100% rename from src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.html rename to src/plugins/kibana/public/settings/sections/indices/directives/paste_samples_step.html diff --git a/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.js b/src/plugins/kibana/public/settings/sections/indices/directives/paste_samples_step.js similarity index 67% rename from src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.js rename to src/plugins/kibana/public/settings/sections/indices/directives/paste_samples_step.js index 03ae62052ea3..92050be87225 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/paste_samples_step.js +++ b/src/plugins/kibana/public/settings/sections/indices/directives/paste_samples_step.js @@ -1,5 +1,5 @@ var modules = require('ui/modules'); -var template = require('plugins/kibana/settings/sections/data/directives/paste_samples_step.html'); +var template = require('plugins/kibana/settings/sections/indices/directives/paste_samples_step.html'); modules.get('apps/settings') .directive('pasteSamplesStep', function () { diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html b/src/plugins/kibana/public/settings/sections/indices/directives/pattern_review_step.html similarity index 100% rename from src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.html rename to src/plugins/kibana/public/settings/sections/indices/directives/pattern_review_step.html diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js b/src/plugins/kibana/public/settings/sections/indices/directives/pattern_review_step.js similarity index 71% rename from src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js rename to src/plugins/kibana/public/settings/sections/indices/directives/pattern_review_step.js index 63c1d1f71aa3..f5ac34e8c944 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pattern_review_step.js +++ b/src/plugins/kibana/public/settings/sections/indices/directives/pattern_review_step.js @@ -1,5 +1,5 @@ var modules = require('ui/modules'); -var template = require('plugins/kibana/settings/sections/data/directives/pattern_review_step.html'); +var template = require('plugins/kibana/settings/sections/indices/directives/pattern_review_step.html'); modules.get('apps/settings') .directive('patternReviewStep', function () { diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html b/src/plugins/kibana/public/settings/sections/indices/directives/pipeline_step.html similarity index 100% rename from src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.html rename to src/plugins/kibana/public/settings/sections/indices/directives/pipeline_step.html diff --git a/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.js b/src/plugins/kibana/public/settings/sections/indices/directives/pipeline_step.js similarity index 72% rename from src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.js rename to src/plugins/kibana/public/settings/sections/indices/directives/pipeline_step.js index 99e7bee782ff..54d5c26cc1c7 100644 --- a/src/plugins/kibana/public/settings/sections/data/directives/pipeline_step.js +++ b/src/plugins/kibana/public/settings/sections/indices/directives/pipeline_step.js @@ -1,5 +1,5 @@ var modules = require('ui/modules'); -var template = require('plugins/kibana/settings/sections/data/directives/pipeline_step.html'); +var template = require('plugins/kibana/settings/sections/indices/directives/pipeline_step.html'); modules.get('apps/settings') .directive('pipelineStep', function () { diff --git a/src/plugins/kibana/public/settings/sections/data/filebeat/index.html b/src/plugins/kibana/public/settings/sections/indices/filebeat/index.html similarity index 94% rename from src/plugins/kibana/public/settings/sections/data/filebeat/index.html rename to src/plugins/kibana/public/settings/sections/indices/filebeat/index.html index f12112107e46..731580b59df9 100644 --- a/src/plugins/kibana/public/settings/sections/data/filebeat/index.html +++ b/src/plugins/kibana/public/settings/sections/indices/filebeat/index.html @@ -1,5 +1,5 @@ - -
+ +
1. Paste diff --git a/src/plugins/kibana/public/settings/sections/data/filebeat/index.js b/src/plugins/kibana/public/settings/sections/indices/filebeat/index.js similarity index 54% rename from src/plugins/kibana/public/settings/sections/data/filebeat/index.js rename to src/plugins/kibana/public/settings/sections/indices/filebeat/index.js index 81289972d371..9655b51760b4 100644 --- a/src/plugins/kibana/public/settings/sections/data/filebeat/index.js +++ b/src/plugins/kibana/public/settings/sections/indices/filebeat/index.js @@ -1,19 +1,19 @@ var routes = require('ui/routes'); var modules = require('ui/modules'); -var template = require('plugins/kibana/settings/sections/data/filebeat/index.html'); +var template = require('plugins/kibana/settings/sections/indices/filebeat/index.html'); -require('plugins/kibana/settings/sections/data/directives/pattern_review_step'); -require('plugins/kibana/settings/sections/data/directives/paste_samples_step'); -require('plugins/kibana/settings/sections/data/directives/pipeline_step'); -require('plugins/kibana/settings/sections/data/directives/install_filebeat_step'); +require('plugins/kibana/settings/sections/indices/directives/pattern_review_step'); +require('plugins/kibana/settings/sections/indices/directives/paste_samples_step'); +require('plugins/kibana/settings/sections/indices/directives/pipeline_step'); +require('plugins/kibana/settings/sections/indices/directives/install_filebeat_step'); -routes.when('/settings/data/filebeat', { +routes.when('/settings/indices/filebeat', { template: template }); // wrapper directive, which sets up the breadcrumb for all filebeat steps modules.get('apps/settings') - .controller('kbnSettingsDataFilebeat', function ($scope) { + .controller('kbnSettingsIndicesFilebeat', function ($scope) { var totalSteps = 4; $scope.currentStep = 0; $scope.stepResults = {}; diff --git a/src/plugins/kibana/public/settings/sections/indices/index.html b/src/plugins/kibana/public/settings/sections/indices/index.html index a083d5a51105..53e4126ab322 100644 --- a/src/plugins/kibana/public/settings/sections/indices/index.html +++ b/src/plugins/kibana/public/settings/sections/indices/index.html @@ -13,6 +13,13 @@
Pick this option if you already have data in Elasticsearch.
+ +

+ Tail a File +

+
+ Pick this option if you have log data you'd like to send to Elasticsearch. +
diff --git a/src/plugins/kibana/public/settings/sections/indices/index.js b/src/plugins/kibana/public/settings/sections/indices/index.js index 45139727fa47..fc96a0d24da9 100644 --- a/src/plugins/kibana/public/settings/sections/indices/index.js +++ b/src/plugins/kibana/public/settings/sections/indices/index.js @@ -3,6 +3,7 @@ define(function (require) { require('plugins/kibana/settings/sections/indices/directives/kbn_settings_indices'); require('plugins/kibana/settings/sections/indices/_create'); + require('plugins/kibana/settings/sections/indices/filebeat/index'); require('plugins/kibana/settings/sections/indices/_edit'); require('plugins/kibana/settings/sections/indices/_field_editor'); From 70e21a24708c3f457db64adde6db6b5d43144936 Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Wed, 20 Jan 2016 18:30:06 -0500 Subject: [PATCH 21/60] make filebeat wizard layout more consistent with the create index pattern page --- .../sections/indices/filebeat/index.html | 76 ++++++++++--------- 1 file changed, 42 insertions(+), 34 deletions(-) diff --git a/src/plugins/kibana/public/settings/sections/indices/filebeat/index.html b/src/plugins/kibana/public/settings/sections/indices/filebeat/index.html index 731580b59df9..6a44020dd445 100644 --- a/src/plugins/kibana/public/settings/sections/indices/filebeat/index.html +++ b/src/plugins/kibana/public/settings/sections/indices/filebeat/index.html @@ -1,6 +1,13 @@ -
-
+ +
+ +
+
+
1. Paste @@ -13,45 +20,46 @@ 4. Install Filebeat -
- -
-
- -
-
- - - - + From 944b78a241d694d52978a7d0e5503011c7f9a340 Mon Sep 17 00:00:00 2001 From: Matthew Bargar Date: Fri, 22 Jan 2016 13:27:11 -0500 Subject: [PATCH 22/60] Update functional tests to know about the new add data landing page --- .../public/settings/sections/indices/_create.js | 2 +- .../public/settings/sections/indices/_edit.html | 2 +- .../public/settings/sections/indices/index.html | 4 ++-- test/functional/apps/discover/_discover.js | 2 +- test/functional/apps/settings/_advanced_settings.js | 2 +- .../apps/settings/_creation_form_changes.js | 2 +- .../apps/settings/_index_pattern_create_delete.js | 6 +++--- .../apps/settings/_index_pattern_popularity.js | 4 ++-- .../apps/settings/_index_pattern_results_sort.js | 5 +++-- test/functional/apps/settings/_initial_state.js | 2 +- test/functional/apps/visualize/_area_chart.js | 2 +- test/functional/apps/visualize/_chart_types.js | 2 +- test/functional/apps/visualize/_data_table.js | 2 +- test/functional/apps/visualize/_line_chart.js | 2 +- test/functional/apps/visualize/_metric_chart.js | 2 +- test/functional/apps/visualize/_pie_chart.js | 2 +- test/functional/apps/visualize/_tile_map.js | 2 +- .../functional/apps/visualize/_vertical_bar_chart.js | 2 +- test/support/pages/settings_page.js | 12 ++++++++---- 19 files changed, 32 insertions(+), 27 deletions(-) diff --git a/src/plugins/kibana/public/settings/sections/indices/_create.js b/src/plugins/kibana/public/settings/sections/indices/_create.js index 4437fbc7ddde..a9b35867d3ca 100644 --- a/src/plugins/kibana/public/settings/sections/indices/_create.js +++ b/src/plugins/kibana/public/settings/sections/indices/_create.js @@ -7,7 +7,7 @@ define(function (require) { require('ui/directives/auto_select_if_only_one'); require('ui/routes') - .when('/settings/indices/existing', { + .when('/settings/indices/create/existing', { template: require('plugins/kibana/settings/sections/indices/_create.html') }); diff --git a/src/plugins/kibana/public/settings/sections/indices/_edit.html b/src/plugins/kibana/public/settings/sections/indices/_edit.html index ee0e6f65a307..5e0e95d19ce1 100644 --- a/src/plugins/kibana/public/settings/sections/indices/_edit.html +++ b/src/plugins/kibana/public/settings/sections/indices/_edit.html @@ -1,6 +1,6 @@ -
+