* Update tutorial-discovering.asciidoc
Adds alt text to images in doc.
* Update docs/getting-started/tutorial-discovering.asciidoc
* Update docs/getting-started/tutorial-discovering.asciidoc
Co-authored-by: Kaarina Tungseth <kaarina.tungseth@elastic.co>
* Update tutorial-define-index.asciidoc
Forgot to update alt text in previous pr. Additionally, it is unclear in the image where the "time field" dropdown is located.
* Update docs/getting-started/tutorial-define-index.asciidoc
Co-authored-by: Kaarina Tungseth <kaarina.tungseth@elastic.co>
* First stab at developer-focussed saved objects docs
* Don't introduce spelling mistakes
* Add docs for SO migrations
* Link to HTTP API documentation
* Grammar fixes
* Rendering fixes
* Migrations should be tested, remove nested migration docs for now
* Drop subtitle field in migration, add notes about migration version, behaviour for corrupt documents and emphasize testing
Co-authored-by: Josh Dover <me@joshdover.com>
* init commit
* lots of cleanup
* starting on tests... problems
* Ready for review
* remove sample data
* remove comment and fix type
* pr changes
* fix type
* scratchy
* sourcerer in timeline
* sourcerer in timeline
* wip
* moving to redux
* working on types
* fixed
* more adjustments, tests fixed
* FF off
* pr ready
* renaming
* url state working, hoc not working
* url state working for timeline and default scope
* script to build fields for beat doc
* refactor sourcerer
* refactor host to useSourcerer
* refactor network to useSourcerer
* refactor overview to useSourcerer
* refactor detections to useSourcerer
* wip for timelines to remove all useSource
* wip indexes timeline
* do component tests
* start container tests
* start container tests
* update selection widget of index patterns + remove last useWithSource
* add indexeNames in network kpi
* fix type errors
* fix type
* missing merge master
* get existing index from config file
* fixing broken tests
* add saving button to avoid to many queries to be aborted
* reducer timeline tests broke
* need to rewind
* much better
* timeline saving index names + clean up url state to only manage default
* more test fixing
* more test changes
* remove all the useWithSource + deprecated the graphql until we delete it in a new PR + delete all the beat doc
* default timeline to all index when creation + filter index patterns to make sure you do not add one who we do not know
* fix types
* test for stateful timeline render
* we should not have change that
* no chnages + snapshot
* fix test + bugs from review
* fix uncommon processes indexNames
* review III
* change design for main page of the sourcerer from design
* bug fixes when opening old timeline + implementation of new design
* fix circular deps
* remove unused attributes for event details
* design cleanup
* fix api integration test with the new search strategy
* add reset + manage accordion state
* fix bugs + types issues
* cleanup
* update docs
* review -> remove tooltip when popover is open
* cypress fixing
* fix for ml_condition_links and url_state cypress tests
* add cy wait for race condition in pagination tests
* missing plumbing kpi host
Co-authored-by: Steph Milovic <stephanie.milovic@elastic.co>
Co-authored-by: Patryk Kopycinski <contact@patrykkopycinski.com>
This pr makes sure there is way to disable URL drilldown feature.
I decided to extract Url drilldown definition into a separate plugin to benefit from regular disabling a plugin feature.
Having it as a separate plugin also makes sense because we will start adding registries specific to URL drilldown implementation
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* Fields dropdowns are not populated if one of the indices is missing
* Fix tests and accept api changes
* Add indexPatternsService to get default index pattern
* Replace simple error message string with i18n translation
* Remove unnecessary displaying error code
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* Adding KibanaRequest#uuid
* Adding tests
* Fixing test which was mocking uuid.v4() to get expected IDs
* Fixing another mock
* Updating docs
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* Grouped features for space management
* Apply suggestions from code review
Co-authored-by: Joe Portner <5295965+jportner@users.noreply.github.com>
* Address PR Feedback
* docs changes
* updating types/docs
* update APM feature name
* Reintroduce extraAction following EUI update
* change ordering of infra features, and render callout for management category
Co-authored-by: Joe Portner <5295965+jportner@users.noreply.github.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Team agreed that we'd like to release URL drilldown MVP as Beta.
Reasons for it:
1. Caveats in current URL drilldown UX (dummy values in preview, too vague triggers, {{event.points}} hack). It might that improving those would require a breaking change in an API. We will do our best to handle changes with migrations, but there could be edge cases we won't be able to cover.
2. We decided not to rush with extending url templating capabilities with more helpers. We could find out from early feedback that essential helpers are required. Even though this won't be breaking, worth mentioning here.
3. Since URL drilldown is a new feature and relies on user's input, we might get early feedback that would required us for a significant changes in the feature. Make it Beta gives us more room for a pivot in this case.
4. API Action concept might change how we reason about URL drilldown
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* [Reporting/Config] use better schema methods
* add createMockConfig
* update documentation
* fix observable.test
* add docs links to common options page
* make the schema match the docs
* wording edits per feedback
* self edits
* todo comment
* fix tests
* feedback change 1
* schema utils
* fix goof
* use objects for the defaults when available
* fix pollInterval
* fix snapshots
* Update report_listing.tsx
* call new ByteSizeValue on server side only
* revert xpack.reporting.poll
* fix ts
* fix snapshot
* use correct input for duration
* revert reorganize imports
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* move deprecations and raw loader to package
* move config service to package
* start to adapt the usages
* adapt yet more usages
* update generated doc
* move logging types to `@kbn/logging`
* update generated doc
* add yarn.lock symlink
* merge @kbn-logging PR
* adapt Env.createDefault
* update generated doc
* remove mock exports from the main entrypoint to avoid importing it in production code
* use dynamic require to import `REPO_ROOT` from bootstrap file
* move logger mock to kbn-logging package
* address review comments
* import PublicMethodOf from kbn/utility-types
* fix import conflict
* update generated doc
* use the @kbn/std package
* update generated doc
* adapt plugin service mock
Moves common utility functions to obtain the repository root,
paths (config/data), and Kibana package.json to a @kbn/utils package.
Moving these existing functions allows them to be used in production, in
other packages because of Kibana.
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
* [Search] Remove long-running query pop-up
* Don't timeout if requestTimeout isn't configured
* Remove unused kibanaUtils
* Remove unused kibanaReact
* Re-add reference to kibanaUtils
* Remove unused translations and update documentation
* Add new x-pack advanced setting searchTimeout and use it in the EnhancedSearchInterceptor
* docs
* Re-add toast when queries time out
* Fix types
* Update error message with capabilities
* Update docs
* Update docs
* Move search server routes into a directory.
* Add internal/_msearch route.
* Remove legacy search API, rewrite default search strategy to use internal route.
* Remove legacy es_client code.
* Handle msearch options on server.
* Remove elasticsearch-browser dependency.
* Update generated docs.
* Rely on server timeout in OSS (?)
Use UI setting in xpack.
* Rename function
* Add features to dependencies
* Undefined check
* doc
* Code review fixes
* code review
* doc
* loading count
* simplify code review and fix jest tets
* type check
* Remove esShard from client
* cleanup request parameters from FE
* doc
* doc
* Align request parameters on server,
Remove leftover parameters from client
Shim responses for search and msearch routes
* docs
Stop using toSnakeCase
Updates jest tests
* add management docs
* docs
* Remove import
* Break circular dep + fix msearch test
* Remove deleted type
* Fix jest
* Bring toSnakeCase back
* docs
* fix jest
* Add new x-pack advanced setting searchTimeout and use it in the EnhancedSearchInterceptor
* docs
* Rely on server timeout in OSS (?)
Use UI setting in xpack.
* Rename function
* doc
* Remove esShard from client
* cleanup request parameters from FE
* doc
* doc
* Align request parameters on server,
Remove leftover parameters from client
Shim responses for search and msearch routes
* docs
Stop using toSnakeCase
Updates jest tests
* add management docs
* docs
* Remove import
* Break circular dep + fix msearch test
* Remove deleted type
* Fix jest
* Bring toSnakeCase back
* docs
* fix jest
* Fix merge
* Fix types
* Allow timeout to be undefined
* Fix jest test
* Upldate docs
* Fix msearch jest
* Merge correction
* docs
* Fix rollup search merge
* Fix merge
* Use i18n
Co-authored-by: Liza K <liza.katz@elastic.co>
Co-authored-by: Luke Elmers <luke.elmers@elastic.co>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* WIP: Adding in new reporting diag tool
* WIP: chrome-binary test + log capturing/error handling
* More wip on diagnostic tool
* More work adding in diagnose routes
* Alter link in description + minor rename of chrome => browser
* Wiring UI to API + some polish on UI flow
* WIP: Add in screenshot diag route
* Adding in screenshot diag route, hooking up client to it
* Add missing lib check + memory check
* Working screenshot test + config check for RAM
* Small test helper consolidation + screenshot diag test
* Delete old i18n translations
* PR feedback, browser tests, rename, re-organize import statements and lite fixes
* Lite rename for consistency
* Remove old validate check i18n
* Add config check
* i18n all the things!
* Docs on diagnostics tool
* Fixes, better readability, spelling and more for diagnostic tool
* Translate a few error messages
* Rename of test => start_logs for clarity. Move to observables
* Gathering logs even during process exit or crash
* Adds a test case for the browser exiting during the diag check
* Tap into browser logs for checking output
* Rename asciidoc diag id
* Remove duplicate shared object message
* Add better comment as to why we merge events + wait for a period of time
* Cloning logger for mirroring browser stderr to kibana output
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* Add new x-pack advanced setting searchTimeout and use it in the EnhancedSearchInterceptor
* docs
* Rely on server timeout in OSS (?)
Use UI setting in xpack.
* Rename function
* doc
* Remove esShard from client
* cleanup request parameters from FE
* doc
* doc
* Align request parameters on server,
Remove leftover parameters from client
Shim responses for search and msearch routes
* docs
Stop using toSnakeCase
Updates jest tests
* add management docs
* docs
* Remove import
* Break circular dep + fix msearch test
* Remove deleted type
* Fix jest
* Bring toSnakeCase back
* docs
* fix jest
* Fix merge
* Fix types
* Allow timeout to be undefined
* Fix jest test
* Upldate docs
* Fix msearch jest
* docs
* Fix rollup search merge
* docs
Co-authored-by: Lukas Olson <olson.lukas@gmail.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* Converted maps_router and store operations files
* Converted files in map routes to typescript
* Removed an unwanted ts-expect-error
* Fixed the lint errors from jenkins
* Naming changes, type for mapStateJSON etc.
* More type fixes in map routes
* More type fixes in map routes
* Added back some removed props
* Added types to app state manager
* Autogenerated api documentation
* Type fixes
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* New Search API for timelion
* Using timeout from config
* Use only es strategy)
* Fixed remarks
* Fixed tests
* Fixed fixtures
* Fixed ci
* Fixed typecheck
* Fixed eslint
* Fixed remarks
* Fix changes
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* [DOCS] Add default time range filter to advanced settings
* [DOCS] More edits
* [DOCS] Adds behaviour when disabled
* [DOCS] Synchs setting name changes
* [DOCS] More edits
* [Lens] Drag to replace
* Add jest tests for drag and drop
* Fix bug in dragging to empty
* Hide dragged dimension when drag starts
* Make table metrics required
* Update class names
* Implement styles on non-droppable items
* Replace drag and drop image in docs
* Remove extra specificity
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* Simple benchmark tests for kuery
* Building manually is "better" still not free
* Building the KueryNode manually
* Removing benchmark tests
* Another query is building the KueryNode manually
* Empty strings are inherently falsy
* No longer reaching into the data plugin, import from the "root" indexes
* Using AGENT_ACTION_SAVED_OBJECT_TYPE everywhere
* Adding SavedObjectsRepository#find unit test for KueryNode
* Adding KQL KueryNode test for validateConvertFilterToKueryNode
* /s/KQL string/KQL expression
* Updating API docs
* Adding micro benchmark
* Revert "Adding micro benchmark"
This reverts commit 97e19c0bf3.
* Adding an empty string filters test
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* KQL autocomplete cut off in visualize editor
Closes#70964
* Refactor some code
* Accept api changes, refactor query_string_input and suggestions_component
* Add a comment to suggestions_component
* Fix dropdown position, add close event on scroll and hide description if it doesn't fit
* Update tests to pass type check
* Fix displaying bugs
* Remove closeList
* Replace dropdownHeight with className
* Update suggestions_component.test and public.api.md
* KQL autocomplete cut off in visualize editor with styled-components
* Update suggestions_component.test values
* Add logic to open the list up
* Remove unnecessary semicolon
* Remove a gap between the list and input by inlining offset -2px from _suggestion.scss
* Rename the constants and add docs to them
* Wrap div inside SuggestionsComponent by styled component instead of wrapping the whole component
* Update public.api.md
* Refactor .kbnTypeahead__popover--top style
* Remove unnecessary condition
* Fix eslint problems
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* rename uuid service to environment service
* adapt resolve_uuid to directly use the configurations
* move data folder creation to core
* update generated doc
* fix types
* fix monitoring tests
* move instanceUuid to plugin initializer context
* update generated doc
* add asciidoc support for generated plugin list
Try level offset "=+2" instead of "=+1" to stop the inlining of the includes.
remove +2 back to +1
* Remove asciidoc, switch to regex. Rearrange dev guide to avoid nesting limit.
* Add tests for regex
* add a description to not throw off the table. Remove the heading from the paragraph snippet.
* Fix more READMEs so table renders correctly
* Update plugin list
* Remove code-exploration file, moved to plugin-list
* fix typo
* Add link to developer examples
* Update plugin list
* fix typo
* Add support for decorating 429 errors in the saved objects client
* Update the docs
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* improve test stability
* Replace SearchRequest = any with Record<string, any>
* Remove SearchResponse = any from data plugin
* docs
* logs
* Revert "Replace SearchRequest = any with Record<string, any>"
This reverts commit 9914ab5a01.
* code review
* list control
* null check
* null null null
* Jest fix
* add security solution search strategy on server side
* get security solution search strategy in the public app for all host
* fix types
* fix Check core API changes
* thank you cypress test
* Remove any by the right type IESearchRequest
Co-authored-by: Lukas Olson <olson.lukas@gmail.com>
* add translation and filter error when we abort the query
* pr review
* fix translation
* review II
* fix merge issue
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: Lukas Olson <olson.lukas@gmail.com>
* Add Index Management README and quick testing steps for data streams.
* Surface data stream health in Data Streams tab (table and detail panel).
- Extract out DataHealth component for use in both Data Streams and Indices tabs.
- Refactor detail panel to use data structure & algo to build component.
- Refactor detail panel to use i18n.translate instead of FormattedMessage.
* Render index template name and index lifecycle policy name in the detail panel.
* Render storage size and max timestamp information in table and detail panel.
- Add 'Include stats' switch.
- Add humanizeTimeStamp service, localized to data streams.
* Bringing Vega out of experimental
Closes: #21721
* fix CI group 12
* remove experimental flag from doc
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Adds support for `version` one the SavedObjectsClient's create api.
This sallows us to retain Optimistic concurrency control when using create to overwrite an existing document.
* Route options timeout -> timeout.payload
* timeout.idleSocket can now be specified per route
* Removing nested ternary
* Fixing integration tests
* Trying to actually fix the integration tests. Existing tests are hitting
idle socket timeout, not the payload timeout
* Fixing payload post timeout integration test
* Fixing PUT and DELETE payload sending too long tests
* Fixing type-script errors
* GET routes can't specify the payload timeout, they can't accept payloads
* Removing some redundancy in the tests
* Adding 'Transfer-Encoding: chunked' to the POST test
* Fixing POST/GET/PUT quick tests
* Adding idleSocket timeout test
* Removing unnecessary `isSafeMethod` call
* Updating documentation
* Removing PUT/DELETE integration tests
* Working around the HapiJS bug
* Deleting unused type import
* The socket can be undefined...
This occurs when using @hapi/shot directly or indirectly via
Server.inject. In these scenarios, there isn't a socket. This can also
occur when a "fake request" is used by the hacky background jobs:
Reporting and Alerting...
* Update src/core/server/http/http_server.ts
Co-authored-by: Josh Dover <me@joshdover.com>
* Adding payload timeout functional tests
* Adding idle socket timeout functional tests
* Adding better comments, using ?? instead of ||
* Fixing the plugin fixture TS
* Fixing some typescript errors
* Fixing plugin fixture tsconfig.json
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: Josh Dover <me@joshdover.com>
* wip deprecation notice on timelion app
* Add a deprecation notice on timelion app
* Minor, add visualize and timelion on the docLinks
* Chage the layout a bit
* Change the deprecation notice message
* Change the deprecation notice message
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* timelion deprecation doc wip
* Create Timelion Deprecation section to Visualize
* Code review changes
* minor changes
* Make some changes in order to give priotization on how to replace an existing timelion worksheet to a dashboard
* Syntax related improvements
* Final touch
* Remove extra lines and some minor changes
- Introduce `indexPattern.fields.getAll()` and use where possible
- Rename `index_patterns/fields/fields.mocks.ts.ts => index_patterns/fields/fields.mocks.ts`
- FieldSpec - make `count` and `scripted` fields optional
- use `indexPattern.fields.getByName` instead of filter where possible
- Better distinction and relationship between IndexPatternField and its spec
- IndexPatternField class is no longer defined via object mutation
- Reduction of dependencies
- UI code moved into Index Pattern class (will be removed in next ticket)
- IndexPattern field list was previously composed of IndexPatternFields or specs, now only IndexPatternFields
- IndexPattern field list was previously redefined when loading fields, now only its contents are replaced.
Fixes#71461 regression since 7.7
New state syncing utils didn't properly handle errors,
Errors happening during URL parsing or writing wasn't handled, so state syncing could stop or in worth case blow out. (see #71461)
There are not much scenarios where missing proper error handling could really impact users, except the one described in #71461:
Kibana users state:storeInSessionStorage
Users often intuitively share hashed dashboard urls directly
When someone opens those urls - there is a blank screen with warning
In 7.6 - dashboard would still load with default state.
Since 7.7 these still could be achieved by removing query params for URL, but it is not obvious for regular users.
This PR makes sure that behaviour is similar to one we had before 7.7.
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* [Search] Send ID in path, rather than body
* Fix typo in merge
* Update docs
* Revert to using POST instead of GET
* Revert accidental change
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* [Search] Fix telemetry collection to not send extra requests
* Update tracker to collect duration from ES response
* Fix type check
* Update docs and types
* Fix typescript
Co-authored-by: Liza K <liza.katz@elastic.co>
* mark legacy ES client types as deprecated
* expose es client to plugins and update mocks
* ElasticSearchClientMock --> ElasticsearchClientMock
* expose es client mocks
* expose es client via RequestHandlerContext
* convert test/plugin_functional/config into ts
* convert top_nav test into ts
* add an integration test for the es client
* update comments to refer to the new es client
* fix import paths. do not use extensions
temp
* update docs
* fix other refs
* add test for a custom client
* fix context
* add test for scoped client
* update docs
* improve test stability
* query string input manager (needed for search demo)
* docs
* dashboard
* Fix jest
* mock fix
* Allow restoring a saved query
* sync url
* Luke's fix to test
* cleanup
* lens jest tests
* docs
* use queryStringManager.getDefaultQuery
Don't sync query to global state
* Update app.test.tsx
lens mock
* jest fix
* jest
* use new api in the example
* Rename state param to query to match url state
* Apply changes to discover
* Update src/plugins/data/public/query/query_string/index.ts
Co-authored-by: Anton Dosov <dosantappdev@gmail.com>
* Improve query string state manager
* Cleanup dashboard code
* Handle refresh button
* Set initial dashboard state
* visualize state
* remove unused
* docs
* fix example
* fix jest
* fix filter app state in discover
* fix maps test
* jest
Co-authored-by: Anton Dosov <anton.dosov@elastic.co>
Co-authored-by: Anton Dosov <dosantappdev@gmail.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
## Summary
By default the upload time limit for payloads is 10 seconds. This is really too short and we were getting internal QA bug reports that uploads are timing out on large value list importing. This PR adds the plumbing and unit tests to make the timeout configurable for routes.
* Adds a single timeout option for routes and then normalizes that through Hapi for the socket, payload, and server timeouts.
* Adds unit tests which test the various options
* Adds integration tests which test the various options
* Adds some NOTES about where there are odd behaviors/bugs within Hapi around validations and the timeouts
* Adds a configurable 5 minute timeout to the large value lists route
**Manual testing of the feature**
You can manually test this by adding a configurable option to your chrome network throttle like so below where you throttle upload by some configurable amount. I chose to use 300 kbs/s upload
<img width="556" alt="Screen Shot 2020-07-23 at 11 26 01 AM" src="https://user-images.githubusercontent.com/1151048/88318015-5ab3f700-ccd7-11ea-9d9b-7e3649ec65de.png">
And then run an import of large value lists using a large enough file that it will exceed 5 minutes:
![screen-shot-upload](https://user-images.githubusercontent.com/1151048/88318584-28ef6000-ccd8-11ea-90a1-8ca4aafabcb4.png)
After 5 minutes you should see this message within your server side messages if you have configured your kibana.dev.yml to allow for these messages:
```ts
server respons [10:52:31.377] [access:lists-all] POST /api/lists/items/_import?type=keyword 408 318292ms - 9.0B
```
Note that it should show you that it is trying to return a `408` after `318292ms` the timeout period. Sometimes you will get the 408 in the browser and sometimes the browser actually will not respect the 408 and continue staying in a pending state forever. This seems to be browser side issue and not a client/user land issue. If you get the browser message it will be this error toaster
![timeout-message](https://user-images.githubusercontent.com/1151048/88318760-74a20980-ccd8-11ea-9b7b-0d27f8eb6bce.png)
### Checklist
- [x] 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/master/packages/kbn-i18n/README.md)
- [x] [Documentation](https://github.com/elastic/kibana/blob/master/CONTRIBUTING.md#writing-documentation) was added for features that require explanation or tutorials
- [x] [Unit or functional tests](https://github.com/elastic/kibana/blob/master/CONTRIBUTING.md#cross-browser-compatibility) were updated or added to match the most common scenarios
### For maintainers
- [x] This was checked for breaking API changes and was [labeled appropriately](https://github.com/elastic/kibana/blob/master/CONTRIBUTING.md#release-notes-process)
* Copying api integration tests into their own directory
* Removing api integration tests and using ingest docker image
* Fixing typo
* Fixing type errors and empty string and reenabling tests
* Rebuilding docs
* Renaming url override variable
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* move http.anonymousPaths.register('/status'); logic into core, remove status_page plugin
* move status_page to core & migrate lib
* migrate the status_app components to TS/KP APIs
* update rendering snapshots
* use import type syntax
* moves `/status` server-side route to core
* fix route registration
* update generated file
* change statusPage i18n prefix
* (temporary) try to restore legacy plugin to check behavior
* add some FTR tests
* do not import whole lodash
* update snapshots
* review comments
* improve / clean component unit tests
* change url for legacy status app
* set status app as chromeless
* fix FTR test due to chromeless app
* fix typings
* add unit test for CoreApp /status registration
* use KibanaClient interface instead of Client
* add back helpers to ElasticsearchClient interface
* use TransportRequestPromise for transport.request
* update generated doc
* Add a few asciidoc readmes
* add updated code-exploration. Need to fix the script in another go to add asciidoc support. The snippet didn't show up anyway.
* rename float to discrete
* use same section title level on all source files
* Elasticsearch => {es}
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* [search] Refactor the way search strategies are registered/retrieved on the server
* Fix types and tests and update docs
* Fix failing test
* Fix build of example plugin
* Fix functional test
* Make server strategies sync
* Move strategy name into options
* docs
* Remove FE strategies
* TypeScript of hell
delete search explorer
* Fix search interceptor OSS tests
* typos
* test cleanup
* Update search interceptor tests and abort utils
* [Search] Add telemetry for data plugin search service
* Add tracking of average query time
* Add tests and rename to collectors
* Fix TS
* Fixed interceptor jest tests
* Add to kibana json
* docs
* Properly use observables rather than only during setup
* Update or create
* Swallow version conflict errors
Co-authored-by: Liza K <liza.katz@elastic.co>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* [DOCS] Adds API keys to API docs
* Fixes link title
* Update docs/api/using-api.asciidoc
Co-authored-by: Brandon Morelli <bmorelli25@gmail.com>
Co-authored-by: Brandon Morelli <bmorelli25@gmail.com>
* [search] Refactor the way search strategies are registered/retrieved on the server
* Fix types and tests and update docs
* Fix failing test
* Move strategy name into options
* Remove FE strategies
* TypeScript of hell
delete search explorer
* Fix search interceptor OSS tests
* test cleanup
* fix
* return search wrapper
* initial api
* Shiny happy cleanup
* docs
* fix jest test
* simplify strategy registration
* fix rebase
* fix rebase
* fix backport
* types
* TS for strategy
* docs
Co-authored-by: Lukas Olson <olson.lukas@gmail.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* Fix dimension popover layout and color picker “Auto”
* Created ToolbarButton
* Move disabled help text to tooltip for missing values
* Darker side panel backgrounds
* Adding to .asciidoc about where to put the SASS import
* Moving `SASS` guidelines to STYLEGUIDE.md
* Fix keyboard focus of XY settings popover
* Fix dark mode
* [Data Plugin] Allow server-side date formatters to accept custom timezone
When Advanced Settings shows the date format timezone to be "Browser,"
this means nothing to field formatters in the server-side context. The
field formatters need a way to accept custom format parameters. This
allows a server-side module that creates a FieldFormatMap to set a
timezone as a custom parameter. When custom formatting parameters exist,
they get combined with the defaults.
* add more to tests - need help though
* simplify changes
* api doc changes
* fix src/plugins/data/public/field_formats/constants.ts
* rerun api changes
* re-use public code in server, add test
* fix path for tests
* weird api change needed but no real diff
* 3td time api doc chagens
* move shared code to common
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* Move kibana-keystore from data/ to config/
This is a breaking change to move the location of kibana-keystore.
Keystores in other stack products live in the config directory, so this
updates our current path to be consistent.
Closes#25746
* add breaking changes
* update comment
* wip
* fix docs
* read from both keystore locations, write priority to non-deprecated
* note data directory fallback
* add tests for get_keystore
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* chore(NA): load NODE_OPTIONS from options files across environments
* chore(NA): move node.ci.options to config folder
* docs(NA): update docs to explain how to set node options from the cfg fil
* chore(NA): removed test npm scripts
* fix(NA): typo on setup script for CI
* chore(NA): add debug info
* chore(NA): export options on CI
* chore(NA): remove debug info
* chore(NA): support for configurable config folder using env var
* chore(NA): add node.options file into docker img
* fix(NA): use calculated config dir on node options for ci
* chore(NA): node bin scripts bootstrap and node_with_options implementation for bash
* chore(NA): complete node_with_options scripts with bat version
* chore(NA): add bin/node dev script and remove cli for run_with_node_options
* chore(NA): increase default maxBuffer
* chore(NA): remove run with options script from package.json
* chore(NA): include kbn-node script and underlying usage of it
* chore(NA): remove change on eslint
* chore(NA): correct typo on kbn node script comment
Co-authored-by: Tyler Smalley <tylersmalley@me.com>
* chore(NA): correct typo on kbn node script comment
Co-authored-by: Tyler Smalley <tylersmalley@me.com>
* chore(NA): add line to describe each option should be specified in a separated line
* chore(NA): remove node options from dev and ci env
* chore(NA): remove changes from package.json
* chore(NA): fix docker image build
* chore(NA): change value for example of --max-old-space-size in the node.options file
Co-authored-by: Tyler Smalley <tylersmalley@me.com>
* chore(NA): remove --no-warnings from node.options and force it in the bin scripts
* chore(NA): prevent 'The system cannot find the file' error message
* chore(NA): introduce slash when building path for %DIR%
* chore(NA): read options from file only if it exists
Co-authored-by: Jonathan Budzenski <jbudz@users.noreply.github.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: Tyler Smalley <tylersmalley@me.com>
- Updates Linux Chromium builds to accept architecture argument (defaults to x64) for arm64 support.
- Example: `python ~/chromium/build_chromium/build.py 312d84c8ce62810976feda0d3457108a6dfff9e6 arm64`
- Updates all Chromium builds to include architecture in filename.
- `chromium-312d84c-linux_arm64.zip` _(new)_
- `chromium-312d84c-linux.zip` > `chromium-312d84c-linux_x64.zip`
- Moves Chromium install from data directory to `x-pack/plugins/reporting/chromium`
- Moves Chromium download cache from `x-pack/plugins/reporting/.chromium` to `.chromium`
- Installs Chromium during build (closes#53664)
- Updates build to be architecture aware (x64 and aarch64)
- Removed Chromium debug logs, they were not helpful and can not be written inside the Kibana root. If we were to keep them, we would need to write to `logging.dist`.
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
* Allow disabled: false SO field mappings
* Disable fields for unknown SO types
* Update everyone else's docs ;)
* Address review comments
* Add unit tests for disableUnknownTypeMappingFields()
* creating overview page and menu
* styling the home page
* adjusting breadcrumb
* renaming isnt working
* renaming isnt working
* renaming isnt working
* fixing import
* fixing scroll when resize window
* fixing eslint errors
* prepending links
* adding target option
* refactoring
* adding dark mode support
* fixing prettier format
* fixing i18n
* reverting some unnecessary changes
* addressing PR comments
* fixing functional tests
* ordering observability menu
* fixing tests
* addressing PR comments
* fixing scroll
* addressing pr comments
* addressing pr comments
* creating overview page
* mocking data
* mocking data
* refactoring
* crearting apm chart
* adding overview page
* adding metric charts
* adding charts
* changing mock data location
* adding mock registry
* adding date picker
* adding route validation
* adding io-ts
* adding io-ts
* adding io-ts support
* fixing imports and mock data
* adding app folder
* creating a section for each plugin
* adding stats
* adding domain min max
* refactoring xcoordinaters
* fixing route
* adding bucket size
* adding group property on logs
* adding home page
* dont break page if location state is undefined
* each component fetches its own data
* Refactoring
* adding loading indicator to chart
* fixing uptime chart
* adding brush functionality to charts
* fixing refresh button and auto refresh function
* adding horizontal line to accordion section
* adding emptySection to dashboard page
* adding add data button
* adding resources section
* removing margins from horizontal rule
* changing min interval to 60s
* fixing empty section
* removing unnecessary code
* adding unit tests
* fixing imports
* adding initial story book for observability
* removeing uptime mock data
* fixing xDomain to show correct data on x-axis
* fixing empty state alignment
* adding story book and other improvements
* adding news component
* adding support to custom colors on EuiProgress and EuiStats
* removing infra mock data
* adding error message when api throwns an error
* adding alert section
* Adding alerts
* adding alert api call
* addressing PR comments
* adding storybook
* adding feedback button
* addressing PR comments
* chamging plugins return data
* fixing kibana app navigation
* fixing unit test
* fixing ts issues
* addressing PR comments
* using lodash truncate
* adding comment
* updating public documentation
* fixing alerts request
* fixing unit test
* fixing unit test
* aligin beta badge to the center
* adding moment duration to get the units as seconds
* addressing PR comments
* addressing PR comments
* Multiline kql bar
* fix id
* use visibility rather than display to hide stuff, cross fingers for tests
* another vis trick for tests
* quasi fix tests, still some failures
* caroline feedback
* fun!
* fix for mouse
* fix test
* check api
* fix unit test on query_string_input
* Fix cypress test
* handle the resize of the height of the textarea when the window have been resize
Co-authored-by: Xavier Mouligneau <189600+XavierM@users.noreply.github.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: Liza K <liza.katz@elastic.co>
* [search] Refactor the way search strategies are registered/retrieved on the server
* Fix types and tests and update docs
* Fix failing test
* Fix build of example plugin
* Fix functional test
* Make server strategies sync
* Move strategy name into options
* docs
* Remove FE strategies
* TypeScript of hell
delete search explorer
* Fix search interceptor OSS tests
* typos
* test cleanup
* Delete search example
fix interceptor async tests to use fake timers
* docs
* fix
* return search wrapper
* Update search interceptor tests and abort utils
* ts
* jest test fix
* code review
* change how logs consume search API
Co-authored-by: Lukas Olson <olson.lukas@gmail.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* add generic audit_trail service in core
* expose auditTraik service to plugins
* add auditTrail x-pack plugin
* fix type errors
* update mocks
* expose asScoped interface via start. auditor via request context
* use type from audit trail service
* wrap getActiveSpace in safeCall only. it throws exception for non-authz
* pass message to log explicitly
* update docs
* create one auditor per request
* wire es client up to auditor
* update docs
* withScope accepts only one scope
* use scoped client in context for callAsInternalUser
* use auditor in scoped cluster client
* adopt auditTrail plugin to new interface. configure log from config
* do not log audit events in console by default
* add audit trail functional tests
* cleanup
* add example
* add mocks for spaces plugin
* add unit tests
* update docs
* test description
* Apply suggestions from code review
apply @jportner suggestions
Co-authored-by: Joe Portner <5295965+jportner@users.noreply.github.com>
* add unit tests
* more robust tests
* make spaces optional
* address comments
* update docs
* fix WebStorm refactoring
Co-authored-by: Joe Portner <5295965+jportner@users.noreply.github.com>
* Draft ServiceNow generic implementation
* simple working servicenow incident per alert
* fixed running times
* rely on externalId for update incident on the next execution
* Added consumer to the action type to be able to split ServiceNow for Cases and Alerts
* Added subActions support for ServiceNow action form
* Basic version for Alerts part for ServiceNow
* Keep Case ServiceNow functionality working
* Revert changes on app_router
* Fixed type checks
* Fixed language check issues
* Fixed actions unit tests
* Fixed functional tests
* Fixed jest tests
* fixed tests
* Copied case mappings to alerting plugin
* made consumer optional
* Cleanup tests
* more cleanup
* Fixed jest tests and type checks
* fixed tests
* fixed servicenow validation tests
* Added ServiceNow unit tests
* Removed consumer for actions
* fixed client side isCaseOwned support
* fixed failing tests
* fixed jest tests
* Fixed URL validation
* fixed due to comments
* fixed tests
* fixed jest tests
* Fixed due to comments. Moved ServiceNow filtering in case plugin to server side
* fixed mock for ServiceNow
* fixed consumer config
* fixed test
* fixed type check
* Fixed jest test
* fixed type check
* chore(NA): upgrade oss to lodash4
chore(NA): migrate cli, cli_plugin, cli_keystore, dev, test_utils and apm src script to lodash4
chore(NA): missing file for cli plugin
chore(NA): add src core
chore(NA): es archiver and fixtures
chore(NA): try to fix functional test failure
chore(NA): migrate src/legacy entirely to lodash4 except src/legacy/core_plugins
chore(NA): move legacy core plugins to lodash4
chore(NA): upgrade optimize to lodash4
chore(NA): upgrade to lodash4 on advanced_settings, charts, console and dashboard
chore(NA): migrate to lodash4 on dev_tools, discover, embeddable, es_ui)shared, expressions, home plugins
chore(NA): upgrade data plugin to lodash4
chore(NA): upgrade usage_collection, ui_actions, tile_map, telemtry, share, saved_objects, saved_objects_management, region_map and navigation to lodash4
chore(NA): missing data upgrades to lodash4
Revert "chore(NA): upgrade usage_collection, ui_actions, tile_map, telemtry, share, saved_objects, saved_objects_management, region_map and navigation to lodash4"
This reverts commit 137055c5fed2fc52bb26547e0bc1ad2e3d4fe309.
Revert "Revert "chore(NA): upgrade usage_collection, ui_actions, tile_map, telemtry, share, saved_objects, saved_objects_management, region_map and navigation to lodash4""
This reverts commit f7e73688782998513d9fb6d7e8f0765e9beb28d1.
Revert "chore(NA): missing data upgrades to lodash4"
This reverts commit 92b85bf947a89bfc70cc4052738a6b2128ffb076.
Revert "chore(NA): upgrade data plugin to lodash4"
This reverts commit 88fdb075ee1e26c4ac979b6681d8a2b002df74c6.
chore(NA): upgrade idx_pattern_mgt, input_control_vis, inspector, kbn_legacy, kbn_react, kbn_usage_collections, kbn_utils, management and maps_legacy to lodash4
chore(NA): map src plugin data to lodash3
chore(NA): missing lodash.clonedeep dep
chore(NA): change packages kbn-config-schema deps
chore(NA): update renovate config
chore(NA): upgrade vis_type plugins to lodash4
chore(NA): move vis_type_vislib to lodash3
chore(NA): update visualizations and visualize to lodash4
chore(NA): remove lodash 3 types from src and move test to lodash4
chore(NA): move home, usage_collection and management to lodash 3
Revert "chore(NA): move home, usage_collection and management to lodash 3"
This reverts commit f86e8585f02d21550746569af54215b076a79a3d.
chore(NA): move kibana_legacy, saved_objects saved_objects_management into lodash3
chore(NA): update x-pack test to mock lodash4
Revert "chore(NA): move kibana_legacy, saved_objects saved_objects_management into lodash3"
This reverts commit 2d10fe450533e1b36db21d99cfae3ce996a244e0.
* chore(NA): move x-pack and packages to lodash 4
* chore(NA): remove mention to lodash from main package.json
* chore(NA): remove helper alias for lodash4 and make it the default lodash
* chore(NA): fix last failing types in the repo
* chore(NA): fix public api
* chore(NA): fix types for agg_row.tsx
* chore(NA): fix increment of optimizer modules in the rollup plugin
* chore(NA): migrate `src/core/public/http/fetch.ts` (#5)
* omit undefined query props
* just remove merge usage
* fix types
* chore(NA): fixes for feedback from apm team
* chore(NA): recover old behaviour on apm LoadingIndeicatorContext.tsx
* chore(NA): fixes for feedback from watson
* Platform lodash4 tweaks (#6)
* chore(NA): fix types and behaviour on src/core/server/elasticsearch/errors.ts
* Canvas fixes for lodash upgrade
* [APM] Adds unit test for APM service maps transform (#7)
* Adds a snapshot unit test for getConnections and rearranges some code to make testing easier
* reverts `ArrayList` back to `String[]` in the painless script within `fetch_service_paths_from_trace_ids.ts`
* chore(NA): update yarn.lock
* chore(NA): remove any and use a real type for alerts task runner
Co-authored-by: Gidi Meir Morris <github@gidi.io>
* chore(NA): used named import for triggers_actions_ui file
* chore(NA): fix eslint
* chore(NA): fix types
* Delete most uptime lodash references.
* Simplify. Clean up types.
* [Uptime] Delete most uptime lodash references (#8)
* Delete most uptime lodash references.
* Simplify. Clean up types.
* chore(NA): add eslint rule to avoid using lodash3
* chore(NA): apply changes on feedback from es-ui team
* fix some types (#9)
* Clean up some expressions types.
* chore(NA): missing ts-expect-error statements
* Upgrade lodash 4 vislib (#11)
* replace lodash 3 with lodash 4 on vislib plugin
* Further changes
* further replacement of lodash3 to 4
* further work on upgrading to lodash 4
* final changes to update lodash
* chore(NA): upgrade data plugin to lodash4
chore(NA): upgrade data plugin public to lodash4
chore(NA): fix typecheck task
chore(NA): fix agg_config with hasIn
chore(NA): assign to assignIn and has to hasIn
chore(NA): upgrade data plugin server to lodash4
chore(NA): new signature for core api
fix(NA): match behaviour between lodash3 and lodash4 for set in search_source
* chore(NA): remove lodash3 completely from the repo
* chore(NA): fix x-pack/test/api_integration/apis/metrics_ui/snapshot.ts missing content
* chore(NA): fix lodash usage on apm
* chore(NA): fix typecheck for maps
* Patch lodash template (#12)
* Applying changes from https://github.com/elastic/kibana/pull/64985
* Using isIterateeCall, because it seems less brittle
* Also patching `lodash/template` and `lodash/fp/template`
* Reorganizing some files...
* Revising comment
* Ends up `_` is a function also... I hate JavaScript
Co-authored-by: Pierre Gayvallet <pierre.gayvallet@gmail.com>
Co-authored-by: Josh Dover <me@joshdover.com>
Co-authored-by: Clint Andrew Hall <clint.hall@elastic.co>
Co-authored-by: Oliver Gupte <ogupte@users.noreply.github.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: Gidi Meir Morris <github@gidi.io>
Co-authored-by: Justin Kambic <justin.kambic@elastic.co>
Co-authored-by: Stratoula Kalafateli <stratoula1@gmail.com>
Co-authored-by: Luke Elmers <luke.elmers@elastic.co>
Co-authored-by: Brandon Kobel <brandon.kobel@gmail.com>
Co-authored-by: kobelb <brandon.kobel@elastic.co>
* Allow doc_values to be disabled
* Make doc_values optional
* doc_values type for CoreFieldMapping
* doc_values not doc_value
* Update docs
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* ts-ignore --> ts-expect-error
* fix error with mutable array
* fix errors in consumers code
* update SOM
* fix FeatureConfig & Feature compatibility
* do not re-export from code. it breaks built version
* update docs
* add eslint rule for platform team code
* remove test. this is covered by ts-expect-error in unit tests
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>