Keeping up with Kibana: This week in Kibana for October 11th, 2019

Security

SAML redirects with Kibana’s hash-based routing

Kibana uses hash-based routing, and as such Kibana’s server doesn’t have access to the full URL when initiating the SAML handshake with the IdP. This resulted in users not being fully redirected to their initial routes after login. The team has implemented an intermediary HTML page to capture the full URL, so users are now properly redirected after logging in using SAML.


Platform

New Platform 

We’ve improved the experience of consuming New Platform APIs from legacy plugins, by making the APIs available more consistent and adding types to Elasticsearch APIs. This eases the migration process for plugin teams.

We’ve gotten some help to squash a few Saved Objects bugs affecting customers (#47248, #47223). We also improved the API types for the SavedObject client to improve flexibility of consuming SavedObjects.

We added metadata logging support in the New Platform. This bridges the gap between LP and NP logging capabilities and unblocks migrations for a few Core services, like UiSettings.

For NP plugin migrations, 6 PRs were merged this week from plugin teams. All 6 were from the App Architecture team.

Operations

We started looking into a requested feature (kibana # 12259) called log rotation and define how we will implement the feature for the time being.


Geo-Maps App


App Architecture

Data Access Services

A PR has been merged that switches our querying from using the _msearch Elasticsearch endpoint to _search. This effectively means that requests will be made individually, and dashboard panels will load individually when they complete rather than waiting for the slowest query to return. It also means we now take advantage of query cancellation in Elasticsearch when a user navigates away, or issues a new search.

First iteration of our search services has been merged (#46742). To play around with the services in Kibana, and see how they are used (and tested!). Run Kibana via:yarn start --plugin-path test/plugin_functional/plugins/demo_search/ --plugin-path test/plugin_functional/plugins/search_explorer/<code><code> And navigate to the Search Explorer app. There you can see how the search service is being used in a New Platform application, as well as how a demo search strategy is registered.

kibana-essearch.png


Kibana App (Visualizations, Sharing, Discover)

Lens

Spent the week fixing and identifying the major blockers for a Beta release, and prioritized them. We are implementing the most granular telemetry in Kibana to track usage in Lens in 30-day and 90-day intervals for about 20 different events, as well as to understand whether our funnel from first use to save is working the way we want. We are also working on improving the list of fields to be more performant and accurate.

Other changes last week:

Elastic Charts

The Legend now shows upper and lower series values for banded area charts (elastic-charts/#398).

kibana-charts1.gif

In elastic-charts 13.5 we are finally applying a zero value on missing data points for stacked area charts. This is a preliminary work toward handling data uncertainty: (elastic-charts/#388#issuecomment)

Current

kibana-charts2.png

Desired

kibana-charts3.png

Few fixes also landed on elastic-charts 13.5 release:

- an issue causing bad rendering when hiding/showing a mixed set of series (line/area + bars) from the Legend toggle was fixed in (elastic-chart/#410)

- a bug was wrongly rendering bars on log scales: fixed in (elastic-charts/#413)

Discover

With the merge of #47847 the field filter style will be Lens-like

kibana-discover-lens.png

Next PRs will take care of the fields filter form #47357, and the migration of Discover to the new platform.

Graph

Due to Kibana App fix it week most of the progress for Graph were small improvements and bug fixes. With the merge #47324 the phrasing within Graph improved significantly.

Besides that the following PRs got merged:

  • #47447 Always check for valid license
  • #46914 Improve test coverage of sagas
  • #47394 Move more things into redux/saga setup
  • #47587 Fix bug related to drilldown URL building
  • #47053 Increase function test stability and re-enable them
  • #47560 Properly clean up settings when switching index pattern
  • #47667 Fix some styling issues

KQL/Saved queries

Small improvements and bug fixes were made during Kibana App fix it week. 

The following PRs were merged:

  • #47407 Discover should automatically apply the query input from a saved query
  • #47406 Fix bug related to using more than 20 saved queries
  • #46963 Prevent changes to search bar on save


Canvas

Canvas Shareables

Canvas Shareables are the ability to add a Canvas Workpad to any external site with a javascript snippet. Shareables have been merged for 7.5 release with a whopping 92% test coverage.


Design

Discover redesign concepts

We’re working with the Kibana App team to rethink the Discover app based on the upcoming EuiDataGrid component. The goal is to make Discover more immediately friendly and lean into its strengths as a data viewer.

kibana-design1.png

Maps tooltip improvements

We’ve been helping out the maps team clean up their tooltips. These made their way in through some PRs earlier in the week. Here’s a screen.

kibana-design2.png

Graph concepts

We’re working with the Kibana App team to improve the Graph experience. This will be a fairly long term project and these mocks are early, but it’s fun to see so much movement on that applications lately.

kibana-design3.png


Stack Services

Telemetry

We finished working on moving ui_metrics to new platform (#47676). We will be merging OSS telemetry and moving the metrics plugin for 7.5. We had a meeting to start rethinking Stack Telemetry.

Make It Action/Alerting

New platform shims for alerting and actions plugin are now merged: https://github.com/elastic/kibana/pull/46954 and #47256.  alertId is now passed to the alert type executor: #47379  We fixed a bug where users were unable to create alerts when ES security is disabled but Kibana security plugin is enabled #47504.

We also added KQL support for filtering alerts and actions #47530, cleaned up references no longer having to be passed in alerts and actions client on update #47548, and added missing docs: #47513 and #47515.

We started work on the actions list UI: #47843. .  We introduced functionality for alerting tabs navigation#47754 and started work on implementing UI for Action create form #47756.

We fixed an issue where the Kibana plugin would "complete" before an async operation of setting the Kibana UUID was completed, meaning that other plugins, such as Task Manager, could startup before a UUID is available and hence fail to start correctly. #47741

We also added a bulkUpdate api to the various Saved Objects clients (including secure and encrypted clients) which allows us to begin work on parallelizing various Update operations such as the multiple update calls made by Task Manager, speeding up these processes. #47540  We also began work parallelizing the calls made by Task Manager to Elasticsearch when running tasks.#48053


Docs

UI reviews

UI text reviews are underway. If you need eyes on your UI text, reach out and let us know.

Guide

We’ve started the docs for: