Skip to content

Commit

Permalink
Merge branch 'main' into apm-server-es-backpressure-docs
Browse files Browse the repository at this point in the history
  • Loading branch information
1pkg committed Aug 5, 2024
2 parents bc97ba6 + 9025f3c commit ff167bd
Show file tree
Hide file tree
Showing 157 changed files with 4,224 additions and 173 deletions.
132 changes: 69 additions & 63 deletions .mergify.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,52 +15,99 @@ pull_request_rules:
git merge upstream/{{base}}
git push upstream {{head}}
```
- name: backport patches to 8.3 branch
- name: notify the backport policy
conditions:
- -label~=^backport
- base=main
actions:
comment:
message: |
This pull request does not have a backport label. Could you fix it @{{author}}? 🙏
To fixup this pull request, you need to add the backport labels for the needed
branches, such as:
* `backport-/d./d` is the label to automatically backport to the `/d./d` branch. `/d` is the digit
**NOTE**: `backport-skip` has been added to this pull request.
label:
add:
- backport-skip
- name: remove backport-skip label
conditions:
- label~=^backport-\d
- -merged
- -closed
actions:
label:
remove:
- backport-skip
- name: notify the backport has not been merged yet
conditions:
- -merged
- -closed
- author=mergify[bot]
- "#check-success>0"
- schedule=Mon-Mon 06:00-10:00[Europe/Paris]
- "#assignee>=1"
actions:
comment:
message: |
This pull request has not been merged yet. Could you please review and merge it @{{ assignee | join(', @') }}? 🙏
- name: backport patches to main branch
conditions:
- merged
- label=backport-main
actions:
backport:
assignees:
- "{{ author }}"
labels:
- "backport"
branches:
- "main"
title: "[{{ destination_branch }}](backport #{{ number }}) {{ title }}"
- name: backport patches to 7.15 branch
conditions:
- merged
- base=main
- label=backport-8.3
- label=backport-7.15
actions:
backport:
assignees:
- "{{ author }}"
branches:
- "8.3"
- "7.15"
title: "[{{ destination_branch }}] {{ title }} (backport #{{ number }})"
labels:
- backport
- name: backport patches to 8.2 branch
- backport
- name: backport patches to 7.16 branch
conditions:
- merged
- base=main
- label=backport-8.2
- label=backport-7.16
actions:
backport:
assignees:
- "{{ author }}"
branches:
- "8.2"
- "7.16"
title: "[{{ destination_branch }}] {{ title }} (backport #{{ number }})"
labels:
- backport
- name: backport patches to 8.1 branch
- backport
- name: backport patches to 7.17 branch
conditions:
- merged
- base=main
- label=backport-8.1
- label=backport-7.17
actions:
backport:
assignees:
- "{{ author }}"
branches:
- "8.1"
- "7.17"
title: "[{{ destination_branch }}] {{ title }} (backport #{{ number }})"
labels:
- backport
- name: backport patches to 8.0 branch
conditions:
- merged
- base=main
- label=backport-8.0
actions:
backport:
Expand All @@ -71,84 +118,45 @@ pull_request_rules:
title: "[{{ destination_branch }}] {{ title }} (backport #{{ number }})"
labels:
- backport
- name: backport patches to 7.17 branch
- name: backport patches to 8.1 branch
conditions:
- merged
- base=main
- label=backport-7.17
- label=backport-8.1
actions:
backport:
assignees:
- "{{ author }}"
branches:
- "7.17"
- "8.1"
title: "[{{ destination_branch }}] {{ title }} (backport #{{ number }})"
labels:
- backport
- name: backport patches to 7.16 branch
- name: backport patches to 8.2 branch
conditions:
- merged
- base=main
- label=backport-7.16
- label=backport-8.2
actions:
backport:
assignees:
- "{{ author }}"
branches:
- "7.16"
- "8.2"
title: "[{{ destination_branch }}] {{ title }} (backport #{{ number }})"
labels:
- backport
- name: backport patches to 7.15 branch
- name: backport patches to 8.3 branch
conditions:
- merged
- base=main
- label=backport-7.15
- label=backport-8.3
actions:
backport:
assignees:
- "{{ author }}"
branches:
- "7.15"
- "8.3"
title: "[{{ destination_branch }}] {{ title }} (backport #{{ number }})"
labels:
- backport
- name: notify the backport policy
conditions:
- -label~=^backport
- base=main
actions:
comment:
message: |
This pull request does not have a backport label. Could you fix it @{{author}}? 🙏
To fixup this pull request, you need to add the backport labels for the needed
branches, such as:
* `backport-/d./d` is the label to automatically backport to the `/d./d` branch. `/d` is the digit
**NOTE**: `backport-skip` has been added to this pull request.
label:
add:
- backport-skip
- name: remove backport-skip label
conditions:
- label~=^backport-\d
- -merged
- -closed
actions:
label:
remove:
- backport-skip
- name: notify the backport has not been merged yet
conditions:
- -merged
- -closed
- author=mergify[bot]
- "#check-success>0"
- schedule=Mon-Mon 06:00-10:00[Europe/Paris]
- "#assignee>=1"
actions:
comment:
message: |
This pull request has not been merged yet. Could you please review and merge it @{{ assignee | join(', @') }}? 🙏
- name: backport patches to 8.4 branch
conditions:
- merged
Expand Down Expand Up @@ -282,7 +290,6 @@ pull_request_rules:
- name: backport patches to 8.14 branch
conditions:
- merged
- base=main
- label=backport-8.14
actions:
backport:
Expand All @@ -296,7 +303,6 @@ pull_request_rules:
- name: backport patches to 8.15 branch
conditions:
- merged
- base=main
- label=backport-8.15
actions:
backport:
Expand Down
8 changes: 4 additions & 4 deletions docs/en/apm-server/redirects.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -226,23 +226,23 @@ This section has moved. Please see {observability-guide}/apm-tune-data-ingestion
[role="exclude",id="load-dashboards-logstash"]
=== Tuning APM Server using both v1 and v2 intake API

Loading dashboards from APM Server is no longer supported. Please see the {kibana-ref}/xpack-apm.html[{kib} APM UI] documentation.
Loading dashboards from APM Server is no longer supported. Please see the {observability-guide}/apm-ui.html[{kib} APM UI] documentation.

[role="exclude",id="url-option"]
=== setup.dashboards.url

Loading dashboards from APM Server is no longer supported. Please see the {kibana-ref}/xpack-apm.html[{kib} APM UI] documentation.
Loading dashboards from APM Server is no longer supported. Please see the {observability-guide}/apm-ui.html[{kib} APM UI] documentation.

[role="exclude",id="file-option"]
=== setup.dashboards.file

Loading dashboards from APM Server is no longer supported. Please see the {kibana-ref}/xpack-apm.html[{kib} APM UI] documentation.
Loading dashboards from APM Server is no longer supported. Please see the {observability-guide}/apm-ui.html[{kib} APM UI] documentation.

[role="exclude",id="load-kibana-dashboards"]
=== Dashboards

Loading {kib} dashboards from APM Server is no longer supported.
Please use the {kibana-ref}/xpack-apm.html[{kib} APM UI] instead.
Please use the {observability-guide}/apm-ui.html[{kib} APM UI] instead.
As an alternative, a small number of dashboards and visualizations are available in the
https://github.com/elastic/apm-contrib/tree/main/kibana[apm-contrib] repository.

Expand Down
84 changes: 84 additions & 0 deletions docs/en/observability/apm-ui/advanced-queries.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
[[apm-advanced-queries]]
=== Query your data

Querying your APM data is an essential tool that can make finding bottlenecks in your code even more straightforward.

Using the query bar, a powerful data query feature, you can pass advanced queries on your data
to filter on specific pieces of information you’re interested in.

The query bar comes with a handy autocomplete that helps find the fields and even provides suggestions to the data they include.
You can select the query bar and hit the down arrow on your keyboard to begin scanning recommendations.

[float]
[[apm-app-advanced-queries]]
=== Querying in the APM UI

When querying in the APM UI, you’re merely searching and selecting data from fields in {es} documents. Queries entered
into the query bar are also added as parameters to the URL, so it’s easy to share a specific query or view with others.

When you type, you can begin to see some of the transaction fields available for filtering:

[role="screenshot"]
image::./images/apm-query-bar.png[Example of the Kibana Query bar in APM UI in Kibana]

[TIP]
=====
To learn more about the {kib} query language capabilities, see the {kibana-ref}/kuery-query.html[Kibana Query Language Enhancements] documentation.
=====

[float]
[[apm-app-queries]]
==== APM UI queries

APM queries can be handy for removing noise from your data in the <<apm-services,Services>>, <<apm-transactions,Transactions>>,
<<apm-errors,Errors>>, <<apm-metrics,Metrics>>, and <<apm-traces,Traces>> views.

For example, in the *Services* view, you can quickly view a list of all the instrumented services running on your production
environment: `service.environment : production`. Or filter the list by including the APM agent's name and the host it’s running on:
`service.environment : "production" and agent.name : "java" and host.name : "prod-server1"`.

On the *Traces* view, you might want to view failed transaction results from any of your running containers:
`transaction.result :"FAILURE" and container.id : *`.

On the *Transactions* view, you may want to list only the slower transactions than a specified time threshold: `transaction.duration.us > 2000000`.
Or filter the list by including the service version and the Kubernetes pod it's running on:
`transaction.duration.us > 2000000 and service.version : "7.12.0" and kubernetes.pod.name : "pod-5468b47f57-pqk2m"`.

[float]
[[discover-advanced-queries]]
=== Querying in Discover

Alternatively, you can query your APM documents in {kibana-ref}/discover.html[*Discover*].
Querying documents in *Discover* works the same way as queries in the APM UI,
and *Discover* supports all of the example APM UI queries shown on this page.

[float]
[[discover-queries]]
==== Discover queries

One example where you may want to make use of *Discover*
is to view _all_ transactions for an endpoint instead of just a sample.

TIP: Starting in v7.6, you can view ten samples per bucket in the APM UI, instead of just one.

Use the APM UI to find a transaction name and time bucket that you're interested in learning more about.
Then, switch to *Discover* and make a search:

["source","sh"]
-----
processor.event: "transaction" AND transaction.name: "<TRANSACTION_NAME_HERE>" and transaction.duration.us > 13000 and transaction.duration.us < 14000`
-----

