Commit graph

5837 commits

Author SHA1 Message Date
Tim Sullivan
f1402d682c
unskip sample_data_apis test: dates (#164112)
## Summary

Closes https://github.com/elastic/kibana/issues/121051

I'm not seeing flakiness in the test suite after enabling all the tests.

Test suite: `test/api_integration/config.js`
Test runs:
*
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/2904
*
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/2917
2023-08-18 16:44:21 -07:00
Julia Rechkunova
110449df5c
[OnWeek][Discover] Allow to fetch more documents on Discover page (#163784)
> [!WARNING]
> Sorry, I had to recreate the PR
https://github.com/elastic/kibana/pull/157241
> Please submit your review again.

- Closes https://github.com/elastic/kibana/issues/155019

Per docs
https://www.elastic.co/guide/en/elasticsearch/reference/current/paginate-search-results.html
<img width="851" alt="Screenshot 2023-05-10 at 10 25 20"
src="b4b9fef4-7dd8-40ed-8244-343889fc4367">


## Summary

1. This PR improves `search_after` pagination for `date_nanos` time
fields. `sort` value will be returned from ES as a string instead of a
rounded and incorrect timestamp. This change allows to also simplify
logic on Surrounding document page.

Before:
<img width="400" alt="Screenshot 2023-05-08 at 17 36 19"
src="fd9f45c4-5dc2-4103-83b9-8810e3a6e0df">

After:
<img width="400" alt="Screenshot 2023-05-08 at 17 37 13"
src="fe9090c0-2116-4f77-9a57-a96ae6b00365">

2. Also in this PR we now allow users to load more documents within the
same time range. Once the button is pressed, it will load next portion
of documents (same "sampleSize" value will be used). Currently, we limit
max total loaded documents to 10000.

"Load more" demo:
![Aug-07-2023
16-23-28](53af9809-75cb-4b8a-8e99-d8f6d76b4981)

If refresh interval is on, the button becomes disabled:
![Aug-07-2023
16-24-58](85db6144-98eb-40b5-ac88-80ea728bcd6b)

Date nanos demo:
![Aug-07-2023
16-34-59](dc9fe0b1-e419-4c76-9fc6-79907b134e58)


100x Flaky test runner
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/2801

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-08-17 20:31:21 +02:00
Julia Rechkunova
63da51dc66
[Discover] Split a drag & drop test into 2 tests (#164149)
- Closes https://github.com/elastic/kibana/issues/163979
- Closes https://github.com/elastic/kibana/issues/163980

It was adding both fields too fast.
100x
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/2908
2023-08-17 16:57:59 +02:00
Drew Tate
276cf86858
[Event annotations] add types to integration tests (#164103) 2023-08-17 09:17:25 -05:00
Hannah Mudge
75d27adffc
[Controls] Migrate range slider to EuiDualRange and make styling consistent across all controls (#162651)
Closes https://github.com/elastic/kibana/issues/140135
Closes https://github.com/elastic/kibana/issues/159724

## Summary

### Changes to range slider

This PR migrates the range slider control to use the `EuiDualRange`
component, which both (a) removes a bunch of range slider code , thus
improving DX, and (b) improves the usability of the control by
simplifying the different states and making the slide animation much
smoother:

| Before | After |
|--------|--------|
| ![Aug-02-2023
09-19-26](08efbfb8-3aff-4c44-acb3-79442d3fc831)
| ![Aug-03-2023
09-10-30](8f62936f-c15d-4ede-9925-d1b314c7a9c9)
|

Note that, due to the fact that migrating to the `EuiDualRange`
component means we no longer control the opening/closing of the popover,
this makes the "selections that extend beyond the current min/max of the
data" scenario slightly more difficult to handle. Specifically, we need
to decide the best time to recalculate the min/max of the slider as the
user's selections change.

The benefit of having control over the popover opening and closing was
that we could calculate the range slider's min/max values **when the
popover opened** and lock them in place so that they stayed static as
the user dragged:


<div align="center"><img width="500px"
src="1bf552d4-e70e-41ce-bf85-ab9ed0262398"
/></div><br/>


However, because the `EuiDualRange` handles the behaviour of the popover
and we therefore do not know when it opens/closes, it is not currently
possible to fully replicate this old behaviour. We have two main
options:
1. Recalculate the min/max of the range slider the user drags, which
gives a "sliding" effect:
    
<div align="center"><img width="500px"
src="4bb32b22-990e-40e9-a7df-78afca16bd27"
/></div>

2. Debounce this min/max calculation - with this, we avoid the "sliding"
effect shown above, and the min/max values **only get adjusted** when
the pin has been static for a long enough period of time (specifically,
`750ms`) or when the pin is dropped (i.e. the user lets go of the
mouse):

<div align="center"><img width="500px"
src="ac8943e6-4bcc-42dd-8cbb-1cdb627ba9f2"
/></div>


Ultimately, I went with option 2 in this PR. As a future enhancement, we
could replicate the old behaviour by adding some sort of
`onPopoverClosed` or `onPopoverOpened` logic to the `EuiDualRange`
component - however, this would need discussion with the EUI team to
ensure that this is the best way to handle it and not too specific to
our use case. Since EUI changes take awhile to propagate to KIbana, it's
not worth holding up this PR even further.

### Consistency with other control types

To keep things consistent, this PR also switches both the options list
and time slider controls to use the `EuiInputPopover` component and
removes the redundant control titles from the popover header:

| Before | After |
|--------|--------|
|
![image](dce0fc28-0714-48ce-a6df-3aed2e9749d8)
|
![image](0619a19a-073f-4d2e-ae40-1d77e9f9a7ae)
|
|
![image](c7ff43ba-b94f-402a-b61a-ee238065acb4)
|
![image](07e95ef5-5db8-490e-9bc8-7f9df4513da5)
|
|
![image](20a30dd9-2f0c-49f5-a035-37f827c5c1a2)
|
![image](64acea5a-5120-4d88-bac3-14f45be98b0d)
|

### Checklist

- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [x] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
- [x] Any UI touched in this PR does not create any new axe failures
(run axe in browser:
[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
- Technically, it does - but this will be resolved by the
@elastic/eui-team team adding an `aria-label` to the thumb `div`s
(https://github.com/elastic/eui/issues/7035). This is purely for the
sake of axe and/or automated `a11y` testing - it does not actually
impact `a11y` of the range slider, because the components missing an
`aria-label` are never accessible via the keyboard.
- [x] This renders correctly on smaller devices using a responsive
layout. (You can test this [in your
browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
- [x] This was checked for [cross-browser
compatibility](https://www.elastic.co/support/matrix#matrix_browsers)

### For maintainers

- [ ] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

---------

Co-authored-by: Jatin Kathuria <jatin.kathuria@elastic.co>
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-08-16 11:27:14 -06:00
Drew Tate
08a48f3cf1
[Lens] allow removing ad-hoc data view from event annotation group (#163976) 2023-08-16 10:24:15 -05:00
Jean-Louis Leysens
a00c2401e2
[HTTP] Add build number to headers so that we can identify UIs (#163577)
Close https://github.com/elastic/kibana/issues/162332

### List

- [x] Add E2E test

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-08-16 16:05:57 +02:00
Kibana Machine
7bdb53bada skip failing test suite (#159194) 2023-08-15 14:46:53 -04:00
Yulia Čech
3efc0a7c45
[Index Management] Add an index details page behind a dev feature flag (#163521)
## Summary
This PR adds a dev feature flag
`xpack.index_management.dev.enableIndexDetailsPage` that will allow us
to build out the new index details page in small iterations. Without the
flag, the UI of Index Management is not changed. A skeleton component is
created for the details page (see screenshot below).

### How to test
1. Test the Index Management UI (Indices tab) without the flag and check
that no changes were introduced
1. Add `xpack.index_management.dev.enableIndexDetailsPage: true` to the
file `/config/kibana.dev.yml`
2. Navigate to the Indices tab in Index Management, toggle "hidden
indices" if no indices exist and click any index name
3. Check that the new index details page is displayed
4. Check that the tabs on the page are working

### Screenshots 
<img width="1209" alt="Screenshot 2023-08-09 at 19 17 46"
src="e654ef36-ccf3-40a4-8c7b-750b83defef5">

### Checklist

Delete any items that are not applicable to this PR.

- [ ] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [ ] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [ ] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
- [ ] Any UI touched in this PR does not create any new axe failures
(run axe in browser:
[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
- [ ] If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
- [ ] This renders correctly on smaller devices using a responsive
layout. (You can test this [in your
browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
- [ ] This was checked for [cross-browser
compatibility](https://www.elastic.co/support/matrix#matrix_browsers)


### Risk Matrix

Delete this section if it is not applicable to this PR.

Before closing this PR, invite QA, stakeholders, and other developers to
identify risks that should be tested prior to the change/feature
release.

When forming the risk matrix, consider some of the following examples
and how they may potentially impact the change:

| Risk | Probability | Severity | Mitigation/Notes |

|---------------------------|-------------|----------|-------------------------|
| Multiple Spaces&mdash;unexpected behavior in non-default Kibana Space.
| Low | High | Integration tests will verify that all features are still
supported in non-default Kibana Space and when user switches between
spaces. |
| Multiple nodes&mdash;Elasticsearch polling might have race conditions
when multiple Kibana nodes are polling for the same tasks. | High | Low
| Tasks are idempotent, so executing them multiple times will not result
in logical error, but will degrade performance. To test for this case we
add plenty of unit tests around this logic and document manual testing
procedure. |
| Code should gracefully handle cases when feature X or plugin Y are
disabled. | Medium | High | Unit tests will verify that any feature flag
or plugin combination still results in our service operational. |
| [See more potential risk
examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) |


### For maintainers

- [ ] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-08-15 04:11:54 -07:00
Marius Dragomir
0aaf842353
[QA] Change "contains" text for Dev Console CCS test (#163814)
## Summary

This is a fix for the flaky test
https://github.com/elastic/kibana/issues/163365 that checks Dev Console
with CCS. Before we were looking for the response to the query to
contain `extension: jpg` which might or might not show up in the
viewport based on the logstash data ingested (some of the documents have
a multi-line `message` field that will scroll everything else out of the
viewport).
<img width="1210" alt="test"
src="729f4645-db48-46bc-8376-aee8602ef500">

With the change we're looking for the `_index` metafield which can also
confirm that the search worked and it returned results from a remote
cluster. There shouldn't be any instance of it not showing up in the
viewport since it's one of the first fields in a search hit.
2023-08-14 10:19:45 -07:00
Alejandro Fernández Haro
261186313e
[Flaky test #131192] HTTP SSL Redirects (#163726) 2023-08-14 09:48:45 -07:00
Alison Goryachev
97f44c1e50
[Index Management] Disable legacy index templates (#163518) 2023-08-14 10:40:16 -04:00
Alejandro Fernández Haro
0284cc158d
[Telemetry] Use header-based versioned APIs instead of path-based (#159839) 2023-08-12 14:20:06 -07:00
Matthew Kime
cafaa9295e
[data views] swap_references api improvements (#163225)
## Summary

Some simple dev UX improvements to the swap_references data views api - 

```
POST /api/data_views/swap_references/_preview
{
     "fromId" : "abcd-efg",
     "toId" : "xyz-123"
}

returns 
{
  result: [{ id: "123", type: "visualization" }],
}
```


```
POST /api/data_views/swap_references
{
     "fromId" : "abcd-efg",
     "toId" : "xyz-123",
     "delete" : true // optional, removes data view which is no longer referenced
}

returns 
{
  result: [{ id: "123", type: "visualization" }],
  deleteStatus: {
    remainingRefs: 0,
    deletePerformed: true
}
```

Additional params - 

```
fromType: string - specify the saved object type. Default is `index-pattern` for data view
forId: string | string[] - limit the affected saved objects to one or more by id
forType: string - limit the affected saved objects by type
```

Improves upon https://github.com/elastic/kibana/pull/157665

Docs will be created in follow up PR
2023-08-11 20:56:46 -05:00
Marco Antonio Ghiani
aa45152a4e
[FTR] Implement browser network condition utils (#163633)
## 📓 Summary

The PR implements some utilities into the `browser` service to allow
controlling the network conditions during the execution of a functional
test.

### `getNetworkConditions`

Returns the current network simulation options. If none conditions are
previously set, it returns `undefined`

**N.B.**: _if the testing environment is not a Chromium browser, it
throws an error that can be easily caught to manually skip the test or
handle a fallback scenario._


```ts
it('should display a loading skeleton while loading', async function () {
  // Skip the test in case network condition utils are not available
  try {
    const networkConditions = await browser.getNetworkConditions(); // undefined

    await browser.setNetworkConditions('SLOW_3G');

    const networkConditions = await browser.getNetworkConditions();
    // {
    //   offline: false,
    //   latency: 2000,
    //   download_throughput: 50000,
    //   upload_throughput: 50000,
    // }
  } catch (error) {
    this.skip();
  }
});
```

### `setNetworkConditions`

Set the desired network conditions.
It supports different presets that match the [network profiles provided
by Chrome
debugger](da276a3fae/front_end/core/sdk/NetworkManager.ts (L363-L393)):
- `NO_THROTTLING`
- `FAST_3G`
- `SLOW_3G`
- `OFFLINE`
- `CLOUD_USER` (pre-existing)
It also accepts ad-hoc options to configure more specifically the
network conditions.

**N.B.**: _if the testing environment is not a Chromium browser, it
throws an error that can be easily caught to manually skip the test or
handle a fallback scenario._

```ts
it('should display a loading skeleton while loading', async function () {
  // Skip the test in case network condition utils are not available
  try {
    await browser.setNetworkConditions('NO_THROTTLING');
    await browser.setNetworkConditions('FAST_3G');
    await browser.setNetworkConditions('SLOW_3G');
    await browser.setNetworkConditions('OFFLINE');
    await browser.setNetworkConditions('CLOUD_USER');
    await browser.setNetworkConditions({
      offline: false,
      latency: 5, // Additional latency (ms).
      download_throughput: 500 * 1024, // Maximal aggregated download throughput.
      upload_throughput: 500 * 1024, // Maximal aggregated upload throughput.
    });
  } catch (error) {
    this.skip();
  }
});
```

### restoreNetworkConditions

Restore the original network conditions, setting to `NO_THROTTLING`.
The native implementation of `deleteNetworkConditions` exposed by
selenium is unofficial and didn't consistently work, the recommended
approach by the google dev tools team is to restore the connection
setting the no throttling profile.

**N.B.**: _if the testing environment is not a Chromium browser, it
throws an error that can be easily caught to manually skip the test or
handle a fallback scenario._

```ts
it('should display a loading skeleton while loading', async function () {
  // Skip the test in case network condition utils are not available
  try {
    await browser.setNetworkConditions('SLOW_3G'); // Slow down network conditions
    
    // Do your assertions

    await browser.restoreNetworkConditions(); // Restore network conditions
  } catch (error) {
    this.skip();
  }
});
```

Co-authored-by: Marco Antonio Ghiani <marcoantonio.ghiani@elastic.co>
Co-authored-by: Dzmitry Lemechko <dzmitry.lemechko@elastic.co>
2023-08-11 14:24:06 +02:00
Yulia Čech
39e11ffbac
[Index Management] Disable index actions using contextRef (#163475)
## Summary
Follow up to https://github.com/elastic/kibana/pull/161528 

This PR leverages the [schema.contextRef('serverless')
check](https://www.elastic.co/guide/en/kibana/master/configuration-service.html#validating-your-configuration-based-on-context-references)
to prevent the config `enableIndexActions` from leaking to self-managed.

### Screenshots
Stateful (no changes), index actions enabled

<img width="916" alt="Screenshot 2023-08-09 at 12 15 31"
src="527ce600-8758-44b4-bd41-c93723254646">

Serverless (no changes), index actions disabled

<img width="622" alt="Screenshot 2023-08-09 at 12 09 45"
src="80190375-6cea-445d-8a75-3b354a447e9d">
2023-08-10 13:42:49 +01:00
Dzmitry Lemechko
072ad967fc
[FTR] unskip tsvb time series tests for Chrome (#163510)
## Summary

Related to #162995

This PR unskip TSVB tests for Chrome browser since it is proved to be
stable

https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/2836
100x passed

https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/2835
100x passed
On Firefox the flakiness is related to Terms 2nd aggregation field
sometimes is not selected. I tested it manually in Firefox 116 and was
able to set fields, though I have a feeling that values are not always
selected on click in the drop-down. But I didn't see any errors in
console.

I also returned back retry for dropdown selection I removed in #161202
though flaky-test-runner proves there is no need. Let's have just to
keep logic as before my PR.
2023-08-10 09:17:12 +02:00
Gloria Hornero
5b51022303
[Security Solution] Removing discontinued Cypress tests and code (#163496) 2023-08-09 20:18:57 +02:00
Janki Salvi
dc949ee373
[Cases] Hide cases in stack management UI (#163037)
## Summary

fixes https://github.com/elastic/kibana/issues/160337

This PR 
- hides cases in the serverless Elasticsearch project, cases APIs throw
error
- throws 403 from API when `owner=cases` for security or observability
serverless mode
- verifies the behaviour in serverless functional as well as
api_integration tests

**How to test**

- Boot up `es` serverless solution and make sure that `cases` from the
navbar is hidden and cannot not be accessible through url as well
- Boot up `observability` or `security` serverless solutions and make
sure that `cases` is available in the navbar and works fine
- Boot up classic kibana and make sure that the left navbar has the same
menu entries it always had.

### Checklist

Delete any items that are not applicable to this PR.

- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios



20c1974e-44f0-45b0-80aa-e644fec148ff

### For maintainers

- [x] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-08-09 17:52:36 +02:00
Hannah Mudge
fd28152348
[Dashboard] Unskip failing embed_mode screenshot test (#163424)
Closes https://github.com/elastic/kibana/issues/163207

## Summary

Since Chrome was updated in the CI environment, our old CI-generated
screenshots were outdated - this PR updates the `embed_mode` screenshot
tests so that we are once again in sync with the CI environment.

For more context, please refer to
https://github.com/elastic/kibana/pull/160085

### Checklist

- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios

### For maintainers

- [ ] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
2023-08-09 08:24:03 -06:00
Stratoula Kalafateli
4fc9906c17
[TSVB] Unskip tsdb tests (#163471)
## Summary

Closes https://github.com/elastic/kibana/issues/163454

Now ES doesnt error out for average aggregation in counter fields. So we
can remove the test for this scenario
2023-08-09 13:16:02 +02:00
Tiago Costa
31823608f0
skip failing es promotion suite (#163454) 2023-08-09 02:34:08 +01:00
Kibana Machine
727d58f7ee skip failing test suite (#162995) 2023-08-08 14:29:25 -04:00
Anton Dosov
304cb256cf
Make SavedObjectFinder backward compatible (#162904)
## Summary

close https://github.com/elastic/kibana/issues/161545
close https://github.com/elastic/kibana/issues/153257

This PR makes `SavedObjectFinder` component backward compatible. It is
achieved by going through content- management layer, more technical
details
[here](https://docs.google.com/document/d/1ssYmqSEUPrsuCR4iz8DohkEWekoYrm2yL4QR_fVxXLg/edit)

### Testing

`SavedObjectFinder` is this component that allows to pick a saved object
(supports: `search` `index-pattern` `map` `visualization` `lens`
`event-annotation-group`:

![Screenshot 2023-08-07 at 16 53
32](5c283ea5-3682-4dc8-a8ff-422e6f4f3195)


It is used in the following places: 

- Dashboard 
  - Add panel
  - Replace panel 
- Discover - Open Search 
- Visualization - Select search as a source for new viz
- Graph - select source
- Cases - markdown editor add lens 
- ML (3 places) 
- Canvas - select embeddable panel 
- Transform 
- Lens > select event annotation 




### Risks / Follow up 

The `SavedObjectFinder` should stay mostly the same, the only notable
functional change is that now `SavedObjectFinder` doesn't support
`includeFields` which allowed partial saved object returns, this was
done to make the call backward-compatible without making the system even
more complicated as otherwise we'll need a way to abstract
`includeFields` from so attributes and allow to run migrations on it
before making a search. follow up issue to bring it back
https://github.com/elastic/kibana/issues/163043

The risk with that is that some client that have a lot of large objects
might run into performance issues when using `SavedObjectFinder`. This
can be mitigated by changing listing limit in advanced setting from
default 1000 to something lower
2023-08-08 13:10:29 +02:00
Miriam
adb9573cb2
Revert "[APM] Add index.fast_refresh to .apm-custom-link" (#163142)
Reverts elastic/kibana#159674

The Elasticsearch team has changed their guidance about `fast_refresh`
and want this setting to be applied from within an Elasticsearch plugin
2023-08-08 08:34:48 +01:00
Tiago Costa
4ccfb84e1e
skip failing es promotion suites (#163365) 2023-08-08 00:19:40 +01:00
Catherine Liu
dbe8852e57
[Dashboard][Content Editor] Edit title, description, and tags from dashboard listing page (#161399)
## Summary

Closes #144481.
Closes #160256.

This enables content editor in dashboard to allow users to edit the
title, description, and tags from the listing page.


c2212882-43e3-45cb-83fc-493860857019

The only validation added to this flyout is the duplicate title check. I
used the same warning message as the visualize listing page.

<img width="600" alt="Screenshot 2023-07-06 at 2 11 38 PM"
src="42f7244a-1c4d-47ec-8f66-a98a63eff473">

### Checklist

Delete any items that are not applicable to this PR.

- [ ] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [ ] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [ ] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
- [ ] Any UI touched in this PR does not create any new axe failures
(run axe in browser:
[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
- [ ] If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
- [ ] This renders correctly on smaller devices using a responsive
layout. (You can test this [in your
browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
- [ ] This was checked for [cross-browser
compatibility](https://www.elastic.co/support/matrix#matrix_browsers)


### Risk Matrix

Delete this section if it is not applicable to this PR.

Before closing this PR, invite QA, stakeholders, and other developers to
identify risks that should be tested prior to the change/feature
release.

When forming the risk matrix, consider some of the following examples
and how they may potentially impact the change:

| Risk | Probability | Severity | Mitigation/Notes |

|---------------------------|-------------|----------|-------------------------|
| Multiple Spaces&mdash;unexpected behavior in non-default Kibana Space.
| Low | High | Integration tests will verify that all features are still
supported in non-default Kibana Space and when user switches between
spaces. |
| Multiple nodes&mdash;Elasticsearch polling might have race conditions
when multiple Kibana nodes are polling for the same tasks. | High | Low
| Tasks are idempotent, so executing them multiple times will not result
in logical error, but will degrade performance. To test for this case we
add plenty of unit tests around this logic and document manual testing
procedure. |
| Code should gracefully handle cases when feature X or plugin Y are
disabled. | Medium | High | Unit tests will verify that any feature flag
or plugin combination still results in our service operational. |
| [See more potential risk
examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) |


### For maintainers

- [ ] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-08-07 15:47:32 -07:00
Nathan Reese
36f260593e
unskip Failing test: Dashboard Elements - Controls tests.test/functional/apps/dashboard_elements/controls/common/control_group_chaining·ts - Controls Dashboard control group hierarchical chaining Creating "does not exist" query from first control filters the second and third controls (#163350)
Closes https://github.com/elastic/kibana/issues/162777

flaky test runner
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/2811

Failure image shows options list is still open. PR updates
optionsListEnsurePopoverIsClosed with logic to prevent 2 possible issues
1) retry added to ensure missed click will attempt to close options list
again
2) check options list is open before clicking. This will resolve issue
where options list is closed and clicking actually opens it again


![image](06a6673c-e92f-4a45-8910-8a0a1a7c5776)

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-08-07 15:57:37 -06:00
Anton Dosov
1047eef005
Update Project Selection in Serverless Top Navigation (#163076)
## Summary

close https://github.com/elastic/kibana/issues/163014

- Changing `My Deployments -> Projects`
- Removing hardcoded url and passing one from the config
2023-08-07 16:18:35 +02:00
Youhei Sakurai
f9a5babb12
Fixes TCP server's host for Firefox WebDriver to IPv4 loopback address (#163288)
Closes #163281

## Summary

This PR forces TCP server to listen on `127.0.0.1`, which helps to avoid
`EADDRNOTAVAIL` error on IPv6 during Firefox WebDriver's initialization.

### For maintainers

- [x] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
2023-08-07 22:06:47 +09:00
Dzmitry Lemechko
8e1d66fab6
[FTR] use xpath locator to find particular element in group by index (#161202)
Related to #158972

I was able to reproduce the failure locally on the latest main with a
small code change:


b3d7b71076/test/functional/page_objects/visual_builder_page.ts (L867-L869)

```
             | debg comboBox.isOptionSelected, value: machine.os.raw
             │ info Taking screenshot "/Users/dmle/github/kibana/test/functional/screenshots/failure/visualize app visual builder Time Series basics Clicking on the chart should cre-a71516dab48cdb296c45e2b439ed3965cfd400204827bba7ce3cf4719afb093b.png"
             │ info Current URL is: http://localhost:5620/app/visualize#/create?type=metrics&_g=(filters:!(),refreshInterval:(pause:!t,value:60000),time:(from:%272015-09-19T06:31:44.000Z%27,to:%272015-09-22T18:31:44.000Z%27))&_a=(filters:!(),linked:!f,query:(language:kuery,query:%27%27),uiState:(),vis:(aggs:!(),params:(axis_formatter:number,axis_position:left,axis_scale:normal,drop_last_bucket:1,id:b6ee5181-addb-436f-8190-4f2a178fee7b,index_pattern:(id:%27logstash-*%27),interval:%27%27,isModelInvalid:!f,max_lines_legend:1,series:!((axis_position:right,chart_type:line,color:%2368BC00,fill:0.5,formatter:default,id:%2724f639d7-d16e-44d1-ac0d-f2b590e94e8e%27,line_width:1,metrics:!((id:d4f68ace-b844-4e00-933f-8c3b49e19067,type:count)),override_index_pattern:0,palette:(name:default,type:palette),point_size:1,separate_axis:0,series_drop_last_bucket:0,split_mode:terms,stacked:none,terms_field:!(bytes,machine.os.raw),time_range_mode:entire_time_range)),show_grid:1,show_legend:1,time_field:%27%27,time_range_mode:entire_time_range,tooltip_mode:show_all,truncate_legend:1,type:timeseries,use_kibana_indexes:!t),title:%27%27,type:metrics))
             │ info Saving page source to: /Users/dmle/github/kibana/test/functional/failure_debug/html/visualize app visual builder Time Series basics Clicking on the chart should cre-a71516dab48cdb296c45e2b439ed3965cfd400204827bba7ce3cf4719afb093b.html
             └- ✖ fail: visualize app visual builder Time Series basics Clicking on the chart should create a filter for series with multiple split by terms fields one of which has formatting
             │      StaleElementReferenceError: stale element reference: stale element not found
             │   (Session info: chrome=114.0.5735.198)
             │       at Object.throwDecodedError (node_modules/selenium-webdriver/lib/error.js:524:15)
             │       at parseHttpResponse (node_modules/selenium-webdriver/lib/http.js:601:13)
             │       at Executor.execute (node_modules/selenium-webdriver/lib/http.js:529:28)
             │       at runMicrotasks (<anonymous>)
             │       at processTicksAndRejections (node:internal/process/task_queues:96:5)
             │       at Task.exec (prevent_parallel_calls.ts:28:20)
```

### Do we have any service to help with StaleElementReferenceError
handling in FTR?

We do. `WebElementWrapper` object have internal mechanism to handle it:
we wrap most of the actions (click, type, getAttribute, etc.) with
`retryCall` function, which execute command up to RETRY_MAX_ATTEMPTS
times (3 by default) and check for errors. So if we try to click element
that is no longer in the DOM, this mechanism will try to find the
element in the DOM again, assuming it is still there but referenceId was
changed due to page updates. And repeat the click.

https://github.com/elastic/kibana/blob/main/test/functional/services/lib/web_element_wrapper/web_element_wrapper.ts#L107-L140

You might notice a warning during timePicker dates selection
```
           │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteTab"]') with timeout=10000
           │ warn WebElementWrapper.click: StaleElementReferenceError: stale element reference: stale element not found
           │        (Session info: chrome=114.0.5735.198)
           │ debg Searching again for the element 'By(css selector, [data-test-subj="superDatePickerAbsoluteTab"])',
           | 2 attempts left
```
It is helping a lot to minimize the flakiness.

### Why does FTR still fails with StaleElementReferenceError in
Visualize tests?
Because most methods use the same pattern for searching elements in the
DOM: get all elements and then pick one by index.

```
const byFields = await this.testSubjects.findAll('fieldSelectItem');
const selectedByField = byFields[byFields.length - 1];
await this.comboBox.setElement(selectedByField, field);
```

The problem is that WebElementWrapper retry mechanism relies on having
`locator` property defined and it is _only_ defined if you search for a
single element, e.g. `testSubjects.find` or `by.byCssSelector`. This
property is set to `null` for each `WebElementWrapper` object in array
you get from `await this.testSubjects.findAll('fieldSelectItem')`;
So when we pass this object in `this.comboBox.setElement` and go through
a list of actions, it will fail on the first StaleElementReferenceError
occurrence.

The devil is in the detail: usually searching for multiple elements and
doing actions on some of it is totally fine. But comboBox selection has
quite many actions with different child elements, that can be updated in
DOM and lead to the error. Wrapping things with classical `retry`
service only hides the issue, but does not actually solve it.

### Proposed solution
Afaik CSS locators does not support searching for elements and picking
up one by index (I looked at `:nth-child()
`, but it is not what we need).
But we can use xpath locators for this purpose. 
```
const selectedByField = await this.find.byXPath(`(//*[@data-test-subj='fieldSelectItem'])[last()]`);
await this.comboBox.setElement(selectedByField, field);
```

This way `selectedByField` has locator property defined and internal
mechanism will be able to retry actions.

#### Why don't we store `locator` for multiple elements search.
We can, but it means every element in array has the same locator and
while retrying to find it WebDriver will return the first one in the DOM
ignoring the element index. Using xpath locator is basically the simpler
version of storing element index in WebElementWrapper object.

Flaky test runner: 50x for visualize/group1..5/config.ts
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/2554

100x for group5
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/2596#0189403c-ccd2-4186-a83e-af21fe88018c

100x flaky test runner
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/2794
2023-08-07 04:39:29 -07:00
Dzmitry Lemechko
585d108db7
[ftr/WebElementWrapper] workaround for chromedriver incorrect error response (#163231)
Related to #156821

It seems like Chromedriver 115 has regression again: sometimes it
returns NoSuchElementError instead of StaleElementReferenceError.
[chromedriver/issues#534](https://bugs.chromium.org/p/chromedriver/issues/detail?id=4534)

The fix on our side is by adding error message to retry list. The list
references the errors we would like to retry command on. It only work
for single element search where we store locator.
E.g. it will help with retrying on

```
await testSubjects.click('...');
```

but still fail when you do

```
const elements = await testSubjects.findAll('...');
await elements[1].click();
```

For viz tests stability I suggest reviewing #161202
2023-08-07 12:32:02 +02:00
Davis McPhee
5aac9c5875
Assign functional tests and example plugins code ownership to Data Discovery (#162740)
## Summary

This PR assigns code ownership to the Data Discovery team for various
functional tests as well as a couple of example plugins. All of the
tests assigned to us in `CODEOWNERS` currently have no one else assigned
to them.

### Checklist

- [ ] ~Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)~
- [ ]
~[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials~
- [ ] ~[Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios~
- [ ] ~Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard
accessibility](https://webaim.org/techniques/keyboard/))~
- [ ] ~Any UI touched in this PR does not create any new axe failures
(run axe in browser:
[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))~
- [ ] ~If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)~
- [ ] ~This renders correctly on smaller devices using a responsive
layout. (You can test this [in your
browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))~
- [ ] ~This was checked for [cross-browser
compatibility](https://www.elastic.co/support/matrix#matrix_browsers)~

### For maintainers

- [ ] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-08-04 17:21:13 -03:00
Kibana Machine
1d38289d6a skip failing test suite (#163207) 2023-08-04 16:16:05 -04:00
Hannah Mudge
3763a5a134
[Controls] [PresentationUtil] QoL improvements to control creation form (#162067)
Closes https://github.com/elastic/kibana/issues/162697

## Summary

This PR adds a few tiny UI improvements to the control creation
elements, including...
  
**Data view picker:**
- Made the `Data view` form title respond to focus as expected
  | <div align="center">Before</div> | <div align="center">After</div> |
  |--------|--------|
| ![Jul-28-2023
15-55-13](c287978d-a54a-4809-a806-5a2caa41cf5d)
| ![Jul-28-2023
15-56-24](8f403c2d-80a5-4fc1-989a-1ecceb056fc9)
|

- Switched to use `EuiInputPopover` rather than `EuiPopover`
- Removed the redundant popover title

  | <div align="center">Before</div> | <div align="center">After</div> |
  |--------|--------|
|
![image](013fc848-3a9a-4280-9b37-6c1f025f3597)
| ![Screenshot 2023-07-28 at 4 16 18
PM](22a2de30-cae1-49d4-9c33-d1537488d08d)
|

**Field picker:**
- Made the `Field` form row title respond to focus as expected for all
of the inner form elements
  | <div align="center">Before</div> | <div align="center">After</div> |
  |--------|--------|
| ![Jul-28-2023
16-06-01](7dd845bc-0476-4b2a-b9b5-efce3c2e2844)
| ![Jul-28-2023
16-07-00](222a9199-e5c2-4180-9501-e31588020855)
|

- Switched the `FieldTypeFilter` to use `EuiInputPopover` rather than
`EuiPopover`
- Removed the redundant title from the `FieldTypeFilter` popover
  | <div align="center">Before</div> | <div align="center">After</div> |
  |--------|--------|
|
![image](007c61db-989b-4615-a36f-5f6307f04aaf)
|
![image](ed7aea0c-d852-4f1c-ae03-14933fa2888a)
|

- Made changes described in
https://github.com/elastic/eui/issues/6627#issuecomment-1452693611 so
that, when the field type filter is closed (either via `Esc` or through
the natural tab order), the focus returns to the search field
  | <div align="center">Before</div> | <div align="center">After</div> |
  |--------|--------|
| ![Jul-28-2023
16-12-58](aea49501-1f61-4ae8-bc90-1bacbbc232e7)
| ![Jul-28-2023
16-13-54](8068b090-9cca-427f-bc36-2b9e6b2324f1)
|

- If provided, the initial selected field is now brought to the top of
the list

  | <div align="center">Before</div> | <div align="center">After</div> |
  |--------|--------|
|
![image](2bdad643-d184-4c80-b940-5a73820dc8a5)
|
![image](cda382e2-0e15-48c0-bdbf-c530a77570b8)
|

**Controls display settings:**

- Surrounded the `Minimum width` row with a `div` so that it can receive
the `id` passed down from the `EuiFormRow` and respond to focus as
expected

  | <div align="center">Before</div> | <div align="center">After</div> |
  |--------|--------|
| ![Jul-28-2023
16-31-56](125d2a75-bcec-452c-8682-85de3a44185b)
| ![Jul-28-2023
16-31-20](935a17f1-4adc-4b86-811b-334a42e4627e)
|


### Checklist

- [x] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
- [x] Any UI touched in this PR does not create any new axe failures
(run axe in browser:
[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
- [x] This renders correctly on smaller devices using a responsive
layout. (You can test this [in your
browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
- [x] This was checked for [cross-browser
compatibility](https://www.elastic.co/support/matrix#matrix_browsers)

### For maintainers

- [ ] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

---------

Co-authored-by: Jatin Kathuria <jatin.kathuria@elastic.co>
2023-08-04 11:07:09 -06:00
Sander Philipse
a4d3c0203f
[Enterprise Search] Update connectors for 8.10 (#162909)
## Summary

This adds native connectors, updates existing connectors, and rebrands
the Enterprise Search tag to Search in the Integrations page.
2023-08-03 07:14:07 -07:00
Kibana Machine
d6a1e20075 skip failing test suite (#162777) 2023-08-03 08:12:13 -04:00
Matthew Kime
d9f5223e2d
[data views] fix renamed field filters (#162860)
## Summary

Field filters (aka source filters) are given a `clientId` when they're
changed. Unfortunately this is missing from the schema which can result
in schema failures.

The schema has been fixed and a functional test has been added that
verifies field filter renaming functionality.

Closes: https://github.com/elastic/kibana/issues/162611

## Release Note

Resolves potential errors present in v8.9.0 with data views that contain
field filters that have been edited.
2023-08-03 05:48:40 -05:00
Anton Dosov
65fd7ad260
Clean up saved object based embeddable examples (#162987)
## Summary

These examples are outdated and don't show recent embeddable best
practices. They also use client-side saved object client and block
making `SavedObjectFinder` backward compatible
https://github.com/elastic/kibana/pull/162904 as the `foobar` saved
objects need to be added to content management. We decided that it is
better to clean them up, as fixing them is not a small effort and it is
not worth it on this point as a large embeddable refactor is coming.
2023-08-03 03:14:36 -07:00
Yulia Čech
fbfd3ed0dd
[Console] Set up a folder for manual definitions files (#162652)
## Summary
Fixes https://github.com/elastic/kibana/issues/162564

This PR adds a new folder to Console server side where manually created
definitions for endpoint will be stored. This is important before we
switch to the new script. The logic in the new script is to clear the
folder with generated definitions before re-generating them. That is not
the case in the current script. The downside of that is when an endpoint
is removed from the specifications, it won't be removed from
autocomplete definitions automatically. Displaying autocomplete
suggestions for unavailable endpoints might be confusing for users.

Currently, the `manual` folder is empty because there were no
definitions present in the folder `generated` that would not be
re-generated if the script would clear the folder and create all
endpoints defined in ES json specs. I first suspected that endpoints
from these 2 PRs (https://github.com/elastic/kibana/pull/162503,
https://github.com/elastic/kibana/pull/158674) would need to be moved to
the manual folder, but the definitions added there manually can be
re-generated using the script.

I also removed several deprecated/deleted/renamed endpoints from the
`generated` folder. Several files in the `overrides` folder needed
renaming and one was deleted as deprecated.

There are also smaller renaming changes in this PR because I think the
code is more difficult to understand when it's using
"spec/specification" and "definition" interchangeably or even together
as "SpecDefinitions". I believe we should use "specification" for the ES
specifications (i.e. the source) and "definitions" or even better
"autocomplete definitions" for the files that are used for Console
autocomplete engine. The renaming is to be continued in follow up PRs.

I also added a unit test file for the SpecDefinitionsService since it
contains a lot of important logic for endpoints such as loading
generated definitions, overrides and manual ones and filtering out
endpoints not available in the current context.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Alison Goryachev <alisonmllr20@gmail.com>
2023-08-02 12:37:06 -04:00
Bhavya RM
3e7b172c81
Unskip a11y skipped tests in console & discover (#162903)
Unskipping a11y skipped tests in console and discover as corresponding
bugs are closed
2023-08-02 08:15:08 -04:00
mohamedhamed-ahmed
0c9afa1442
[Logs+] Add Filter Control Customization Point (#162013)
closes https://github.com/elastic/kibana/issues/158561

## 📝  Summary

This PR adds a new customization point to allow for prepending custom
filter controls to the search bar.
At the moment we are only showing a default namespace filter, once this
is ready we will then check how to provide curated filters per
integration.

##   Testing

1. Make sure to have some documents to different data sets with
different namespace, you can use [this
document](https://www.elastic.co/guide/en/elasticsearch/reference/current/set-up-a-data-stream.html)
as an example
2. Navigate to Discover with the log-explorer profile, `/p/log-explorer`
3. Validate that the new filter control is there
4. Filter using this new control and make sure documents are filtered
out

## 🎥 Demo


6828f62f-dd09-42bd-930c-dd7eaf94958b

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-08-02 10:35:27 +01:00
Dario Gieselaar
f0ebb7097d
[Observability AI Assistant]: Move to new plugin, update design and use connectors (#162243)
This PR makes the following changes:

- Update look & feel of contextual insights (previously called prompts)
according to the new design that is being developed. Some things might
still change, but hopefully not too much.
- Move all the Observability AI Assistant (previously called CoPilot)
code into a separate plugin for better isolation, more specific code
ownership and to solve some circular dependency issues
- Use connectors instead of a kibana.yml setting

Note: for OpenAI, the model is currently hardcoded to `gpt-4` until
https://github.com/elastic/kibana/issues/162204 has been addressed.


557676b6-065a-4b6f-86b2-1f0c2fd5e07e

---------

Co-authored-by: Coen Warmer <coen.warmer@gmail.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-07-28 11:52:00 -04:00
Bena Kansara
5a2b80f8db
Add feature flag for new Threshold Alert details page (#162394)
Resolves https://github.com/elastic/kibana/issues/162393

Adds a new feature flag
`xpack.observability.unsafe.alertDetails.observability.enabled` to
show/hide threshold alert details page until it is ready for GA.
2023-07-27 11:53:29 +02:00
Dzmitry Lemechko
f6a90974e9
[es_archives] add 'auto_expand_replicas: 0-1' in index mappings (#162499)
Currently, if you try loading archive with index mappings not having
replica set into stateless ES, it won't work properly: you will get 503
error on calling `GET <index_name>/_stats`:
```
{
  "error": {
    "root_cause": [
      {
        "type": "no_shard_available_action_exception",
        "reason": null
      }
    ],
    "type": "search_phase_execution_exception",
    "reason": "all shards failed",
    "phase": "query",
    "grouped": true,
    "failed_shards": [
      {
        "shard": 0,
        "index": "indices-stats",
        "node": null,
        "reason": {
          "type": "no_shard_available_action_exception",
          "reason": null
        }
      }
    ]
  },
  "status": 503
}
```
In stateless replica is
[required](https://elastic.slack.com/archives/C037J0RKRAN/p1690218904855299)
in order to perform search requests (the "search shard").

This PR updates index mappings in es_archives with
`"auto_expand_replicas": "0-1"`, in order to be compatible with
stateless ES and so that we can re-use existing data sets rather than
creating new ones.

I checked with Core Team that we should fine to just adapt all mapping
files, but let me know if that doesn't work for you.
The same value is used to create the "real" SO
[indices](c79c09c3d0/packages/core/saved-objects/core-saved-objects-migration-server-internal/src/actions/constants.ts (L21))
in Kibana.
2023-07-26 14:30:54 +01:00
Marco Antonio Ghiani
9bae853586
[Logs+] Add Log Explorer profile deep link (#161939)
Co-authored-by: Marco Antonio Ghiani <marcoantonio.ghiani@elastic.co>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: weltenwort <stuermer@weltenwort.de>
2023-07-24 21:23:58 +02:00
Gerard Soldevila
c3a5da8825
[FTR - esArchiver] Update encrypted_saved_objects_api_integration test archives to reduce flakiness (#162321)
## Summary

Part of https://github.com/elastic/kibana/issues/161882

Updates all archives of the `encrypted_saved_objects_api_integration`
test suite:
* Removing SO index definitions.
* Updating documents defined in `data.json`.
2023-07-24 12:33:42 -04:00
Gerard Soldevila
59450f0a22
[FTR - esArchiver] Update saved_objects_management test archives to reduce flakiness (#162259)
## Summary

Part of https://github.com/elastic/kibana/issues/161882

Updates all archives of the
`test/functional/fixtures/es_archiver/saved_objects_management` test
suite:
* Removing SO index definitions.
* Updating documents defined in `data.json`.
2023-07-24 10:11:39 +02:00
Gerard Soldevila
2e15549b58
[FTR - esArchiver] Update the remaining "dynamic" archives, removing mappings.json (#162029)
## Summary

Part of https://github.com/elastic/kibana/issues/161882

- Updates the remaining "dynamic" es archives (aka those using the
`$KIBANA_PACKAGE_VERSION` variable), deleting mappings.json.
- It also removes the piece of logic in `esArchiver` that replaces that
variable.
2023-07-19 17:43:00 +02:00
Lukas Olson
13372c91ce
[data] Use versioned router for remaining routes (#161919)
## Summary

Uses the versioned router for the remaining routes in the data plugin:
KQL telemetry (opt-in stats), and scripting languages list.

### Checklist

- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
2023-07-18 14:40:11 -07:00