Commit graph

245 commits

Author SHA1 Message Date
Rodney Norris
2e4858b216
[Serverless Search] M0 Navigation (#157994)
## Summary

- Updates the project navigation to match latest design with a single
combined left nav
- Disables & removes `enterprise_search` plugin usage as we are not
linking to any ent-search pages for this milestone

*Note: the "Getting started" nav item will always show as active until
the Navigation component is updated to determine the selected nav item,
which will be done with other upcoming work.

## Screenshots

![image](fc54e4c3-a264-493c-bf1e-e5ae45126aeb)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-17 11:40:40 -05:00
Katerina Patticha
1f99a04134
[Observability] Add side navigation for serverless observability (#157360)
## Summary

The PR introduces the first iteration of the side navigation bar for
serverless observability. Part of
https://github.com/elastic/kibana/issues/153777

### Run locally

```
yarn serverless-oblt
```

#### Screenshots 


![image](b4a8a4d8-f18e-41e8-bf0e-798a75848885)



39ded143-0d4b-4ea6-9534-0ca87b80662d




### Fixes
- Fix rendering the icon for the nested navigation items  
-
24ee4dc616

### Notes

- There is an issue where the selected navigation item is not properly
highlighted and loses focus when the user clicks anywhere else on the
page. (atm out of the scope of the PR)
- The navigation tree is subject to change as there is an ongoing
discussion about the naming and order

---------

Co-authored-by: Søren Louv-Jansen <soren.louv@elastic.co>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-12 20:14:48 +02:00
Giuseppe Santoro
8df9c0489c
[Fleet] [Serverless] Disable Agent ID verification for Observability projects (#157400)
## Summary

We want to disable agentIdVerification to get rid of the final pipeline
for the o11y project type in the serverless solution
2023-05-12 12:40:33 +01:00
Sander Philipse
faa79e6bbe
[Serverless Search] Create overview page (#157021)
## Summary

This adds the basics of the planned Serverless Search overview page to
the Serverless Search plugin.

I added these pages to the `serverless_search` plugin rather than rely
on the existing Enterprise Search plugin for a few reasons:
1) These pages don't need any of the overhead and frameworks we've built
into the Enterprise Search plugin, keeping it in its own plugin makes
this much lighter-weight and easier to maintain and decouple.
2) This is all specific to Serverless Search, and won't be used in
Enterprise Search (at least for the foreseeable future).

There's still quite a lot that needs to be added:
1) A bottom section with links to specific pages elsewhere in Kibana. 
2) A section to create API keys
3) The integration links still need to go somewhere
4) This page needs some work on smaller screens, and the sidebar
overlaps the content on smaller screens.


https://user-images.githubusercontent.com/94373878/236879351-13af0162-4510-4bb0-a815-afa61249542c.mov


### Checklist

Delete any items that are not applicable to this PR.

