Skip to content

Commit dfdd6be

Browse files
committed
Merge remote-tracking branch 'kibana/master' into remove-indexed-array
2 parents 0b46f76 + 2565084 commit dfdd6be

758 files changed

Lines changed: 18154 additions & 7004 deletions

File tree

Some content is hidden

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

.eslintrc.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -491,6 +491,7 @@ module.exports = {
491491
'x-pack/dev-tools/mocha/setup_mocha.js',
492492
'x-pack/scripts/*.js',
493493
],
494+
excludedFiles: ['**/integration_tests/**/*'],
494495
rules: {
495496
'import/no-commonjs': 'off',
496497
'prefer-object-spread/prefer-object-spread': 'off',

.i18nrc.json

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
"newsfeed": "src/plugins/newsfeed",
3434
"regionMap": "src/legacy/core_plugins/region_map",
3535
"savedObjects": "src/plugins/saved_objects",
36+
"savedObjectsManagement": "src/plugins/saved_objects_management",
3637
"server": "src/legacy/server",
3738
"statusPage": "src/legacy/core_plugins/status_page",
3839
"telemetry": [
@@ -51,10 +52,7 @@
5152
"visTypeVega": "src/legacy/core_plugins/vis_type_vega",
5253
"visTypeVislib": "src/legacy/core_plugins/vis_type_vislib",
5354
"visTypeXy": "src/legacy/core_plugins/vis_type_xy",
54-
"visualizations": [
55-
"src/plugins/visualizations",
56-
"src/legacy/core_plugins/visualizations"
57-
]
55+
"visualizations": "src/plugins/visualizations"
5856
},
5957
"exclude": [
6058
"src/legacy/ui/ui_render/ui_render_mixin.js"

docs/apm/custom-links.asciidoc

Lines changed: 218 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,218 @@
1+
[[custom-links]]
2+
=== Custom links
3+
4+
Elastic's custom link feature allows you to easily create up to 500 dynamic links
5+
based on your specific APM data.
6+
Custom links can be filtered to only appear in the APM app for relevant services,
7+
environments, transaction types, or transaction names.
8+
9+
Ready to dive in? Jump straight to the <<custom-links-examples,examples>>.
10+
11+
[float]
12+
[[custom-links-create]]
13+
=== Create a link
14+
15+
Each custom link consists of a label, url, and optional filter.
16+
The easiest way to create a custom link is from within the actions dropdown in the transaction detail page.
17+
This method will automatically apply filters, scoping the link to that specific service,
18+
environment, transaction type, and transaction name.
19+
20+
Alternatively, you can create a custom link in the APM app by navigating to **Settings** > **Customize UI**,
21+
and selecting **Create custom link**.
22+
23+
[float]
24+
[[custom-links-label]]
25+
==== Label
26+
27+
The name of your custom link.
28+
This text will be shown in the actions context menu,
29+
so keep it as short as possible.
30+
31+
TIP: Custom links are displayed alphabetically in the actions menu.
32+
33+
[float]
34+
[[custom-links-url]]
35+
==== URL
36+
37+
The URL your link points to.
38+
URLs support dynamic field name variables, encapsulated in double curly brackets: `{{field.name}}`.
39+
These variables will be replaced with transaction metadata when the link is clicked.
40+
41+
Because everyone's data is different,
42+
you'll need to examine your own traces to see what metadata is available for use.
43+
The easiest way to do this is to select a trace in the APM app, and click **Metadata** in the **Trace Sample** table.
44+
45+
[role="screenshot"]
46+
image::apm/images/example-metadata.png[Example metadata]
47+
48+
[float]
49+
[[custom-links-filters]]
50+
==== Filters
51+
52+
Filter each link to only appear so it only appears for specific services or transactions.
53+
You can filter on the following fields:
54+
55+
* `service.name`
56+
* `service.env`
57+
* `transaction.type`
58+
* `transaction.name`
59+
60+
Multiple values are allowed when comma separated.
61+
62+
[float]
63+
[[custom-links-examples]]
64+
=== Custom link examples
65+
66+
// Relevant documentation links
67+
:jira-query-params: https://confluence.atlassian.com/jirakb/how-to-create-issues-using-direct-html-links-in-jira-server-159474.html
68+
:github-query-params: https://help.github.com/en/github/managing-your-work-on-github/about-automation-for-issues-and-pull-requests-with-query-parameters
69+
70+
Not sure where to start with custom links?
71+
Take a look at the examples below, and customize them to your liking!
72+
73+
[float]
74+
[[custom-links-examples-email]]
75+
==== Email
76+
77+
Email the owner of a service.
78+
79+
|====
80+
|Label |`Email <SERVICE_NAME> engineer`
81+
|Link |`mailto:<TEAM_OR_ENGINEER>@<COMPANY_NAME>.com`
82+
|Filters |`service.name:<SERVICE_NAME>`
83+
|====
84+
85+
**Example**
86+
87+
This link opens an email addressed to the team or owner of `python-backend`.
88+
It will only appear on services with the name `python-backend`.
89+
90+
|====
91+
|Label |`Email python-backend engineers`
92+
|Link |`mailto:python_team@elastic.co`
93+
|Filters |`service.name:python-backend`
94+
|====
95+
96+
[float]
97+
[[custom-links-examples-gh]]
98+
==== GitHub issue
99+
100+
Open a GitHub issue with pre-populated metadata from the selected trace sample.
101+
102+
|====
103+
|Label |`Open an issue in <REPO_NAME>`
104+
|Link |`https://github.com/<ORG>/<REPO>/issues/new?title=<TITLE>&body=<BODY>`
105+
|Filters |`service.name:client`
106+
|====
107+
108+
**Example**
109+
110+
This link opens a new GitHub issue in the apm-agent-rum repository.
111+
It populates the issue body with relevant metadata from the currently active trace.
112+
Clicking this link results in the following issue being created:
113+
114+
[role="screenshot"]
115+
image::apm/images/create-github-issue.png[Example github issue]
116+
117+
|====
118+
|Label |`Open an issue in apm-rum-js`
119+
|Link |`https://github.com/elastic/apm-agent-rum-js/issues/new?title=Investigate+APM+trace&body=Investigate+the+following+APM+trace%3A%0D%0A%0D%0Aservice.name%3A+{{service.name}}%0D%0Atransaction.id%3A+{{transaction.id}}%0D%0Acontainer.id%3A+{{container.id}}%0D%0Aurl.full%3A+{{url.full}}`
120+
|Filters |`service.name:client`
121+
|====
122+
123+
See the {github-query-params}[GitHub automation documentation] for a full list of supported query parameters.
124+
125+
[float]
126+
[[custom-links-examples-jira]]
127+
==== Jira task
128+
129+
Create a Jira task with pre-populated metadata from the selected trace sample.
130+
131+
|====
132+
|Label |`Open an issue in Jira`
133+
|Link |`https://<JIRA_BASE_URL>/secure/CreateIssueDetails!init.jspa?<ARGUMENTS>`
134+
|====
135+
136+
**Example**
137+
138+
This link creates a new task on the Engineering board in Jira.
139+
It populates the issue body with relevant metadata from the currently active trace.
140+
Clicking this link results in the following task being created in Jira:
141+
142+
[role="screenshot"]
143+
image::apm/images/create-jira-issue.png[Example jira issue]
144+
145+
|====
146+
|Label |`Open a task in Jira`
147+
|Link |`https://test-site-33.atlassian.net/secure/CreateIssueDetails!init.jspa?pid=10000&issuetype=10001&summary=Created+via+APM&description=Investigate+the+following+APM+trace%3A%0D%0A%0D%0Aservice.name%3A+{{service.name}}%0D%0Atransaction.id%3A+{{transaction.id}}%0D%0Acontainer.id%3A+{{container.id}}%0D%0Aurl.full%3A+{{url.full}}`
148+
|====
149+
150+
See the {jira-query-params}[Jira application administration knowledge base]
151+
for a full list of supported query parameters.
152+
153+
[float]
154+
[[custom-links-examples-kib]]
155+
==== Kibana dashboards
156+
157+
Link to a custom dashboard in Kibana.
158+
159+
|====
160+
|Label |`Open transaction in custom visualization`
161+
|Link |`https://kibana-instance/app/kibana#/dashboard?_g=query:(language:kuery,query:'transaction.id:{{transaction.id}}'...`
162+
|====
163+
164+
**Example**
165+
166+
This link opens the current `transaction.id` in a custom kibana dashboard.
167+
There are no filters set.
168+
169+
|====
170+
|Label |`Open transaction in Python drilldown viz`
171+
|URL |`https://kibana-instance/app/kibana#/dashboard?_g=(filters:!(),refreshInterval:(pause:!t,value:0),time:(from:now-24h,to:now))&_a=(description:'',filters:!(),fullScreenMode:!f,options:(hidePanelTitles:!f,useMargins:!t),panels:!((embeddableConfig:(),gridData:(h:15,i:cb79c1c0-1af8-472c-aaf7-d158a76946fb,w:24,x:0,y:0),id:c8c74b20-6a30-11ea-92ab-b5d3feff11df,panelIndex:cb79c1c0-1af8-472c-aaf7-d158a76946fb,type:visualization,version:'7.7')),query:(language:kuery,query:'transaction.id:{{transaction.id}}'),timeRestore:!f,title:'',viewMode:edit)`
172+
|====
173+
174+
[float]
175+
[[custom-links-examples-slack]]
176+
==== Slack channel
177+
178+
Open a specified slack channel.
179+
180+
|====
181+
|Label |`Open SLACK_CHANNEL`
182+
|Link |`https://COMPANY_SLACK.slack.com/archives/SLACK_CHANNEL`
183+
|Filters |`service.name` : `SERVICE_NAME`
184+
|====
185+
186+
**Example**
187+
188+
This link opens a company slack channel, #apm-support.
189+
It only appears when `transaction.name` is `GET user/login`.
190+
191+
|====
192+
|Label |`Open #apm-user-support`
193+
|Link |`https://microsoft.slack.com/archives/efk52kt23k`
194+
|Filters |`transaction.name:GET user/login`
195+
|====
196+
197+
[float]
198+
[[custom-links-examples-web]]
199+
==== Website
200+
201+
Open an internal or external website.
202+
203+
|====
204+
|Label |`Open <WEBSITE>`
205+
|Link |`https://<COMPANY_SLACK>.slack.com/archives/<SLACK_CHANNEL>`
206+
|Filters |`service.name:<SERVICE_NAME>`
207+
|====
208+
209+
**Example**
210+
211+
This link opens more data on a specific `user.email`.
212+
It only appears on front-end transactions.
213+
214+
|====
215+
|Label |`View user internally`
216+
|Link |`https://internal-site.company.com/user/{{user.email}}`
217+
|Filters |`service.name:client`
218+
|====
144 KB
Loading
178 KB
Loading
249 KB
Loading

docs/apm/using-the-apm-ui.asciidoc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,8 @@ include::metrics.asciidoc[]
3737

3838
include::agent-configuration.asciidoc[]
3939

40+
include::custom-links.asciidoc[]
41+
4042
include::advanced-queries.asciidoc[]
4143

4244
include::settings.asciidoc[]

docs/development/plugins/data/public/kibana-plugin-plugins-data-public.search.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
search: {
1111
aggs: {
1212
AggConfigs: typeof AggConfigs;
13-
aggGroupNamesMap: () => Record<"buckets" | "metrics", string>;
13+
aggGroupNamesMap: () => Record<"metrics" | "buckets", string>;
1414
aggTypeFilters: import("./search/aggs/filter/agg_type_filters").AggTypeFilters;
1515
CidrMask: typeof CidrMask;
1616
convertDateRangeToString: typeof convertDateRangeToString;

docs/development/plugins/data/server/kibana-plugin-plugins-data-server.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
| Function | Description |
2424
| --- | --- |
2525
| [getDefaultSearchParams(config)](./kibana-plugin-plugins-data-server.getdefaultsearchparams.md) | |
26+
| [getTotalLoaded({ total, failed, successful })](./kibana-plugin-plugins-data-server.gettotalloaded.md) | |
2627
| [parseInterval(interval)](./kibana-plugin-plugins-data-server.parseinterval.md) | |
2728
| [plugin(initializerContext)](./kibana-plugin-plugins-data-server.plugin.md) | Static code to be shared externally |
2829
| [shouldReadFieldFromDocValues(aggregatable, esType)](./kibana-plugin-plugins-data-server.shouldreadfieldfromdocvalues.md) | |
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
[role="xpack"]
2+
[[alert-details]]
3+
=== Alert details
4+
5+
beta[]
6+
7+
The *Alert details* page tells you about the state of the alert and provides granular control over the actions it is taking.
8+
9+
[role="screenshot"]
10+
image::images/alerts-details-instances-active.png[Alert details page with three alert instances]
11+
12+
In this example, alerts detect when a site serves more than a threshold number of bytes in a 24 hour period. Three sites are above the threshold. These are called alert instances - occurrences of the condition being detected - and the instance name, status, time of detection, and duration of the condition are shown in this view.
13+
14+
Upon detection, each instance can trigger one or more actions. If the condition persists, the same actions will trigger either on the next scheduled alert check, or (if defined) after the re-notify period on the alert has passed. To prevent re-notification, you can suppress future actions by clicking on the eye icon to mute an individual alert instance. Muting means that the alert checks continue to run on a schedule, but that instance will not trigger any action.
15+
16+
[role="screenshot"]
17+
image::images/alerts-details-instance-muting.png[Muting an alert instance]
18+
19+
Alert instances will come and go from the list depending on whether they meet the alert conditions or not - unless they are muted. If a muted instance no longer meets the alert conditions, it will appear as inactive in the list. This prevents an instance from triggering actions if it reappears in the future.
20+
21+
[role="screenshot"]
22+
image::images/alerts-details-instances-inactive.png[Alert details page with three inactive alert instances]
23+
24+
If you want to suppress actions on all current and future instances, you can mute the entire alert. Alert checks continue to run and the instance list will update as instances activate or deactivate, but no actions will be triggered.
25+
26+
[role="screenshot"]
27+
image::images/alerts-details-muting.png[Use the mute toggle to suppress all action on current and future instances]
28+
29+
You can also disable an alert altogether. When disabled, the alert stops running checks altogether and will clear any instances it is tracking. You may want to disable alerts that are not currently needed to reduce the load on {kib} and {es}.
30+
31+
[role="screenshot"]
32+
image::images/alerts-details-disabling.png[Use the disable toggle to turn off alert checks and clear instances tracked]
33+
34+
* For further information on alerting concepts and examples, see <<alerting-getting-started>>.

0 commit comments

Comments
 (0)