Skip to content

Commit 4ae7ce9

Browse files
florent-leborgnealaudazzi
authored andcommitted
Background search in Discover and Dashboards (elastic#3455)
This PR: - Repurposes the Search sessions page into Background search. The feature being essentially the same on the UX side (a few changes still), and using the same settings behind the scenes, we chose to update the existing page rather than create a new one. - Calls out that search sessions, which is a deprecated feature since 8.15 and disabled by default, are being replaced with this new background search feature, so that search sessions users know what's happening. - Adds references to background search to a few places to increase its visibility. - Discover overview docs on searching & filtering - Glossary - Dashboards docs as a tip for slow loading scenarios - Removes the old search sessions example in favor of more generic but goal-oriented small sections The update to the Search session settings page are in elastic/kibana#238699 as these source files are in another repo Closes: elastic#3105 --------- Co-authored-by: Arianna Laudazzi <[email protected]>
1 parent d15e034 commit 4ae7ce9

File tree

10 files changed

+146
-88
lines changed

10 files changed

+146
-88
lines changed

explore-analyze/dashboards/using.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
---
22
mapped_pages:
33
- https://www.elastic.co/guide/en/kibana/current/_use_and_filter_dashboards.html
4+
description: Learn how to explore and interact with Kibana dashboards using filters, time ranges, and controls to uncover insights in your data.
45
applies_to:
56
stack: ga
67
serverless: ga
@@ -10,6 +11,11 @@ products:
1011

1112
# Exploring dashboards [_use_and_filter_dashboards]
1213

14+
Kibana dashboards support filtering, time range adjustments, and interactive controls that let you focus on specific data segments or time periods.
15+
16+
This page covers the main ways to explore dashboard data: using KQL queries, filter pills, time ranges, and dashboard controls. You'll also learn how to view underlying data and switch between different display modes.
17+
18+
1319

1420
## Search and filter your dashboard data [search-or-filter-your-data]
1521

@@ -23,6 +29,20 @@ products:
2329

2430
This section shows the most common ways for you to filter dashboard data. For more information about {{kib}} and {{es}} filtering capabilities, refer to [](/explore-analyze/query-filter.md).
2531

32+
### Filter dashboards using the KQL query bar [_filter_dashboards_using_the_kql_query_bar]
33+
34+
The query bar lets you build filters using [{{kib}} Query Language (KQL)](../query-filter/languages/kql.md). When typing, it dynamically suggests matching fields, operators, and values to help you get the exact results that you want.
35+
36+
You can use KQL to create complex queries that filter your dashboard data. For example:
37+
- `status:error` to show only error records
38+
- `response_time > 1000` to display requests slower than 1 second
39+
- `user.name:"john doe" AND status:active` to combine multiple conditions
40+
41+
:::{tip}
42+
:applies_to: {"stack": "preview 9.2", "serverless": "unavailable"}
43+
When working with large datasets, complex KQL queries might cause dashboards to load slowly. In versions 9.2 and later, you can [send long-running searches to the background](../discover/background-search.md) and continue working on other tasks while the data loads.
44+
:::
45+
2646

2747
### Use filter pills [_use_filter_pills]
2848

Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
---
2+
navigation_title: "Run queries in the background"
3+
mapped_pages:
4+
- https://www.elastic.co/guide/en/kibana/current/search-sessions.html
5+
applies_to:
6+
stack: preview 9.2
7+
serverless: unavailable
8+
products:
9+
- id: kibana
10+
description: Send your long-running queries to run in the background with background searches and search sessions, and focus on your other tasks while they complete.
11+
---
12+
13+
# Run Discover and Dashboards queries in the background
14+
15+
::::{important} - Background search replaces Search sessions
16+
17+
Background search is a feature introduced in version 9.2. It replaces the deprecated **Search sessions** feature.
18+
If you have been using search sessions and upgrade to 9.2, your search sessions aren't lost and become background searches.
19+
::::
20+
21+
Sometimes you might need to search through large amounts of data, no matter how long the search takes. Consider a threat hunting scenario, where you need to search through years of data.
22+
23+
You can send your long-running searches to the background from **Discover** or **Dashboards** and let them run while you continue your work.
24+
25+
You can access your list of background searches at any time to check their status and manage them from the {icon}`background_task` **Background searches** button in the toolbar.
26+
27+
![Send search to background](https://images.contentstack.io/v3/assets/bltefdd0b53724fa2ce/bltee31dcf0d3917c75/68ecf412e5bae49d65a286ff/background-search.gif " =75%")
28+
29+
30+
## Enable background searches
31+
32+
This feature is disabled by default. You can enable background searches in versions 9.2 and later, or search sessions in versions 9.1 and earlier, by setting [`data.search.sessions.enabled`](kibana://reference/configuration-reference/search-sessions-settings.md) to `true` in the [`kibana.yml`](/deploy-manage/stack-settings.md) configuration file.
33+
34+
:::{note} - Exception for search sessions users
35+
If you upgrade to version 9.2 or later with search sessions enabled in the version you upgrade from, background searches are automatically enabled.
36+
:::
37+
38+
## Usage requirements [_requirements]
39+
40+
The background searches that you run are personal and only visible by you. To use this feature, you must have the following minimum permissions:
41+
42+
:::::{tab-set}
43+
:group: background search
44+
45+
::::{tab-item} 9.2 and later
46+
:sync: 92
47+
To send searches to the background, and to view and interact with the list of background searches from **Discover** and **Dashboards** apps, you must have permissions for **Discover** and **Dashboard**, and for the [Background search subfeature](../../deploy-manage/users-roles/cluster-or-deployment-auth/kibana-privileges.md#kibana-feature-privileges).
48+
::::
49+
50+
::::{tab-item} 9.1 and earlier
51+
:sync: 91
52+
In versions 9.1 and earlier, this feature is named **Search sessions**.
53+
* To save a session, you must have permissions for **Discover** and **Dashboard**, and the [Search sessions subfeature](../../deploy-manage/users-roles/cluster-or-deployment-auth/kibana-privileges.md#kibana-feature-privileges).
54+
* To view and restore a saved session, you must have access to **Stack Management**.
55+
::::
56+
57+
:::::
58+
59+
## Send a search to the background
60+
61+
You can send a search to the background only after it starts running. Until then, the **Send to background** button is disabled.
62+
63+
1. Write or edit the query.
64+
65+
1. Select {icon}`play` **Run** (or {icon}`refresh` **Refresh** if you already ran the query at least once) to start executing the query. At this point, the {icon}`background_task` **Send to background** button becomes available.
66+
67+
1. Select {icon}`background_task` **Send to background**. The search is sent to the background and added to the queue of background searches.
68+
69+
You can resume your other tasks, for example start a new search, navigate to a different application, or close the browser. Once the search has completed, a notification informs you and lets you access the search to view its results.
70+
71+
Background searches expire after 7 days. Beyond that period, you must run the search again. You can change this default value by editing the [`data.search.sessions.defaultExpiration`](kibana://reference/configuration-reference/search-sessions-settings.md) setting.
72+
73+
## Reopen or manage background searches
74+
75+
From the list of background searches, you can reopen and edit any searches, but also extend their validity period or delete them to keep only searches that you care about.
76+
77+
1. Open your list of background searches using one of the following methods:
78+
- Once a background search is sent to the background, a notification appears to inform you, with a link to open the list of background searches.
79+
- If you miss the notification or need to access this list at any time, go to **Discover** or **Dashboards** and select the {icon}`background_task` **Background searches** button in the toolbar. This option is only available from version 9.2.
80+
81+
:::{tip}
82+
From **Discover**, you can only view Discover background searches. And from **Dashboards**, you can only see Dashboards background searches.
83+
:::
84+
- Open the **Background Search** management page in {{kib}}.
85+
86+
1. Find the background search that you want to interact with using the search or status filter options.
87+
- To open it to view its results and continue your explorations, select its name. Relative dates are converted to absolute dates.
88+
- To rename it, select the {icon}`boxes_horizontal` **More actions** button, then select {icon}`pencil` **Edit name**. By default, background searches get default names that indicate their execution date and time.
89+
- To extend its current expiration date by another 7 days, select the {icon}`boxes_horizontal` More actions button, then select **Extend**.
90+
- To delete it, select the {icon}`boxes_horizontal` More actions button, then select {icon}`trash` **Delete**.
91+
92+
93+
## Background search limitations in dashboards [_limitations]
94+
95+
Some visualization features do not fully support background searches. When you restore a dashboard, panels with unsupported features won’t load immediately, but instead send out additional data requests, which can take a while to complete. The **Your background search is still running** warning appears. You can either wait for these additional requests to complete or come back to the dashboard later when all data requests have finished.
96+
97+
A panel on a dashboard can behave like this if one of the following features is used:
98+
99+
**Lens**
100+
101+
* A **top values** dimension with an enabled **Group other values as "Other"** setting. This is configurable in the **Advanced** section of the dimension.
102+
* An **intervals** dimension.
103+
104+
**Aggregation-based** visualizations
105+
106+
* A **terms** aggregation with an enabled **Group other values in separate bucket** setting.
107+
* A **histogram** aggregation.
108+
109+
**Maps**
110+
111+
* Layers using joins, blended layers, or tracks layers.

explore-analyze/discover/discover-get-started.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -308,6 +308,14 @@ Learn more about how to use ES|QL queries in [Using ES|QL](try-esql.md).
308308
:::{include} ../_snippets/inspect-request.md
309309
:::
310310

311+
### Run long-running queries in the background
312+
```{applies_to}
313+
stack: ga 9.2
314+
serverless: unavailable
315+
```
316+
317+
You can send your long-running KQL or {{esql}} queries to the background from **Discover** and let them run while you continue exploring your data. Refer to [Run queries in the background](/explore-analyze/discover/background-search.md).
318+
311319

312320
### Save your Discover session for later use [save-discover-search]
313321

explore-analyze/discover/search-sessions.md

Lines changed: 0 additions & 85 deletions
This file was deleted.
-76.4 KB
Binary file not shown.
-224 KB
Binary file not shown.
-234 KB
Binary file not shown.

explore-analyze/toc.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ toc:
161161
- file: discover/save-open-search.md
162162
- file: discover/show-field-statistics.md
163163
- file: discover/run-pattern-analysis-discover.md
164-
- file: discover/search-sessions.md
164+
- file: discover/background-search.md
165165
- file: discover/try-esql.md
166166
- file: dashboards.md
167167
children:

redirects.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -516,7 +516,8 @@ redirects:
516516
# Related to https://github.com/elastic/docs-content/pull/3318
517517
'solutions/security/manage-elastic-defend/identify-antivirus-software-on-hosts.md': 'solutions/security/manage-elastic-defend/automatic-troubleshooting.md'
518518

519-
519+
# Search sessions becoming background search
520+
'explore-analyze/discover/search-sessions.md': 'explore-analyze/discover/background-search.md'
520521

521522

522523

reference/glossary/index.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,9 @@ $$$glossary-zone$$$ availability zone
7474

7575
## B [b-glos]
7676

77+
$$$glossary-background-search$$$ Background search
78+
: A long-running query that is queued and that runs while you perform other tasks. The results of the background search are stored for a period of time, so you can access it once it has completed. Background searches are user specific. Before {{stack}} 9.2, background searches are called ["search sessions"](#glossary-search-session).
79+
7780
$$$glossary-basemap$$$ basemap
7881
: The background detail necessary to orient the location of a map.
7982

@@ -668,7 +671,7 @@ $$$glossary-scripted-field$$$ scripted field
668671
: A field that computes data on the fly from the data in {{es}} indices. Scripted field data is shown in Discover and used in visualizations.
669672

670673
$$$glossary-search-session$$$ search session
671-
: A group of one or more queries that are executed asynchronously. The results of the session are stored for a period of time, so you can recall the query. Search sessions are user specific.
674+
: A group of one or more queries that are executed asynchronously. The results of the session are stored for a period of time, so you can recall the query. Search sessions are user specific. From {{stack}} 9.2, search sessions are called ["background searches"](#glossary-background-search).
672675

673676
$$$glossary-search-template$$$ search template
674677
: A stored search you can run with different variables. See [Search templates](/solutions/search/search-templates.md).

0 commit comments

Comments
 (0)