In this example, we're interested in viewing all of the `APIRestController#customers` transactions
that took between 13 and 14 milliseconds. Here's what Discover returns:

[role="screenshot"]
image::./images/advanced-discover.png[View all transactions in bucket]

You can now explore the data until you find a specific transaction that you're interested in.
Copy that transaction's `transaction.id` and paste it into the APM UI to view the data in the context of the APM UI:

[role="screenshot"]
image::./images/specific-transaction-search.png[View specific transaction in APM UI]
[role="screenshot"]
image::./images/specific-transaction.png[View specific transaction in APM UI]
55 changes: 55 additions & 0 deletions docs/en/observability/apm-ui/agent-configuration.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
[[apm-agent-configuration]]
=== APM Agent central configuration

++++
<titleabbrev>Configure APM agents with central config</titleabbrev>
++++

APM Agent configuration allows you to fine-tune your APM agent configuration from within the APM UI.
Changes are automatically propagated to your APM agents, so there's no need to redeploy.

To get started, choose the services and environments you wish to configure.
The APM UI will let you know when your APM agents have applied your configurations.

[role="screenshot"]
image::./images/apm-agent-configuration.png[APM Agent configuration in Kibana]

[float]
==== Precedence

Configurations set from the APM UI take precedence over configurations set locally in each APM agent.
However, if APM Server is slow to respond, is offline, reports an error, etc.,
APM agents will use local defaults until they're able to update the configuration.
For this reason, it is still essential to set custom default configurations locally in each of your APM agents.

