* Added sorting to all columns
* Added sorting to table wrapper instead
* Fixed condition
* Removed default sorting value
* Removed a log statement
* Converted beats directive into a controller
* Initial implementation
* More logs UI work
* Remove unnecessary code
* Add support to build a logs url based on the cluster and/or node uuid
* Deep link directly
* Update link
* Use CCS to access remote filebeat data
* Fix existing tests
* Add log specific api integration tests
* Localization
* Adding more localization
* Adding unit tests for logs ui
* Client side unit tests, configuration for log fetch count, adding visual callout for why we can't detect logs
* Remove debug
* Fix localization issue
* Update tests
* PR feedback
* Update import
* Format the count to avoid a huge string of numbers
* Use @timestamp instead
* Handle scenario where the time period is not right but the type exists
* Update jest tests
* Update api tests
* Text changes
* Add periods
* Update tests
* Protect against these fields not existing
* Add basic unit tests to ensure this behavior does not regress
* Expand this test to ensure we don't break on other pieces of data missing
* Use N/A if there is no value (rather than 0)
* chore(NA): first changes on every package.json order to support new babel 7. chore(NA): build for kbn-pm with babel 7.
* chore(NA): patch babel register to load typescrit
* chore(NA): first working version with babel 7 replacing typescript compiler.
* fix(NA): common preset declaration in order to make it work with babel-loader.
* chore(na): organizing babel preset env package json.
* chore(NA): mocha tests enabled.
* fix(NA): typo on importing
* test(NA): majority of x-pack tests ported to use babel-jest
* fix(NA): report info button test with babel-jest.
* fix(NA): polling service tests.
* test(na): fix server plugins plugin tests.
* test(NA): batch of test fixs for jest tests under babel-jest hoisting.
* chore(NA): add babel plugin to hoist mock prefixed vars on jest tests.
* chore(NA): update yarn.lock file.
* chore(NA): tests passing.
* chore(NA): remove wrong dep
* chore(NA): fix tsconfig
* chore(NA): skip babel for ts-jest.
* chore(NA): selectively apply the plugin to strip off namespace from ts files.
* chore(NA): remove not needed changes from ts tests
* chore(NA): removed ts-jest dependency. chore(NA): migrate ts tests on x-pack to use babel-jest with the new pattern.
* chore(NA): migrate kibana default distribution typescript tests to run with babel-jest and the new test mock pattern.
* chore(NA): merge and solve conflicts with master.
* chore(NA): fix problems reported by eslint
* chore(NA): fix license ovveride for babel-plugin-mock-imports
* chore(NA): update jest integration tests for kbn pm
* chore(NA): update babel jest integration tests for kbn pm.
* test(NA): update jest integration snapshot for kbn pm.
* chore(NA): apply changes according to the pull request reviews.
* chore(NA): apply changes according to the pull request reviews.
* refact(NA): migrate jest tests to the new pattern.
* fix(NA): babel 7 polyfill in the tests bundle.
* chore(NA): restore needed step in order to compile x-pack with typescript.
* chore(NA): change build to compile typescript with babel for the oss code. chore(NA): change transpile typescript task to only transpile types for x-pack. refact(NA): common preset for babel 7
* Revert "chore(NA): change build to compile typescript with babel for the oss code. chore(NA): change transpile typescript task to only transpile types for x-pack. refact(NA): common preset for babel 7"
This reverts commit 2707d538f5.
* fix(NA): import paths for tabConfigConst
* chore(NA): fix transpiling error on browser tests
* chore(NA): simplify kbn babel preset package.
* chore(NA): migrate build to use babel transpiler for typescript excluding xpack.
* fix(NA): introduced error on test quick task.
* fix(NA): fix preset for client side code on build.
* fix(NA): build with babel
* fix(NA): negated patterns in the end.
* fix(NA): kbn_tp_sample_panel_action creation.
* fix(NA): babel typescript transform plugin workaround when exporting interface name.
* refact(NA): remove not needed type cast to any on jest test.
* docs(NA): add developement documentation about jest mocks test pattern.
* chore(NA): missing unmerged path.
* chore(NA): fix jest tests for template.
* [CCR] Client integration tests (table lists) (#33525)
* Force user to re-authenticate if token refresh fails with `400` status code. (#33774)
* Improve performance of the Logstash Pipeline Viewer (#33793)
Resolves#27513.
_This PR is a combination of #31293 (the code changes) + #33570 (test updates). These two PRs were individually reviewed and merged into a feature branch. This combo PR here simply sets up the merge from the feature branch to `master`._
Summary of changes, taken from #31293:
## Before this PR
The Logstash Pipeline Viewer UI would make a single Kibana API call to fetch all the information necessary to render the Logstash pipeline. This included information necessary to render the detail drawer that opens up when a user clicks on an individual vertex in the pipeline.
Naturally, this single API call fetched _a lot_ of data, not just from the Kibana server but also, in turn, from Elasticsearch as well. The "pro" of this approach was that the user would see instantaneous results if they clicked on a vertex in a pipeline and opened the detail drawer for that vertex. The "cons" were the amount of computation Elasticsearch had to perform and the amount of data being transferred over the wire between Elasticsearch and the Kibana server as well as between the Kibana server and the browser.
## With this PR
This PR makes the Kibana API call to fetch data necessary for **initially** rendering the pipeline — that is, with the detail drawer closed — much lighter. When the user clicks on a vertex in a pipeline, a second API call is then made to fetch data necessary for the detail drawer.
## Gains, by the numbers
Based on a simple, 1-input, 1-filter, and 1-output pipeline.
* Before this PR, the Elasticsearch `logstash_stats` API responses (multiple calls were made using the `composite` aggregation over the `date_histogram` aggregation) generated a total of 1228 aggregation buckets (before any `filter_path`s were applied but across all `composite` "pages"). With this PR, the single `logstash_stats` API response (note that this is just for the initial rendering of the pipeline, with the detail drawer closed) generated 12 buckets (also before any `filter_path`s were applied). That's a **99.02% reduction** in number of buckets.
* Before this PR, the Elasticsearch `logstash_stats` API responses added up to 70319 bytes. With this PR, the single `logstash_stats` API response for the same pipeline is 746 bytes. That's a **98.93% reduction** in size.
* Before this PR, the Elasticsearch `logstash_state` API response was 7718 bytes. With this PR, the API response for the same pipeline is 2328 bytes. That's a **69.83% reduction** in size.
* Before this PR the Kibana API response was 51777 bytes. With this PR, the API response for the same pipeline is 2567 bytes (again, note that this is just for the initial rendering of the pipeline, with the detail drawer closed). That's a **95.04% reduction** in size.
* [Maps] split settings into layer and source panels (#33788)
* [Maps] split settings into layer and source panels
* fix SCSS import
* [env] exit if starting as root (#21563)
* [env] exit if starting as root
* fix windows
* s/--allow-root
* Typescript sample panel action (#33602)
* Typescript sample panel action
* Update EUI version to match main cabana version
* update yarn.lock
* add back typings include
* use correct relative path
* Home page "recent links" should communicate saved object type #21896 (#33694)
* adds object type for screen order
* adds object type for pointer hovering
* Update src/legacy/ui/public/chrome/directives/header_global_nav/components/header.tsx
Co-Authored-By: rockfield <philipp.b@ya.ru>
Resolves#27513.
_This PR is a combination of #31293 (the code changes) + #33570 (test updates). These two PRs were individually reviewed and merged into a feature branch. This combo PR here simply sets up the merge from the feature branch to `master`._
Summary of changes, taken from #31293:
## Before this PR
The Logstash Pipeline Viewer UI would make a single Kibana API call to fetch all the information necessary to render the Logstash pipeline. This included information necessary to render the detail drawer that opens up when a user clicks on an individual vertex in the pipeline.
Naturally, this single API call fetched _a lot_ of data, not just from the Kibana server but also, in turn, from Elasticsearch as well. The "pro" of this approach was that the user would see instantaneous results if they clicked on a vertex in a pipeline and opened the detail drawer for that vertex. The "cons" were the amount of computation Elasticsearch had to perform and the amount of data being transferred over the wire between Elasticsearch and the Kibana server as well as between the Kibana server and the browser.
## With this PR
This PR makes the Kibana API call to fetch data necessary for **initially** rendering the pipeline — that is, with the detail drawer closed — much lighter. When the user clicks on a vertex in a pipeline, a second API call is then made to fetch data necessary for the detail drawer.
## Gains, by the numbers
Based on a simple, 1-input, 1-filter, and 1-output pipeline.
* Before this PR, the Elasticsearch `logstash_stats` API responses (multiple calls were made using the `composite` aggregation over the `date_histogram` aggregation) generated a total of 1228 aggregation buckets (before any `filter_path`s were applied but across all `composite` "pages"). With this PR, the single `logstash_stats` API response (note that this is just for the initial rendering of the pipeline, with the detail drawer closed) generated 12 buckets (also before any `filter_path`s were applied). That's a **99.02% reduction** in number of buckets.
* Before this PR, the Elasticsearch `logstash_stats` API responses added up to 70319 bytes. With this PR, the single `logstash_stats` API response for the same pipeline is 746 bytes. That's a **98.93% reduction** in size.
* Before this PR, the Elasticsearch `logstash_state` API response was 7718 bytes. With this PR, the API response for the same pipeline is 2328 bytes. That's a **69.83% reduction** in size.
* Before this PR the Kibana API response was 51777 bytes. With this PR, the API response for the same pipeline is 2567 bytes (again, note that this is just for the initial rendering of the pipeline, with the detail drawer closed). That's a **95.04% reduction** in size.
* [@kbn/expect] "fork" expect.js into repo
* [eslint] autofix references to expect.js
* [tslint] autofix all expect.js imports
* now that expect.js is in strict mode, avoid reassigning fn.length
* Fixed a simple argument bug and removed infra date picker EUI types
* Fixes for EUI date picker types
* eui_8.0.0
* fix type errors in query_bar
* Small changes for EUI types
* Updates EUI to 9.0.0 and removes @types/react-datepicker as it now ships with EUI
* Updates to EUI 9.0.1 and removes duplicate types in infra eui.d.ts
* ts-ignore applied to ongoing type error with styled components and EUI
* Changes EuiProgress props to avoid TS errors
* Updates EUI 9.0 snapshots
* Updates kibana root snapshots for EUI 9.0 upgrade
* Update detail_panel.test.js for EUI changes
* Updated functioanl and unit tests to properly inspect EuiTableRowCell rendered values
* Fix docs_level_security_roles.js func tests
* Update EUI to 9.0.2
* Fixed failing snapshot for EUI icon default prop
We have had `insert_final_newline = true` in our `.editorconfig` file since April 2015, but never validated it with eslint. I'm a little tired of extra changes showing up in PRs because some people use editors which respect the `.editorconfig` file and some don't, so I figured we might want to enable the rule in eslint so that the can be autofixed.
Votes requested please :)
* chore(NA): remove specific watch for x-pack webpackShims folder.
* chore(NA): remove xpack security plugin angular-ui-select webpackShim.
* chore(NA): bump ui-select version on x-pack to match the one used on oss kibana
* chore(NA): remove manual searching for webpackShim imports into the dll plugin. chore(NA): explicit avoid max dll compilations in all environments for the dll plugin. chore(NA): explicit throw an error and list all the not allowed modules bundled into the dll bundle.
* refact(NA): move ui related actions inside webpackShims to proper ui related files
* chore(NA): move angular ui dependencies from webpackShims to kibana core module.
* test(NA): enable xpack jest tests to be able to resolve plugins/xpack_main/*. refact(NA): rewrite code for the old xpack jquery flot webpackShim.
* refact(NA): use the already declared ui module get to list the dependencies for the kibana legacy core plugin.
* chore(NA): move angular ui requires to a better centralized place.
* refact(NA): rename areMaxCompilationsPerformed to assertMaxCompilations.
* refact(NA): remove unnecessary promise resolve on async function.
* refact(NA): remove unnecessary promise resolve on async function.
* refact(NA): apply changes according pr review.
* refact(NA): change from requires to imports in xpack_main plugin jquery flots.
* refact(NA): jquery flots missing statements.
* fix(na): linting problems.
* chore(na): re add jquery flot requires instead of imports.
* refact(NA): moving jquery flots from require to import. test(NA): fix mock for jquery_flot.
* feat(na): allow dynamic dll plugin public modules on dll bundle.
* feat(NA): step verification to not allow modules from xpack source.
* chore(NA): fix linting problems.
* Reintroduce linting rule that requires single-quotes in x-pack.
* Remove redundant quotes rule for ML.
* Convert ES-UI code to single quotes.
- Dev tools
- CCR
- ILM
- Index management
- License management
- Remote clusters
- Rollup
- Watcher
* Convert Graph code to single quotes.
* Convert Maps to single quotes.
* Convert Monitoring code to single quotes.
* Convert Reporting code to single quotes.
* Convert Security code to single quotes.
* Convert Telemetry code to single quotes.
* Convert Upgrade Assistant code to single quotes.
* Convert Grok Debugger to single quotes.
This commit accompanies the four that precede it. Rather than squash
them altogether, the four previous commits all do nothing except move
files to help avoid conflicts.
* First foray into turning .application background off
* Hopefully fixing the last few plugins
* Update EUI to 6.9.0
* removing hacks
* last fixes
* Remove a few more `100vh`
* Can I remember to copy & REPLACE
* EUI at 6.10.0
Removes support for the k6 navigation style from master. All but the first commit are targeted at a specific section of Kibana. Please take a look at the areas you're familiar with and check it off the list. We'll plan to merge this right before feature freeze.
- [ ] home
- [ ] discover
- [ ] context
- [ ] visualize
- [ ] dashboard
- [ ] devtools
- [ ] timelion
- [ ] graph
- [x] monitoring
- [ ] gis
- [ ] infra
- [x] ml
- [ ] security
- [ ] uptime
- [x] beatscm
@elastic/kibana-app @elastic/kibana-security @elastic/ml-ui @elastic/infrastructure-ui @elastic/kibana-gis @elastic/stack-monitoring @elastic/es-ui
* Add flag to enable/disable CCR monitoring UI
* Use the cluster setting instead of a new config
* Remove debug
* Update based on PR feedback
* Ensure the CCR tab shows up on the CCR page
* Rework this so we remove the janky UX
* Update tests
* Handle both string and boolean
* Remove debug
* Fix tests
* Refactor this to use the stack_stats part of the cluster_stats document
* Update the api integration tests
* Fix this test
* Remove debug
* UI design touchup for 7.0
* clean up chart titles and beta icon
* Make shard list wrap on IE11
* wrap table cells with much content
* fix title height above graphs on ie11
* update tests and snapshots
* update functional test for node detail
* fixing more functional tests
* Fix issues with the localization effort, mainly due to two ongoing refactors in the same code
* Apply suggestions from code review
Co-Authored-By: chrisronline <chrisronline@gmail.com>
* PR feedback
* Unlinked deployment working for beats
* Use better constant
* Show N/A for license
* Rename to Unlinked Cluster
* Use callout to mention unlinked cluster
* PR feedback
* Use fragment
* Speed up the query by using terminate_after
* Handle failures more defensively
* Remove unnecessary msearch
* PR feedback
* PR feedback and a bit of light refactor
* Updated text
* Add api integration tests
* Localize call out
* Update loc pattern
* Fix improper i18n.translate usage
* Revert "Fix improper i18n.translate usage"
This reverts commit 0e2e7608c3.
* Revert "Update loc pattern"
This reverts commit cc99fe8a8a.
* Ensure the unlinked deployment cluster counts as a valid cluster
* Sometimes, you miss the smallest things
* Ensure the unlinked cluster is supported, in that users can click the link and load it
* Update tests
* PR feedback. Simplifying the flag supported code and adding more tests
* Update naming
* Rename to Standalone Cluster
* Remove unnecessary file
* Move logic for setting isSupported to exclusively in flag supported clusters code, update tests
* Updates react to 16.6 (latest)
* Updated fragment-based snapshots for Kibana root unit tests
* Updated fragment-based snapshots for x-pack unit tests
* Removed xpack yarn.lock file bc it is no longer needed, it was reintroduced by accident during a rebase in this branch
* React 16.6 snapshot updates, round 2 (mostly Fragment snapshot diffs)
* Updated last round of React 16.6 snapshots
* Fixes query bar issue with 16.4 gDSFP lifecycle
* Updated yarn lock (arraybuffer.slice updated)
* Updates snapshots where executeQueryOptions prop appears
* [visualize] update breadcrumbs when updating visualization
* [ftr] auto-scroll elements passed the fixed header if necessary
* [uiSettings] enable the k7design by default
* [ftr/services/flyout] add ensureClosed() and ensureAllClosed()
* [ftr/services/globalNav] implement globalNav service
* [ftr/services/appsMenu] implement service for using app menu
* [ftr/services/userMenu] add service for using user menu
* [ftr/discover+visualize] update assertions that are based on the app width
* [ftr/monitoring] pass test subjects to new breadcrumbs
* [headerGlobalNav] don't offset the app container in embed mode
* update heights for slightly smaller header
* Upgrade to EUI 6.3.0
* use ToolTipPositions instead of EuiToolTipPosition to avoid typescript problems
* update @types/react and @types/prop-types to match EUI versions
* upgraded to EUI 6.3.1 to avoid typescript version issues
* Ensure the schema is set
* Flatten certain table data lists to ensure the default field filtering works
* Fix issue with tests
* Fix issue with sort key name
* Readd localization that was removed