- [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/main/packages/kbn-i18n/README.md)
- [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))
- [ ] 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)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-10 20:00:57 +02:00
Christiane (Tina) Heiligers
7bbe92f085
Enables preventing access to internal APIs (#156935)
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-10 04:25:15 -07:00
Alejandro Fernández Haro
937f8ed3cb
[Serverless] Telemetry default config (#156874) 2023-05-09 00:50:29 +02:00
Clint Andrew Hall
b217dbf001
[serverless] Create Security Serverless plugin (#156104)
> Derived from https://github.com/elastic/kibana/pull/153274
> Builds upon https://github.com/elastic/kibana/pull/155582

## Summary

This PR creates the Serverless Security plugin, based on the work from
https://github.com/elastic/kibana/pull/153274:

- creates the plugin,
- adds API to hide the solution navigation from Security,
- calls that API if the chrome style is `project`.

<img width="1688" alt="Screenshot 2023-04-27 at 12 37 46 PM"
src="https://user-images.githubusercontent.com/297604/234979670-425bfb12-8194-4916-8f92-efff7804b577.png">

## Next Steps

- render the left nav from https://github.com/elastic/kibana/pull/153274
using an API provided by @elastic/appex-sharedux
  - this low-level API should be coming in the next few days.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-02 05:42:55 -07:00
Clint Andrew Hall
4e88645b59
[serverless] Create Observability Serverless plugin (#156118)
> Derived from https://github.com/elastic/kibana/pull/153274
> Builds upon https://github.com/elastic/kibana/pull/155582

## Summary

This PR creates the Serverless Observability plugin, based on the work
from https://github.com/elastic/kibana/pull/153274:

- creates the plugin,
- adds API to hide the solution navigation from Enterprise Search,
- calls that API if the chrome style is `project`.

<img width="1610" alt="Screenshot 2023-04-27 at 5 03 44 PM"
src="https://user-images.githubusercontent.com/297604/234990765-d6770650-41b3-4e94-ad7f-c6a22778d39a.png">

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-01 09:27:32 +02:00
Clint Andrew Hall
965b327ca6
[serverless] Create Search Serverless plugin (#156037) 2023-04-27 21:49:59 -04:00
Alejandro Fernández Haro
de64ff5edf
[Serverless] Select project type via config (#155754) 2023-04-26 22:49:44 -06:00
Clint Andrew Hall
8e37b38417
[serverless] Create the Serverless Plugin (#155582)
> Derived from https://github.com/elastic/kibana/pull/153274 for
production.

## Summary

This PR creates the `serverless` plugin for Kibana Serverless projects.


![image](https://user-images.githubusercontent.com/297604/233892935-b3713575-a2f7-4e82-a9dd-e8c11823683f.png)


It uses the methodology proven out in the proof-of-concept
(https://github.com/elastic/kibana/pull/153274) and prepares it for
production:

- Adds chrome style and related API to the `chrome` services.
- Creates the `serverless` plugin.
- Invokes the new chrome style API for all serverless projects.
- Alters `yarn` scripts to support all project types, and switching
between them.
- Creates the new "Project Switcher" component for use in the new chrome
header for Serverless.
- Creates a Storybook config for this and future components.
- Adds API endpoint to trigger project switching and `Watcher` restarts.

<img width="1598" alt="Screenshot 2023-04-26 at 10 44 01 AM"
src="https://user-images.githubusercontent.com/297604/234612654-fdcf38ea-8c48-4066-bc85-507f40c984aa.png">


## Next steps

- [x] Creating a PR for enabling/disabling related plugins for
Serverless. (https://github.com/elastic/kibana/pull/155583)
- [ ] Creating product plugin PR based on
https://github.com/elastic/kibana/pull/153274.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-04-26 11:48:23 -07:00
Clint Andrew Hall
6690c445e3
[serverless] Add ability to disable certain plugins for Serverless. (#155583)
> Derived from https://github.com/elastic/kibana/pull/153274

## Summary

This PR extracts configuration settings for enabling/disabling plugins
in Serverless projects based on current requirements.

It seemed prudent to create an independent PR to K.I.S.S, rather than
include in PRs with more ornate changes, (e.g.
https://github.com/elastic/kibana/pull/155582)
2023-04-26 13:44:31 -04:00
Marco Antonio Ghiani
b40b89e711
[Logs UI] Redirect Logs UI to Discover when in serverless mode (#154145)
## 📓 Summary

Closes #153890

The implementation creates a new LogsApp service where we should keep
any logic concerned with what `target_app` parameter is configured and
the actions related to a specific configuration. I thought it could be a
good approach to avoid drilling down the global config till we need it
and keep it cleaner by injecting only the service with predefined
actions.

In this first case, we create a redirect to discover using its locator,
and the exposed method can be used anywhere across the app for
triggering the redirect.

## 🧪 Testing

### Normal behaviour

When Kibana is used as always, we want to keep the current behaviour and
the user will stay on the Logs UI pages.
- Launch the Kibana dev environment with `yarn start`
- Navigate to Logs UI
- Verify the navigation works normally and that no redirect to Discover
occurs

### Serverless behaviour

When Kibana is used in serverless mode, we want to redirect any user
landing to Logs UI to the Discover page, configuring the same data view
or creating an ad-hoc one starting from the index pattern
- Launch the Kibana dev environment with `yarn serverless-oblt`
- Navigate to Logs UI
- Verify to be redirected to Discover and a temporary data view is
created from the current index pattern

---------

Co-authored-by: Marco Antonio Ghiani <marcoantonio.ghiani@elastic.co>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-04-19 08:30:45 -07:00
Nicolas Chaulet
394174eedf
[Fleet] Disable ILM policy in serverless (#154460) 2023-04-10 09:38:45 -07:00
Nicolas Chaulet
4c6779429c
[Fleet] Configure Fleet for serverless (#152712) 2023-03-07 08:59:53 -05:00
Spencer
065dbe759c
[serverless] split serverless config files (#150616)
We are currently expecting serverless environments to be broken up into
several different envs, this config structure allows us to customize the
config based on that environment without major modifications to the
config loading system.
2023-02-08 13:28:47 -07:00
Spencer
e07a65ef05
[serverless] add support for loading serverless specific config locally (#149878)
This adds the `--serverless` CLI arg (only available in dev mode, you
can also use `yarn start-serverless`), which will load the new
`config/kibana.serverless.yml` file. For now, this file is not included
in the build artifact, though we might include a `--serverless` flag
which replaces the `kibana.yml` file with `kibana.serverless.yml`.
@jbudz will follow up after this PR with the build related changes to
get this working with PR cloud deploys, which will be enough changes for
us to start iterating on UI specific changes based on running in a
serverless environment.

Additionally, support for the undocumented `KBN_CONFIG_PATHS` env var is
added, which should contain a comma-separated list of paths to kibana
config files. These files are loaded, in the specified order, before any
of the config files listed in the CLI but after the kibana.yml config
file.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-01-30 15:12:46 -07:00
Nodir Latipov
7c01257055
[Unified Search] Move autocomplete logic to unified search plugin (#129977)
* feat: move autocomplete logic from data plugin to unified search

* minor fix after comments

* updated Documentation: data.autocomplete -> unifiedSearch.autocomplete

* changed renameFromRoot order for autocomplete

* removed extra renameFromRoot in config deprecations, updated test

* added configPath for unified search plugin

* Update kibana.json

* updated path to autocomplete

* fix conflict

* fix conflict

* [CI] Auto-commit changed files from 'node scripts/eslint --no-cache --fix'

* fix Linting

* fix functional_with_es_ssl test
2022-04-22 11:02:56 +05:00
Gerard Soldevila
bbddc4233b
Allow customizing ES client maxSockets (#126937)
* Allow customizing ES client maxSockets

* Make maxSockets required (schema defaults to Infinity)

* Fix UTs

* Misc tweaks + extra UTs

* Update asciidoc

* Code cleanup

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2022-03-16 11:16:22 -07:00
Ahmad Bamieh
ccf961f8b7
[i18n] Integrate 8.2.0 Translations (#127309) 2022-03-10 13:40:10 +02:00
Pierre Gayvallet
1eea7a32d4
Allow to enable compression for communications with ES (#124009)
* Allow to enable compression for communications with ES

* update generated doc

* fix types in test

* update another snapshot
2022-02-01 08:02:29 +01:00
Rudolf Meijering
9ec41f70a0
Fix elasticsearch.queries -> elasticsearch.query (#119941)
* Fix elasticsearch.queries -> elasticsearch.query

* Fix another elasticsearch.queries -> elasticsearch.query
2021-11-30 13:39:06 +01:00
Christiane (Tina) Heiligers
29382a0608
Update default kibana.yml-follow up (#117676)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-11-05 19:07:30 +00:00
Christiane (Tina) Heiligers
ff7e77ad54
Updates and refactors main config (#117597) 2021-11-05 07:22:49 -07:00
Pierre Gayvallet
106183551a
[8.0] remove kibana.index config property (#112773)
* remove kibana config

* remove kibanaConfig usages

* prettier fix

* fix some globalConfig.kibana.index access

* fix xpack_legacy globalConfig usage

* fix home globalConfig usage

* fix canvas globalConfig usage

* fix action globalConfig usage

* fix (all?) remaining usages

* fix more plugins

* fix more plugins bis

* yet more usages

* fix ml usages

* fix security_solution

* fix lens

* fix monitoring

* remove from settings docs

* move doc update

* fix unit tests

* update generated doc

* improve test

* adapt new usage in security_solution

* fix security_solution config

* fix createConfig, again

* fix mock config
2021-10-25 14:25:24 -07:00
Jonathan Budzenski
7d66002da2
Bump node to 16.11.1 (#110684)
* Bump node to ^16

* fix comment

* use jest timers

* bump mock-fs

* Fix core type errors

* Unskipping tests that work on my machine

* skip new unhandled promise rejection

* Fix Nodejs v16 regression due to https://github.com/nodejs/node/issues/38924

* Fix failing concurrent connections collector test

* Fix types after merge from master

* update servicenow test

* Skip unhandledRejection tests

* Skip tests with unhandled promise rejection

* Fix discover jest failures

* bump node to 16.11.1

* revert timeout increase

* skip unhandled promise rejection

* rm jest import

* skip unhandled promise rejection

Co-authored-by: Rudolf Meijering <skaapgif@gmail.com>
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Tim Roes <tim.roes@elastic.co>
2021-10-16 16:21:58 -05:00
Pierre Gayvallet
21c3675caf
fix default appender config example (#115159)
* fix default appender config example

* fix doc examples

* use json layout in example
2021-10-15 16:24:05 +02:00
Jonathan Budzenski
9df3db075f
[config] Remove leading spaces from logging configuration (#114168)
* [config] Remove leading spaces from logging configuration

This is a consistency check with other areas of the stack and other
configurations in kibana.yml.

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

* Update kibana.yml
2021-10-06 17:46:33 -05:00
Pierre Gayvallet
a4b74bd398
[8.0] Remove legacy logging (#112305)
* remove kbn-legacy-logging package

* remove legacy service

* remove legacy appender

* remove LegacyObjectToConfigAdapter

* gix types

* remove @hapi/good / @hapi/good-squeeze / @hapi/podium

* remove `default` appender validation for `root` logger

* remove old config key from kibana-docker

* fix FTR config

* fix dev server

* remove reference from readme

* fix unit test

* clean CLI args and remove quiet option

* fix type

* fix status test config

* remove from test config

* fix snapshot

* use another regexp

* update generated doc

* fix createRootWithSettings

* fix some integration tests

* another IT fix

* yet another IT fix

* (will be reverted) add assertion for CI failure

* Revert "(will be reverted) add assertion for CI failure"

This reverts commit 78d5560f9e.

* switch back to json layout for test

* remove legacy logging config deprecations

* address some review comments

* update documentation

* update kibana.yml config examples

* add config example for `metrics.ops`

Co-authored-by: Tyler Smalley <tyler.smalley@elastic.co>
2021-10-05 13:30:56 +02:00
Larry Gregory
76f49565c1
Support authenticating to Elasticsearch via service account tokens (#102121)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-07-12 14:18:35 -04:00
Joe Portner
978f5eca5a
Add config properties for HTTP security headers (#97158) 2021-04-19 13:12:45 -04:00
Josh Dover
e116fce08e
Add server.publicBaseUrl config (#85075) 2020-12-08 17:02:39 -07:00
Jonathan Budzenski
b5e6d7c29d
[deb/rpm] Remove /var prefix from tmpfiles.d (#82196)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2020-11-09 10:05:26 -06:00
Rudolf Meijering
f8d796aec6
Remove unused elasticsearch.preserverHost setting (#78608)
* Remove unused elasticsearch.preserverHost setting

* deprecate and remove elasticsearch.startupTimeout config
2020-09-30 10:39:08 +02:00
Tiago Costa
24edc804c9
Node options from cfg file for production (#62468)
* 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>
2020-07-13 16:30:03 +01:00
Ryder Timberlake
7071fac36a
Fix typos (#66984)
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2020-05-27 13:44:41 -06:00
Larry Gregory
6a6deef151
Deprecate kibana user in favor of kibana_system user (#63186) 2020-05-05 11:36:40 -04:00
Vignesh Shanmugam
254b18c20b
Instrument Kibana with APM RUM agent (#44281)
* Instrument Kibana with APM RUM agent

* make route-change transaction work with properl url

* extract page-load transaction url from app link

* check if app is hidden and set active:false

* make distributed tracing work and merge config

* remove config/apm.js and address review

* address review comments

* add apm.js to build tassks

* move apm from dev to src

* add @types/hoist-non-react-statics which is required by react rum

* apply changes correctly from master
2019-12-18 12:16:15 +01:00
Thomas Watson
f8ba2fdd78
Hide stderr git output during APM agent configuration (#52878) 2019-12-12 16:00:07 +01:00
Thomas Watson
95e5edd9c4
Instrument Kibana with Elastic APM (#43548)
Instruments Kibana with Elastic APM by adding the Node.js agent to the
source code. The agent is not turned on by default but can be enabled by
setting the environment variable `ELASTIC_APM_ACTIVE=true` or by
creating an apm config file called `config/apm.dev.js` and setting
`active: true` inside of it.

This implementation is not meant to be used by end-users of Kibana as it
lacks integration with the regular Kibana config file. For now, this is
meant as a useful internal tool for Elastic employees when developing
Kibana.

By default, it's pre-configured with a `serverUrl` pointing to an APM
Server hosted on Elastic Cloud. The data is stored in an ES cluster
accessible only by Elastic employees. These defaults can easily be
overwritten using environment variables or via the custom config file.
2019-12-04 15:21:07 +01:00
Brandon Kobel
1883f4c904
Update kibana.yml explanation of elasticsearch.ssl (#51451) 2019-12-02 12:31:03 -05:00
Brandon Kobel
9acc18095b
Fixing kibana.yml doc comments for elasticsearch.ssl.certificate/key (#49262) 2019-10-25 08:23:09 -07:00
Larry Gregory
0bfa7ca5c6
Support space-specific default routes (#44678) 2019-10-02 12:05:02 -04:00
Ahmad Bamieh
81153c2a22
[i18n] .i18nrc file as the source of truth and enhance tooling (#39774)
* scan node_modules/@kbn directory for i18n

* remove es-lint-disable-next line

* update paths

* look inside .i18nrc.json instead of traversing files

* split .i18nrc file and enhance i18n tooling

* checkout master kibana config

* include x-pack/.i18nrc.json file

* remove unused import

* fix i18n_integrate

* fix i18n_integrate

* code review changes

* code review changes

* try using scanDir

* revert to using concat

* add config type

* code review fixes

* finalize PR

* revert kibana.yml
2019-07-21 15:06:03 +03:00
Martin Liu
375f6a2c69 Add language codes in comment (#37635)
It would be good to see a list here, as long as we will add more languages. 
A user will not have to look into any other document to find a language code.
That will be more easier for any one who configure this file.
2019-06-06 16:41:01 -07:00
Brandon Kobel
610c132bcc
Changing the example elasticsearch.username to "kibana" (#37717)
According to @tvernum, this is a common source of misconfiguration.
Since we already recommend that users use the `kibana` reserved user for
this setting, this should hopefully help some users out.
2019-06-03 07:25:33 -07:00
Mat Schaffer
87f1befd18
Swap defaultAddId with defaultRoute in example config (#28547)
Connected to https://github.com/elastic/kibana/issues/6902
2019-03-08 14:38:31 +09:00
Jonathan Budzenski
b5b64f4706
Support for multiple Elasticsearch nodes and sniffing (#21928)
* Node sniffing

* update monitoring

* cleaning

* remove tests

* rewrite tests using the proxy

* fix monitoring mocha tests

* fix payload

* return full error

* default interval false

* add sniff settings to monitoring

* add docs for sniff settings

* re-add index search integration test

* catch parse error

* capital

* fix merge

* hapi upgrade

* return

* pass by prefix

* rm empty test fille

* split error handling

* fix merge

* update recent elasticsearch.url references

* prettier vs eslint

* transport.request, include query params

* mega comment

* revert elasticsearchUrl

* safe hosts

* more docs es.url references

* remove unused ml/esServerUrl

* log if both set
2018-12-18 13:22:43 -06:00
Aliaksandr Yankouski
9f3e36b170
Set kibana locale in kibana.yml config (#21201)
* set kibana locale in kibana.yml config

* remove accept-language-parser

* remove unnecessary tests

* fix readme description, fix description for locale in kibana.yml

* add point, that i18n.locale option should have exact match

* update kbn/i18n README

* Update README.md

* use getUiTranslations in render_mixin, remove i18n_mixin

* move registering translation files to mixin function
2018-08-02 14:43:22 +03:00
Nathan Reese
20dcfb10af
add logQueries to docs (#19456)
* add logQueries to docs

* remove extra space

* logQuerie => logQueries

* better working

* use code font for logging.verbose and true, remove x-pack in front of monitoring
2018-05-29 10:44:51 -06:00