[float]
==== Supported configurations

Each APM agent has a list of supported configurations.
After selecting a Service name and environment in the APM UI,
a list of all supported configuration options,
including descriptions and default values, will be displayed.

Supported configurations are also tagged with the image:./images/dynamic-config.svg[] badge in each APM agent's configuration reference:

[horizontal]
Android agent:: {apm-android-ref}/configuration.html[Configuration reference]
Go agent:: {apm-go-ref}/configuration.html[Configuration reference]
iOS agent:: {apm-ios-ref}/configuration.html[Configuration reference]
Java agent:: {apm-java-ref}/configuration.html[Configuration reference]
.NET agent:: {apm-dotnet-ref}/configuration.html[Configuration reference]
Node.js agent:: {apm-node-ref}/configuration.html[Configuration reference]
PHP agent:: {apm-php-ref}/configuration.html[Configuration reference]
Python agent:: {apm-py-ref}/configuration.html[Configuration reference]
Ruby agent:: {apm-ruby-ref}/configuration.html[Configuration reference]
Real User Monitoring (RUM) agent:: {apm-rum-ref}/configuration.html[Configuration reference]

[float]
==== APM Server configuration

For most users, APM agent configuration should work out-of-the-box.
If you run into trouble, it may be because you're not using the {es} output,
or because your {es} credentials don't have sufficient privileges.

See {apm-guide-ref}/configure-agent-config.html[configure APM agent configuration]
to learn how to configure APM Server to avoid these problems.
Loading

0 comments on commit ff167bd

Please sign in to comment.