Commit graph

46750 commits

Author SHA1 Message Date
Dmitry Tomashevich
158b396ae1
[Discover] Fix navigation to a new from saved search and saved query, fix discover:searchOnPageLoad (#112262)
* [Discover] fix saved search become active

* [Discover] add another fix to be consistent with data fetching code

* [Discover] simplify solution

* [Discover] add functionals

* [Discover] fix saved query bug, add functionals

* [Discover] fix functionals

* [Discover] fix functional test

* [Discover] split saved query tests

* [Discover] preselect logstash index pattern

* [Discover] remove saved query after test complete

* [Discover] change query fill order

* [Discover] try to fix unrelated functional test

* [Discover] one more fix

* [Discover] try to fix one more problem

* [Discover] fix commonly used time range test

* [Discover] revert uisettings init in before statement, do small adjustments

* [Discover] fix unit test

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-05 14:08:54 +03:00
Marco Liberati
35e9f6ad6b
🐛 fix duplicate suggestion issue + missing over time (#113449)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-05 12:45:56 +02:00
Stratoula Kalafateli
1e7d4e1adf
[Lens] Unskips the heatmap functional tests suite (#113728)
* Stabilizes the lens heatmap functional tests

* Uncomment

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-05 13:32:28 +03:00
Jen Huang
a2ac439f56
[Fleet] Remove enterprise license requirement for custom registry URL (#113858) 2021-10-05 11:58:01 +02:00
Liza Katz
b62566da33
[ci-stats] Collects additional timings for cli tools (#113030)
* [ci-stats] Collects additional metrics about bootstrap

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>

* test reporting

* [ci-stats] Collects additional metrics about bootstrap

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>

* Move ts timing to build_ts_refs_cli script

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>

* Add timings to run

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>

* info debug level

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>

* fix build

* Move report function to dev-utils
align name of tests
report from functional test runner

* report snapshot install \ ready times
fix event names

* Report memory usage and branch hash

* fix eslint

* fix integration test

* build

* mergy merge

* mergy merge 2

* eslint

* eslint

* ready events

* Update packages/kbn-es/src/cli_commands/snapshot.js

Co-authored-by: Tyler Smalley <tylersmalley@gmail.com>

* Update packages/kbn-es/src/cluster.js

Co-authored-by: Tyler Smalley <tylersmalley@gmail.com>

* Update packages/kbn-es/src/cli_commands/snapshot.js

Co-authored-by: Tyler Smalley <tylersmalley@gmail.com>

* Update packages/kbn-test/src/functional_tests/cli/start_servers/cli.js

Co-authored-by: Tyler Smalley <tylersmalley@gmail.com>

* Update src/dev/run_check_published_api_changes.ts

Co-authored-by: Tyler Smalley <tylersmalley@gmail.com>

* Update packages/kbn-test/src/jest/run.ts

Co-authored-by: Tyler Smalley <tylersmalley@gmail.com>

* Update src/dev/run_i18n_check.ts

Co-authored-by: Tyler Smalley <tylersmalley@gmail.com>

* Update packages/kbn-test/src/functional_test_runner/cli.ts

Co-authored-by: Tyler Smalley <tylersmalley@gmail.com>

* code review

* pm

* merge

* dist

* jest fix

Co-authored-by: Tyler Smalley <tyler.smalley@elastic.co>
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Tyler Smalley <tylersmalley@gmail.com>
2021-10-05 12:57:40 +03:00
Cristina Amico
ae7a6cffeb
[Fleet] Set code editor height to solve an overlap in default policy settings (#113763) 2021-10-05 11:50:52 +02:00
Gloria Hornero
723370ab23
Refactor (#113699)
* refactors timeline test

* tries to remove flakiness on indicator match test

* fixes issues

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-05 09:52:31 +01:00
Shahzad
00bb59713e
[Uptime] Annotate waterfall chart with additional metrics (#103642)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-05 09:13:14 +02:00
Mat Schaffer
dbad35f1cc
Apm pages (#113716)
* Apm overview page

* APM instances page

* Add APM instance page

* Add ignores on js components

* One more ts-ignore
2021-10-05 08:16:21 +02:00
Scotty Bollinger
8f7dd3f5cb
[Workplace Search] Add read views for Source Sync Scheduling (#113199)
* Add constants

Placeholders in place whle content is being written

* Update mock to match API and add types

The weird typing around `DaysOfWeek` was taken from this SO answer to get an array from a union type:

https://stackoverflow.com/a/45486495/1949235

* Add routes and stubbed docs urls

* Add components for list items

These components are the repeatable components in each of the frequency tabs.

- FrequencyItem
- BlockedWindowItem

Form changes methods are stubbed for now.

* Add tab components for Frequency page

* Add Frequency page component

* Add synchronization logic

This is just the basics. More will be added in a future PR

* Add Synchronization op-level page

* Add Synchronization router and subnav

* Add `Objects and assets` page stub

This is merely a placeholder page so the routes could be built out. Section will be moved from settings in a future PR

* Add name and new nav item to source sub nav

* Add SynchronizationRouter nav to Source router

* Fix a couple of typos

* Add callout and disable subnav for disabled sync

This was added to the API after the rest of the work was done, so adding it here.

https://github.com/elastic/workplace-search-team/issues/2043

* Update frequency item to account for edge case

There was a very long discussion about the edge case that is covered here.

https://github.com/elastic/ent-search/pull/4715

Basically here is what we landed on:

In most cases, the user will use the form to set the sync frequency, in which case the duration will be in the format of "PT3D" (ISO 8601). However, if an operator has set the sync frequency via the API, the duration could be a complex format, such as "P1DT2H3M4S". It was decided that in this case, we should omit seconds and go with the least common denominator from minutes.

Example: "P1DT2H3M4S" -> "1563 Minutes"

* Fix failing tests and add key

* Update constants with note for translators

* Fix typo

Co-authored-by: Vadim Yakhin <yakhin.v@gmail.com>

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Vadim Yakhin <yakhin.v@gmail.com>
2021-10-04 23:43:54 -04:00
Michael Olorunnisola
7446e0755a
[Security Solution][Timelines] - Timeline resolve api (#113157) 2021-10-04 21:43:35 -04:00
Brian Seeders
083eb24876
[buildkite] Speed up OSS misc tests by removing TS refs and bumping instance (#113855) 2021-10-04 21:08:01 -04:00
Brian Seeders
5216442d6c
[ci] Add branch to failed test reporter github comments (#113860) 2021-10-04 21:07:49 -04:00
Brian Seeders
7ad30eda15
Revert "[App Search] Detail Page for Automated Curations (#113550)"
This reverts commit 4d2a9c59a4.
2021-10-04 21:02:49 -04:00
Brian Seeders
fc89528c40
[buildkite] Fix off-by-one problem for test failure annotations (#113852) 2021-10-05 00:29:43 +01:00
Brandon Morelli
55bd942a1f
Update schema_overview.tsx (#113848) 2021-10-04 18:47:10 -04:00
Yuliia Naumenko
73f232f5b3
[Alerting][Docs] Elasticsearch setting search.allow_expensive_queries should be set as true. (#113062)
* [Alerting][Docs] Elasticsearch setting search.allow_expensive_queries should be set to true.

* fixed text

* fixed text

* fixed due to comments

* Update alerting-setup.asciidoc
2021-10-04 15:20:11 -07:00
Byron Hulcher
4d2a9c59a4
[App Search] Detail Page for Automated Curations (#113550) 2021-10-04 17:57:18 -04:00
Clint Andrew Hall
5ca923772d
[fleet] Add component story smoke test (#113634)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-04 14:49:44 -07:00
Kellen
6f665004cb
correct relativity in images (#113834) 2021-10-04 14:19:30 -07:00
Pete Hampton
a565fa02f3
Fix issue with incorrect policy response attachment. (#113430)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-04 17:00:21 -04:00
Nicolas Chaulet
3efad94646
[Fleet] Fix integration category redirect after loading categories (#113812) 2021-10-04 16:34:05 -04:00
Lee Drengenberg
d038f1e214
don't wait for nav:not(.ng-hide) on status page (#113674)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-04 21:07:04 +01:00
Tre
240716d2ee
[QA][SO INFO SVC] Drop in-test jq filtering (#113655) 2021-10-04 21:02:51 +01:00
Cauê Marcondes
432a8492c8
[APM] Fleet: Update "switch to datastreams" wording for apm migration (#113574)
* removing data stream in favor of Elastic agent

* fixing i18n

* addressing pr changes

* capitalization

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-04 15:41:03 -04:00
Sandra G
6f2757dfea
[Stack Monitoring] Node Advanced View (#113628)
* add template navigation

* implement advanced node view

* fix I18N titles
2021-10-04 15:28:17 -04:00
Caroline Horn
2fad6e92c6
[Getting Started] Added “Add data” button to Global Nav Drawer (#113648)
* Adding EUI as code-owners to KibanaPageTemplate
2021-10-04 15:25:24 -04:00
Jason Stoltzfus
2dac93cb4c
[App Search] Wired up Suggestion detail data (#113796) 2021-10-04 15:15:49 -04:00
CJ Cenizal
257e33a50e
Partial forward-port of dacf0c2a6c. (#113672)
- Add Authorization type to ES UI shared.
- Add convertPrivilegesToArray, patch to also accept privileges that might contain dots in its name, and add tests.

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-04 12:11:05 -07:00
Shahzad
abffa79ba2
[Uptime] Refactor snapshots into RTL (#113727) 2021-10-04 20:57:25 +02:00
Mikhail Shustov
1f60a1662f
[@kbn/securitysolution-es-utils] remove transport API in favour of typed public API (#113717)
* remove transport API in favour of typed public API

* put elasticsearch_client back

* fix create index call

* fix setpolicy

* fix unit tests in SecuritySolution
2021-10-04 20:42:07 +02:00
Thomas Watson
d8b4f4bdcb
[Reporting] Improve _read code in ContentStream (#113237) 2021-10-04 11:29:18 -07:00
Joe Portner
006e3713a6
Fix bulkResolve for duplicate requests (#113798) 2021-10-04 14:20:39 -04:00
Sergi Massaneda
02129d9911
prevent undefined filterQuery error (#113522)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-04 13:55:05 -04:00
Kellen
500fb00271
updates DevPrinciples URL (#113785) 2021-10-04 13:48:22 -04:00
Stacey Gammon
eddbc8db6f
Update doc slugs to improve analytic tracking, move to appropriate folders (#113630)
* Update the slugs to improve google analytics drilldown tracking

* more slug updates

* Fix some formatting issues in building blocks

* update paths

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-04 13:36:45 -04:00
Nicolas Chaulet
a4eab441c0
[Fleet] Use elastic_agent package to build monitoring permissions for agent (#112730) 2021-10-04 13:36:12 -04:00
Thom Heymann
693727663e
Better message for unanticipated authorisation errors (#113460)
* Custom message for unanticipated 401 errors

* Refactor logout reasons

* Fix types

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-04 18:18:45 +01:00
Diana Derevyankina
51df1e58a3
[TSVB] Rename Index pattern to Data view (#110253)
* [TSVB] Rename Index pattern to Data view

* Update some labels

* Make asterisk bold to indicate it's text input

* Remove redundant translation

* Remove "now" from TSVB callout notification title

* Update variable name to match the text

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-04 20:15:57 +03:00
Marco Liberati
6b9ef32ffe
🐛 Fix color fallback for different type of layers (#113642)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-04 19:10:14 +02:00
Matthew Kime
bbb2e96dd5
[data views] Move data views api from data plugin and into its own (#113497)
* initial pass at moving data views into own plugin

* require expressions plugin, fix META_FIELDS reference

* bundle limits and localization

* fix integration test

* update plugin list and jest config

* type fixes

* search fixes

* fix localization

* fix mocks

* fix mocks

* fix stub

* type fixes

* fix import on test file

* path fixes

* remove shorted dotted from data plugin

* more todo removal

* eslint fixes

* eslint fix

* simplify data views server plugin

* simplify data views server plugin

* simplify data views server plugin

* fix imports on api routes

* fix imports on api routes

* update plugin list

* ts fixes

* ts fixes

* add deprecation notice

* fix circular dependency and api integration test

* fix circular dependency and api integration test

* rename types for better clarity

* path fixes

* jest.config and tsconfig cleanup

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-04 12:05:22 -05:00
Dzmitry Lemechko
28702ff1c6
[test/page_objects] validate selected dates for timepicker (#113597)
* [test/page_objects] validate selected dates for timepicker

* unskip flaky test

* fix types check failure

* update tests

* update message

* unskip more tests
2021-10-04 19:00:41 +02:00
Frank Hassanabad
ba7bea456a
[Security Solution] Migrates siem.notifications ruleAlertId to saved object references array (#113205)
## Summary

Fixes https://github.com/elastic/kibana/issues/113276

* Migrates the legacy `siem.notifications` "ruleAlertId" to be within the references array
* Adds code to serialize and de-serialize "ruleAlertId" from the saved object references array
* Adds migration code to `kibana-alerting` to migrate on startup
* Adds `legacy_saved_object_references/README.md` which describes how to test and what those files are for.
* Updates earlier similar `signals/saved_object_references/README.md` after reviewing it during my work
* Names these files the format of `legacy_foo` since this is all considered legacy work and will be removed once the legacy notification system is removed after customers have migrated. 
* Adds unit tests
* Adds 2e2 tests

We only migrate if we find these conditions and cases:
* "ruleAlertId" is not `null`, `undefined` or malformed data
* The"ruleAlertId" references do not already have an exceptionItem reference already found within it.

We migrate on the common use case:
* "ruleAlertId" exists and is a string

We do these additional (mis-use) cases and steps as well. These should NOT be common things that happen but we safe guard for them here:
* If the migration is run twice we are idempotent and do NOT add duplicates or remove items.
* If the migration was partially successful but re-run a second time, we only add what is missing. Again no duplicates or removed items should occur.
* If the saved object references already exists and contains a different or foreign value, we will retain the foreign reference(s) and still migrate.

Before migration you should see data structures like this if you query:

```json
# Get the alert type of "siem-notifications" which is part of the legacy system.
GET .kibana/_search
{
  "query": {
    "term": {
      "alert.alertTypeId": "siem.notifications"
    }
  }
}
```

```json
"data..omitted": "data..omitted",
"params" : {
  "ruleAlertId" : "933ca720-1be1-11ec-a722-83da1c22a481" <-- Pre-migration we had this Saved Object ID which is not part of references array below
},
"actions" : [
  {
    "group" : "default",
    "params" : {
      "message" : "Hourly\nRule {{context.rule.name}} generated {{state.signals_count}} alerts"
    },
    "actionTypeId" : ".slack",
    "actionRef" : "action_0" <-- Pre-migration this is correct as this work is already done within the alerting plugin
  },
  "references" : [
    {
      "id" : "879e8ff0-1be1-11ec-a722-83da1c22a481",
      "name" : "action_0", <-- Pre-migration this is correct as this work is already done within the alerting plugin
      "type" : "action"
    }
  ]
],
"data..omitted": "data..omitted",
```

After migration you should see data structures like this:
```json
"data..omitted": "data..omitted",
"params" : {
  "ruleAlertId" : "933ca720-1be1-11ec-a722-83da1c22a481" <-- Post-migration this is not used but rather the serialized version references is used instead.
},
"actions" : [
  {
    "group" : "default",
    "params" : {
      "message" : "Hourly\nRule {{context.rule.name}} generated {{state.signals_count}} alerts"
    },
    "actionTypeId" : ".slack",
    "actionRef" : "action_0"
  },
  "references" : [
    {
      "id" : "879e8ff0-1be1-11ec-a722-83da1c22a481",
      "name" : "action_0",
      "type" : "action"
    },
    {
      "id" : "933ca720-1be1-11ec-a722-83da1c22a481", <-- Our id here is preferred and used during serialization.
      "name" : "param:alert_0", <-- We add the name of our reference which is param:alert_0 similar to action_0 but with "param"
      "type" : "alert" <-- We add the type which is type of alert to the references
    }
  ]
],
"data..omitted": "data..omitted",
```

## Manual testing 
There are e2e and unit tests but for any manual testing or verification you can do the following:

If you have a 7.14.0 system and can migrate it forward that is the most straight forward way to ensure this does migrate correctly and forward. You should see that the legacy notification system still operates as expected.

If you are a developer off of master and want to test different scenarios then this section is for below as it is more involved and harder to do but goes into more depth:

* Create a rule and activate it normally within security_solution
* Do not add actions to the rule at this point as we are exercising the older legacy system. However, you want at least one action configured such as a slack notification.
* Within dev tools do a query for all your actions and grab one of the `_id` of them without their prefix:

```json
# See all your actions
GET .kibana/_search
{
  "query": {
    "term": {
      "type": "action"
    }
  }
}
```

Mine was `"_id" : "action:879e8ff0-1be1-11ec-a722-83da1c22a481"`, so I will be copying the ID of `879e8ff0-1be1-11ec-a722-83da1c22a481`

Go to the file `detection_engine/scripts/legacy_notifications/one_action.json` and add this id to the file. Something like this:

```json
{
  "name": "Legacy notification with one action",
  "interval": "1m",  <--- You can use whatever you want. Real values are "1h", "1d", "1w". I use "1m" for testing purposes.
  "actions": [
    {
      "id": "879e8ff0-1be1-11ec-a722-83da1c22a481", <--- My action id
      "group": "default",
      "params": {
        "message": "Hourly\nRule {{context.rule.name}} generated {{state.signals_count}} alerts"
      },
      "actionTypeId": ".slack" <--- I am a slack action id type.
    }
  ]
}
```

Query for an alert you want to add manually add back a legacy notification to it. Such as:

```json
# See all your siem.signals alert types and choose one
GET .kibana/_search
{
  "query": {
    "term": {
      "alert.alertTypeId": "siem.signals"
    }
  }
}
```

Grab the `_id` without the alert prefix. For mine this was `933ca720-1be1-11ec-a722-83da1c22a481`

Within the directory of detection_engine/scripts execute the script:

```json
./post_legacy_notification.sh 933ca720-1be1-11ec-a722-83da1c22a481
{
  "ok": "acknowledged"
}
```

which is going to do a few things. See the file `detection_engine/routes/rules/legacy_create_legacy_notification.ts` for the definition of the route and what it does in full, but we should notice that we have now:

Created a legacy side car action object of type `siem-detection-engine-rule-actions` you can see in dev tools:

```json
# See the actions "side car" which are part of the legacy notification system.
GET .kibana/_search
{
  "query": {
    "term": {
      "type": {
        "value": "siem-detection-engine-rule-actions"
      }
    }
  }
}
```

But more importantly what the saved object references are which should be this:

```json
# Get the alert type of "siem-notifications" which is part of the legacy system.
GET .kibana/_search
{
  "query": {
    "term": {
      "alert.alertTypeId": "siem.notifications"
    }
  }
}
```

If you need to ad-hoc test what happens when the migration runs you can get the id of an alert and downgrade it, then
restart Kibana. The `ctx._source.references.remove(1)` removes the last element of the references array which is assumed
to have a rule. But it might not, so ensure you check your data structure and adjust accordingly.
```json
POST .kibana/_update/alert:933ca720-1be1-11ec-a722-83da1c22a481
{
  "script" : {
    "source": """
    ctx._source.migrationVersion.alert = "7.15.0";
    ctx._source.references.remove(1);
    """,
    "lang": "painless"
  }
}
```

If you just want to remove your your "param:alert_0" and it is the second array element to test the errors within the console
then you would use
```json
POST .kibana/_update/alert:933ca720-1be1-11ec-a722-83da1c22a481
{
  "script" : {
    "source": """
    ctx._source.references.remove(1);
    """,
    "lang": "painless"
  }
}
```

Check your log files and should see errors about the saved object references missing until you restart Kibana. Once you restart then it will migrate forward and you will no longer see errors.

### 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
2021-10-04 10:31:47 -06:00
Michael Dokolin
0d9825d03c
[Expressions] Remove the any type usages (#113477)
* Update ESLint config to disallow usage of the any type
* Remove the any type usages from the expressions plugin
* Update plugins using expressions according to the updated public API
2021-10-04 18:30:10 +02:00
Shahzad
fed0dc6563
[Uptime] Supress fetch errors on no data screen (#113458)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-04 18:10:27 +02:00
spalger
2b401d06df Revert "Lint git index content on commit (#113300)"
This reverts commit 92fe7f8ab3.
2021-10-04 15:59:36 +00:00
spalger
9df5051817 Revert "Revert "chore: add modifications to staging automatically after eslint fix (#113443)""
This reverts commit cc73577f84.
2021-10-04 15:59:36 +00:00
Justin Kambic
a9c100768e
Increase timeout for long-running unit test assertions. (#113122)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-04 11:56:00 -04:00
Sergi Massaneda
59b15df115
fix priority reset bug (#113626)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-04 17:49:14 +02:00
Sandra G
3d0da7f0f6
[Stack Monitoring] Migrate Index Views to React (#113660)
* index views

* fix type

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-04 11:37:19 -04:00