Skip to content

Commit 817da86

Browse files
committed
Merge remote-tracking branch 'upstream/7.x' into backport/7.x/pr-91863
2 parents d54a6fc + c06dc55 commit 817da86

File tree

1,137 files changed

+23942
-12740
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,137 files changed

+23942
-12740
lines changed

.ci/Jenkinsfile_baseline_capture

Lines changed: 35 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -3,40 +3,48 @@
33
library 'kibana-pipeline-library'
44
kibanaLibrary.load()
55

6-
kibanaPipeline(timeoutMinutes: 120) {
6+
kibanaPipeline(timeoutMinutes: 210) {
77
githubCommitStatus.trackBuild(params.commit, 'kibana-ci-baseline') {
88
ciStats.trackBuild {
9-
catchError {
10-
withEnv([
11-
'CI_PARALLEL_PROCESS_NUMBER=1'
12-
]) {
13-
parallel([
14-
'oss-baseline': {
15-
workers.ci(name: 'oss-baseline', size: 'l', ramDisk: true, runErrorReporter: false, bootstrapped: false) {
16-
// bootstrap ourselves, but with the env needed to upload the ts refs cache
17-
withGcpServiceAccount.fromVaultSecret('secret/kibana-issues/dev/ci-artifacts-key', 'value') {
18-
withEnv([
19-
'BUILD_TS_REFS_CACHE_ENABLE=true',
20-
'BUILD_TS_REFS_CACHE_CAPTURE=true'
21-
]) {
22-
kibanaPipeline.doSetup()
23-
}
24-
}
9+
catchErrors {
10+
slackNotifications.onFailure(
11+
title: "*<${env.BUILD_URL}|[${params.branch}] Baseline Capture Failure>*",
12+
message: "[${params.branch}/${params.commit}] Baseline Capture Failure",
13+
) {
14+
retryable.enable(2)
2515

26-
kibanaPipeline.functionalTestProcess('oss-baseline', './test/scripts/jenkins_baseline.sh')()
16+
catchErrors {
17+
workers.ci(
18+
name: 'baseline-worker',
19+
size: 'xl',
20+
ramDisk: true,
21+
runErrorReporter: false,
22+
bootstrapped: false
23+
) {
24+
withGcpServiceAccount.fromVaultSecret('secret/kibana-issues/dev/ci-artifacts-key', 'value') {
25+
withEnv([
26+
'BUILD_TS_REFS_CACHE_ENABLE=true',
27+
'BUILD_TS_REFS_CACHE_CAPTURE=true',
28+
'DISABLE_BOOTSTRAP_VALIDATIONS=true',
29+
]) {
30+
kibanaPipeline.doSetup()
31+
}
2732
}
28-
},
29-
'xpack-baseline': {
30-
workers.ci(name: 'xpack-baseline', size: 'l', ramDisk: true, runErrorReporter: false) {
31-
kibanaPipeline.functionalTestProcess('xpack-baseline', './test/scripts/jenkins_xpack_baseline.sh')()
33+
34+
kibanaPipeline.withCiTaskQueue([parallel: 2]) {
35+
catchErrors {
36+
tasks([
37+
kibanaPipeline.functionalTestProcess('oss-baseline', './test/scripts/jenkins_baseline.sh'),
38+
kibanaPipeline.functionalTestProcess('xpack-baseline', './test/scripts/jenkins_xpack_baseline.sh'),
39+
])
40+
}
3241
}
33-
},
34-
])
42+
}
43+
}
3544
}
3645
}
37-
38-
kibanaPipeline.sendMail()
39-
slackNotifications.onFailure()
4046
}
47+
48+
kibanaPipeline.sendMail()
4149
}
4250
}

.telemetryrc.json

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,6 @@
22
{
33
"output": "src/plugins/telemetry/schema/oss_plugins.json",
44
"root": "src/plugins/",
5-
"exclude": [
6-
"src/plugins/kibana_react/",
7-
"src/plugins/testbed/",
8-
"src/plugins/kibana_utils/"
9-
]
10-
},
11-
{
12-
"output": "src/plugins/telemetry/schema/legacy_plugins.json",
13-
"root": "src/legacy/server/",
145
"exclude": []
156
}
167
]

dev_docs/building_blocks.mdx

Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
---
2+
id: kibBuildingBlocks
3+
slug: /kibana-dev-docs/building-blocks
4+
title: Building blocks
5+
summary: Consider these building blocks when developing your plugin.
6+
date: 2021-02-24
7+
tags: ['kibana','onboarding', 'dev', 'architecture']
8+
---
9+
10+
When building a plugin in Kibana, there are a handful of architectural "building blocks" you can use. Some of these building blocks are "higher-level",
11+
and some are "lower-level". High-level building blocks come
12+
with many built-in capabilities, require less maintenance, and evolve new feature sets over time with little to no
13+
impact on consumers. When developers use high-level building blocks, new features are exposed consistently, across all of Kibana, at the same time.
14+
On the downside, they are not as flexible as our low-level building blocks.
15+
16+
Low-level building blocks
17+
provide greater flexibility, but require more code to stitch them together into a meaningful UX. This results in higher maintenance cost for consumers and greater UI/UX variability
18+
across Kibana.
19+
20+
For example, if an application is using <DocLink id="kibBuildingBlocks" section="index-patterns" text="Index Patterns"/> and
21+
<DocLink id="kibBuildingBlocks" section="search-source" text="Search Source"/>,
22+
their application would automatically support runtime fields. If the app is instead using the
23+
lower-level <DocLink id="kibBuildingBlocks" section="search-strategy" text="Search Strategy"/>, additional work would be required.
24+
25+
Armed with this knowledge, you can choose what works best for your use case!
26+
27+
# Application building blocks
28+
29+
## UI components
30+
31+
The following high-level building blocks can be rendered directly into your application UI.
32+
33+
### Query Bar
34+
35+
The <DocLink id="kibDataPlugin" text="Data plugin"/> provides a high-level Query Bar component that comes with support for Lucene, KQL, Saved Queries,
36+
and <DocLink id="kibBuildingBlocks" section="index-patterns" text="Index Patterns"/>.
37+
38+
If you would like to expose the ability to search and filter on Elasticsearch data, the Query Bar provided by the
39+
<DocLink id="kibDataPlugin" text="Data plugin"/>
40+
is your go-to building block.
41+
42+
**Github labels**: `Team:AppServices`, `Feature:QueryBar`
43+
44+
### Dashboard Embeddable
45+
46+
Add a Dashboard Embeddable directly inside your application to provide users with a set of visualizations and graphs that work seamlessly
47+
with the <DocLink id="kibBuildingBlocks" section="query-bar" text="Query Bar"/>. Every feature that is added to a registered
48+
<DocLink id="kibBuildingBlocks" section="embeddables" text="Embeddable"/>
49+
(Lens, Maps, Saved Searches and more) will be available automatically, as well as any
50+
<DocLink id="kibBuildingBlocks" section="ui-actions--triggers" text="UI Actions"/> that are
51+
added to the Embeddable context menu panel (for example, drilldowns, custom panel time ranges, and "share to" features).
52+
53+
The Dashboard Embeddable is one of the highest-level UI components you can add to your application.
54+
55+
**Github labels**: `Team:Presentation`, `Feature:Dashboard`
56+
57+
### Lens Embeddable
58+
59+
Check out the Lens Embeddable if you wish to show users visualizations based on Elasticsearch data without worrying about query building and chart rendering. It's built on top of the
60+
<DocLink id="kibBuildingBlocks" section="expressions" text="Expression language"/>, and integrates with
61+
<DocLink id="kibBuildingBlocks" section="index-patterns" text="Index Patterns"/>
62+
and <DocLink id="kibBuildingBlocks" section="ui-actions--triggers" text="UI Actions"/>. Using the same configuration, it's also possible to link to
63+
a prefilled Lens editor, allowing the user to drill deeper and explore their data.
64+
65+
**Github labels**: `Team:KibanaApp`, `Feature:Lens`
66+
67+
### Map Embeddable
68+
69+
Check out the Map Embeddable if you wish to embed a map in your application.
70+
71+
**Github labels**: `Team:Geo`
72+
73+
## Searching
74+
75+
### Index Patterns
76+
77+
<DocLink id="kibDataPlugin" section="index-patterns-api" text="Index Patterns"/> are a high-level, space-aware abstraction layer that sits
78+
above Data Streams and Elasticsearch indices. Index Patterns provide users the
79+
ability to define and customize the data they wish to search and filter on, on a per-space basis. For example, users can specify a set of indices,
80+
and they can customize the field list with runtime fields, formatting options and custom labels.
81+
82+
Index Patterns are used in many other high-level building blocks so we highly recommend you consider this building block for your search needs.
83+
84+
**Github labels**: `Team:AppServices`, `Feature:Index Patterns`
85+
86+
### Search Source
87+
88+
<DocLink id="kibDataPlugin" section="searchsource" text="Search Source"/> is a high-level search service offered by the
89+
<DocLink id="kibDataPlugin" section="searchsource" text="Data plugin"/>. It requires an
90+
<DocLink id="kibBuildingBlocks" section="index-patterns" text="Index Pattern"/>, and abstracts away the raw ES DSL and search endpoint. Internally
91+
it uses the ES <DocLink id="kibBuildingBlocks" section="search-strategies" text="Search Strategy"/>. Use Search Source if you need to query data
92+
from Elasticsearch, and you aren't already using one of the high-level UI Components that handles this internally.
93+
94+
**Github labels**: `Team:AppServices`, `Feature:Search`
95+
96+
### Search Strategies
97+
98+
Search Strategies are a low-level building block that abstracts away search details, like what REST endpoint is being called. The ES Search Strategy
99+
is a very lightweight abstraction layer that sits just above querying ES with the elasticsearch-js client. Other search stragies are offered for other
100+
languages, like EQL and SQL. These are very low-level building blocks so expect a lot of glue work to make these work with the higher-level abstractions.
101+
102+
**Github labels**: `Team:AppServices`, `Feature:Search`
103+
104+
### Expressions
105+
106+
Expressions are a low-level building block that can be used if you have advanced search needs that requiring piping results into additional functionality, like
107+
joining and manipulating data. Lens and Canvas are built on top of Expressions. Most developers should be able to use
108+
<DocLink id="kibBuildingBlocks" section="lens-embeddable" text="Lens"/> or
109+
<DocLink id="kibBuildingBlocks" section="search-source" text="Search Source"/>, rather than need to access the Expression language directly.
110+
111+
**Github labels**: `Team:AppServices`, `Feature:ExpressionLanguage`
112+
113+
## Saved Objects
114+
115+
<DocLink id="kibDevDocsSavedObjectsIntro" text="Saved Objects" /> should be used if you need to persist application-level information. If you were building a TODO
116+
application, each TODO item would be a `Saved Object`. Saved objects come pre-wired with support for bulk export/import, security features like space sharing and
117+
space isolation, and tags.
118+
119+
**Github labels**: `Team:Core`, `Feature:Saved Objects`
120+
121+
# Integration building blocks
122+
123+
Use the following building blocks to create an inter-connected, cross-application, holistic Kibana experience. These building blocks allow you to expose functionality
124+
that promotes your own application into other applications, as well as help developers of other applications integrate into your app.
125+
126+
## UI Actions & Triggers
127+
128+
Integrate custom actions into other applications by registering UI Actions attached to existing triggers. For example, the Maps
129+
application could register a UI Action called "View in Maps" to appear any time the user clicked a geo field to filter on.
130+
131+
**Github labels**: `Team:AppServices`, `Feature:UIActions`
132+
133+
## Embeddables
134+
135+
Embeddables help you integrate your application with the Dashboard application. Register your custom UI Widget as an Embeddable and users will
136+
be able to add it as a panel on a Dashboard. With a little extra work, it can also be exposed in Canvas workpads.
137+
138+
**Github labels**: `Team:AppServices`, `Feature:Embeddables`

docs/action-type-template.asciidoc

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
[[<ACTION-TYPE>-action-type]]
2+
=== <ACTION-TYPE> action
3+
++++
4+
<titleabbrev><ACTION-TYPE></titleabbrev>
5+
++++
6+
7+
Include a short description of the action type.
8+
9+
[float]
10+
[[<ACTION-TYPE>-connector-configuration]]
11+
==== Connector configuration
12+
13+
<ACTION-TYPE> connectors have the following configuration properties.
14+
15+
////
16+
List of user-facing connector configurations. This should align with the fields available in the Create connector flyout form for this action type.
17+
////
18+
19+
Property1:: A short description of this property.
20+
Property2:: A short description of this property with format hints. This can be specified in `this specific format`.
21+
22+
[float]
23+
[[Preconfigured-<ACTION-TYPE>-configuration]]
24+
==== Preconfigured action type
25+
26+
////
27+
Example preconfigured format for this action type
28+
////
29+
30+
[source,text]
31+
--
32+
my-<ACTION-TYPE>:
33+
name: preconfigured-<ACTION-TYPE>-action-type
34+
actionTypeId: .<ACTION-TYPE>
35+
config:
36+
property1: value1
37+
property2: value2
38+
secrets:
39+
property3: value3
40+
--
41+
42+
[float]
43+
[[<ACTION-TYPE>-connector-config-properties]]
44+
////
45+
List of properties from the ConfigSchema and SecretsSchema for this action type.
46+
////
47+
Config defines information for the action type.
48+
49+
`property1`:: A short description of this property.
50+
`property2`:: A short descriptionn of this property.
51+
52+
Secrets defines sensitive information for the action type.
53+
54+
`property3`:: A short descriptionn of this property.
55+
56+
[float]
57+
[[<ACTION-TYPE>-action-configuration]]
58+
==== Action configuration
59+
60+
<ACTION-TYPE> actions have the following configuration properties.
61+
62+
////
63+
List of user-facing action configurations. This should align with the fields available in the Action section of the Create/Update alert flyout.
64+
////
65+
66+
Property1:: A short description of this property.
67+
Property2:: A short description of this property with format hints. This can be specified in `this specific format`.
68+
69+
////
70+
Optional - additional configuration details here
71+
[[configuring-<ACTION-TYPE>]]
72+
==== Configure <ACTION-TYPE>
73+
////

docs/alert-type-template.asciidoc

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
[[alert-type-<ALERT TYPE>]]
2+
=== <ALERT TYPE>
3+
4+
Include a short description of the alert type.
5+
6+
[float]
7+
==== Create the alert
8+
9+
Fill in the <<defining-alerts-general-details, alert details>>, then select *<ALERT TYPE>*.
10+
11+
[float]
12+
==== Define the conditions
13+
14+
Define properties to detect the condition.
15+
16+
////
17+
Optional, include a screenshot
18+
[role="screenshot"]
19+
image::user/alerting/images/alert-types-<ALERT TYPE>-conditions.png[Conditions for <ALERT TYPE> alert type]
20+
////
21+
22+
Condition1:: This is a condition the user must define.
23+
Condition2:: This is another condition the user must define.
24+
25+
[float]
26+
==== Add action variables
27+
28+
<<defining-alerts-actions-details, Add an action>> to run when the alert condition is met. The following variables are specific to the <ALERT TYPE> alert. You can also specify <<defining-alerts-actions-variables, variables common to all alerts>>.
29+
30+
`context.variableA`:: A short description of the context variable defined by the alert type.
31+
`context.variableB`:: A short description of the context variable defined by the alert type with an example. Example: `this is what variableB outputs`.
32+
33+
////
34+
Optional, include a step-by-step example for creating this alert
35+
[float]
36+
==== Example
37+
38+
In this section, you will use the {kib} <<add-sample-data, weblog sample dataset>> to setup and tune the conditions on an <ALERT TYPE> alert. For this example, we want to detect when <DESCRIBE THE CONDITIONS>.
39+
////

docs/developer/plugin-list.asciidoc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ NOTE:
2727
2828
2929
|{kib-repo}blob/{branch}/src/plugins/apm_oss/README.asciidoc[apmOss]
30+
|undefined
31+
3032
3133
|{kib-repo}blob/{branch}/src/plugins/bfetch/README.md[bfetch]
3234
|bfetch allows to batch HTTP requests and streams responses back.

docs/management/advanced-options.asciidoc

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,10 @@ specific dashboard, application, or saved object as they enter each space.
8383
[[fields-popularlimit]]`fields:popularLimit`::
8484
The top N most popular fields to show.
8585

86+
[[fileupload-maxfilesize]]`fileUpload:maxFileSize`::
87+
Sets the file size limit when importing files. The default
88+
value is `100MB`. The highest supported value for this setting is `1GB`.
89+
8690
[[filtereditor-suggestvalues]]`filterEditor:suggestValues`::
8791
Set this property to `false` to prevent the filter editor from suggesting values
8892
for fields.
@@ -258,7 +262,7 @@ Hides the "Time" column in *Discover* and in all saved searches on dashboards.
258262
Highlights results in *Discover* and saved searches on dashboards. Highlighting
259263
slows requests when working on big documents.
260264

261-
[[doctable-legacy]]`doc_table:legacy`::
265+
[[doctable-legacy]]`doc_table:legacy`::
262266
Controls the way the document table looks and works. Set this property to `true` to revert to the legacy implementation.
263267

264268
[[discover-searchFieldsFromSource]]`discover:searchFieldsFromSource`::
@@ -282,10 +286,6 @@ must contain `from` and `to` values (see
282286
{ref}/common-options.html#date-math[accepted formats]). It is ignored unless
283287
`ml:anomalyDetection:results:enableTimeDefaults` is enabled.
284288

285-
[[ml-filedatavisualizermaxfilesize]]`ml:fileDataVisualizerMaxFileSize`::
286-
Sets the file size limit when importing data in the {data-viz}. The default
287-
value is `100MB`. The highest supported value for this setting is `1GB`.
288-
289289

290290
[float]
291291
[[kibana-notification-settings]]

0 commit comments

Comments
 (0)