* Add encodePathParams helper to EnterpriseSearchRequestHandler
This helper accomplishes two things:
- Fixes 404s from the Enterprise Search server for user-generated IDs with special characters (e.g. ? char)
- Allows us to simplify some of our createRequest calls - no longer will we have to grab request.params to create paths, this helper will do so for us
* Update AS document route to use new helper
- This was the primary view/API I was testing to fix this bug
* Update remaining AS routes to use new helper
- shorter, saves us a few lines
+ remove unnecessary payload: params that doesn't actually validate params
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* A good chunk of server-side ES changes
* CCR files
* More areas where we just pass down the source to the client
* Some more
* Fix tests
* Fix tests and types
* initial commit
* adapt client-side signatures
* more type fixes
* adapt api IT asserts
* fix some unit tests
* fix more test usages
* fix integration tests
* fix FT test assertions
* fix FT test assertions
* add FTR API integ test suite
* create the plugin_api_integration test suite
* adapt and fix flyout tests
* update documentation
* update generated doc
* add unit tests for `executeImportHooks`
* wire resolve_import_errors and add unit tests
* move hooks registration to SO type API
* update generated doc
* design integration
* update generated doc
* Add FTR tests for import warnings
* deletes plugins api integ tests
* self review
* move onImport to management definition
* update license header
* rename actionUrl to actionPath
This PR adds the following:
1. We now validate the interval passed to `timeout` when a task type definition is registered.
2. replaces usage of `Joi` with `schema-type`
When a task expires it continues to reside in the queue until `TaskPool.cancelExpiredTasks()` is called. We call this in `TaskPool.run()`, but `run` won't get called if there is no capacity, as we gate the poller on `TaskPool.availableWorkers()` and that means that if you have as many expired tasks as you have workers - your poller will continually restart but the queue will remain full and that Task Manager is then in capable of taking on any more work. This is what caused `[Task Poller Monitor]: Observable Monitor: Hung Observable...`
* Instances latency distribution chart
Create an instances row component that does the data fetching for the
instances table and the distribution chart. Use the same data for both the chart and the table.
Tooltips and selection are disabled on the chart.
* import fix
* rename ServiceOverviewInstancesRow to ServiceOverviewInstancesChartAndTable
* Updates based on feedback
* remove stuff
* hasdata
* chore(NA): create new x-pack cigroups and rebalancing them all
* chore(NA): better cigroups balancing
* chore(NA): push rollup tests back into ciGroup1
* chore(NA): move some functional ml tests from cigroup3 into cigroup13
* chore(NA): move some more tests into ciGroup13
* chore(NA): use a single top level describe at x-pack/test/functional/apps/ml
* chore(NA): move settings into ciGroup13
* temporary test for es snapshots env
* Revert "temporary test for es snapshots env"
This reverts commit 789ebe7b9c.
* docs(NA): add missing documentation on the function tests describe split
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* add custom runner and config for load testing
* add full maven command
* add jenkins script
* run tests against build
* run kibana with no-base-path flag
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* usgin esarchive to load e2e
* using esarchive to load e2e
* using esarchive to load e2e
* using esarchive to load e2e
* using esarchive to load e2e
* chaning archiver script to copy file to both e2e and api tests
* chaning archiver script to copy file to both e2e and api tests
* removing task folder
* running e2e through script
* using cy.clock to set now
* adding basic test
* adding cypress run script
* adding cypress run script
* fixing some stuff
* excluding new e2e dir
* adding new project for new e2e dir
* adding new project for new e2e dir
* unformatting file
* adding unit tests
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
## Summary
Temporarily addresses https://github.com/elastic/kibana/issues/88450
A follow PR will address full fix.
### Issue
Exceptions table search not functioning as expected.
### Diagnostic
The exception list SO properties are mapped as keywords, meaning ES does not tokenize them. Need to add a `text` mapping for fields we want to search on in order for search to work as expected. Expectations for exceptions table search being:
- I can search `Endpoint Security` and get results that match `Endpoint` or `Security`
- I can search `"Endpoint Security"` and it will conduct an exact match search
It's too late in the release cycle for mappings updates - a follow up PR will properly fix search.
### Without Search
<img width="1766" alt="Screen Shot 2021-01-19 at 7 52 01 PM" src="https://user-images.githubusercontent.com/10927944/105112279-aed64300-5a90-11eb-95fc-1922eb2055e9.png">
### Checklist
- [ ] [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
* Add AnalyticsUnavailable component
* Add AnalyticsHeader component
+ update AnalyticsLogic to store allTags prop passed by API
+ convertTagsToSelectOptions util helper
* Add AnalyticsLayout that all subroutes will utilize
- Handles shared concerns of:
- Loading state & unavailable state
- Flash messages & log retention callout
- Reusing the header component
- Fetching data
- Reloading data based on filter updates
* Add very basic subroute views that utilize AnalyticsLayout
* Update QueryDetail pages to set breadcrumbs
* Fix QueryDetail breadcrumbs to not 404 on the 'Query' crumb
Redirect to the /analytics overview since we don't actually have a /query_details overview
* [PR feedback] Enforce date range defaults on the client side
- instead of using coincidence to sync our client side default range & server default range
- tags remain ''/undefined as default
* [PR feedback] Add explicit query vs analytics view prop
- to help devs more quickly distinguish at a glance whether a view will fetch analytics data or query data
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* Making kibanaFeatures an optional parameter and catching error on plugin start
* Gracefully handle 404 errors when no access to features endpoint
* Adding functional test
* Only render location status badge when there are actually locations to display.
* Add aria-label to describe location section.
* Update test data to reflect real-world data better. Refactor enzyme tests.
* Refactor component test.
* Fix test names.
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
## Summary
Addresses issue issue 87110
**Issue**
When prepackaged rules were created during the Endpoint Security enrollment flow, the endpoint exceptions list was failing to be created. As a result, when a user navigated to the `Endpoint Security` rule to add an exception it would display errors and not allow a user to add exceptions.
* Await promises to ensure promise rejection does not crash kibana
* Fix test
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* partial failure if unmapped timestamp override field or unmapped @timestamp field
* fixes unit tests
* fix threat match rules integration tests
* unskip integration test for partial failure when not all indices have timestamp override field
* replace ts-expect-error in test with a partial type
* use destructured param and != null for ternary
* fix typo in utils.test.ts
* remove unnecessary optional chaining
* replace logger.debug with logger.error and update test case for threat match integration test to search auditbeat-* instead of empty index causing it to search wrong indicies like .kibana, etc..
* adds unit test to write a success when all shard failure messages are no mapping found for a timestamp field, moves privilege check and timestamp field cap check into utility functions and updates code to be more functional
* need to write an error, not a partial failure, if the rule cannot read ANY of the indices provided
* use isEmpty for checking timestamp override field param and remove let from hasReadIndexPrivileges util function
* replace references to helpers/toPromise | toError to use common/fp_utils, remove unnecessary flow wrappers, no need for checking if timestampField is null since it is typed as string and we do the checking beforehand, add a const bool to clean up logic for getting timestampFieldOverride
* replace usage of flow with pipe to make arguments explicit