diff --git a/apm-server.yml b/apm-server.yml index 590624c9724..35800aafd13 100644 --- a/apm-server.yml +++ b/apm-server.yml @@ -170,14 +170,10 @@ apm-server: # Note that values configured without a time unit will be interpreted as seconds. #cache.expiration: 5m - # Source maps may be fetched from Elasticsearch by using the output.elasticsearch configuration, - # and running apm-server standalone. + # Source map retrieval location. # - # Note: fetching source maps from Elasticsearch is not supported if apm-server is being managed by - # Fleet. This configuration is only applicable to standalone apm-servers, for backwards compatibility - # with source maps stored in Elasticsearch by older versions of apm-server. New source maps must now - # be uploaded via Kibana, and `apm-server.kibana` configured in standalone apm-servers for fetching - # them. + # If using an output other than Elasticsearch that is writing to Elasticsearch, you must + # set this option. If not set, the standard output elasticsearch configuration is used. #elasticsearch: # Array of hosts to connect to. # Scheme and port can be left out and will be set to the default (`http` and `9200`). diff --git a/docker-compose.yml b/docker-compose.yml index 433c6b16e68..8528689b29e 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -10,7 +10,7 @@ x-logging: &default-logging max-size: "1g" services: elasticsearch: - image: docker.elastic.co/elasticsearch/elasticsearch:8.12.0-ec4853e4-SNAPSHOT + image: docker.elastic.co/elasticsearch/elasticsearch:8.12.0-9d443b17-SNAPSHOT ports: - 9200:9200 healthcheck: @@ -41,7 +41,7 @@ services: logging: *default-logging kibana: - image: docker.elastic.co/kibana/kibana:8.12.0-ec4853e4-SNAPSHOT + image: docker.elastic.co/kibana/kibana:8.12.0-9d443b17-SNAPSHOT ports: - 5601:5601 healthcheck: @@ -60,7 +60,7 @@ services: logging: *default-logging metricbeat: - image: docker.elastic.co/beats/metricbeat:8.12.0-ec4853e4-SNAPSHOT + image: docker.elastic.co/beats/metricbeat:8.12.0-9d443b17-SNAPSHOT environment: ELASTICSEARCH_HOSTS: '["http://elasticsearch:9200"]' ELASTICSEARCH_USERNAME: "${KIBANA_ES_USER:-admin}" diff --git a/docs/configure/general.asciidoc b/docs/configure/general.asciidoc index 92507f8ab72..b8c4ae56c8d 100644 --- a/docs/configure/general.asciidoc +++ b/docs/configure/general.asciidoc @@ -142,7 +142,7 @@ Enabled by default. (bool) Sets the default service environment to associate with data and requests received from agents which have no service environment defined. Default: none. (text) |==== -| APM Server binary | `apm-serer.default_service_environment` +| APM Server binary | `apm-server.default_service_environment` | Fleet-managed | `Default Service Environment` |==== diff --git a/docs/source-map-how-to.asciidoc b/docs/source-map-how-to.asciidoc index a0bc2a4675b..c8b03a785d2 100644 --- a/docs/source-map-how-to.asciidoc +++ b/docs/source-map-how-to.asciidoc @@ -95,19 +95,21 @@ module.exports = { [float] [[source-map-rum-upload]] -=== Upload the source map to {kib} +=== Upload the source map + +TIP: When uploading a source map, ensure that RUM support is enabled in the APM integration. {kib} exposes a {kibana-ref}/rum-sourcemap-api.html[source map endpoint] for uploading source maps. Source maps can be uploaded as a string, or as a file upload. -Before uploading a source map, ensure that RUM support is enabled in the APM integration Let's look at two different ways to upload a source map: curl and a custom application. Each example includes the four fields necessary for APM Server to later map minified code to its source: -* `service_name` - Should match the `serviceName` from step one -* `service_version` - Should match the `serviceVersion` from step one -* `bundle_filepath` - The absolute path of the final bundle as used in the web application -* `sourcemap` - The location of the source map. +* `service_name`: Should match the `serviceName` from step one. +* `service_version`: Should match the `serviceVersion` from step one. +* `bundle_filepath`: The absolute path of the final bundle as used in the web application. +* `sourcemap`: The location of the source map. + If you have multiple source maps, you'll need to upload each individually. [float] @@ -164,3 +166,12 @@ request.post({url: 'http://localhost:5601/api/apm/sourcemaps',formData: formData } }) ---- + +[float] +[[source-map-next]] +=== What happens next + +Source maps are stored in {es}. When you upload a source map, a new {es} document is created +containing the contents of the source map. +When a RUM request comes in, APM Server will make use of these source map documents to apply the +source map logic to the event's stack traces. diff --git a/testing/infra/k8s/base/stack/apm-server.yaml b/testing/infra/k8s/base/stack/apm-server.yaml index 470c08595e9..9b2ab7a9118 100644 --- a/testing/infra/k8s/base/stack/apm-server.yaml +++ b/testing/infra/k8s/base/stack/apm-server.yaml @@ -3,7 +3,7 @@ kind: ApmServer metadata: name: apm-server spec: - version: 8.12.0-ec4853e4-SNAPSHOT + version: 8.12.0-9d443b17-SNAPSHOT count: 1 http: tls: diff --git a/testing/infra/k8s/base/stack/elasticsearch.yaml b/testing/infra/k8s/base/stack/elasticsearch.yaml index e1029eb56e0..3ae637f355f 100644 --- a/testing/infra/k8s/base/stack/elasticsearch.yaml +++ b/testing/infra/k8s/base/stack/elasticsearch.yaml @@ -3,7 +3,7 @@ kind: Elasticsearch metadata: name: elasticsearch spec: - version: 8.12.0-ec4853e4-SNAPSHOT + version: 8.12.0-9d443b17-SNAPSHOT auth: fileRealm: - secretName: elasticsearch-admin diff --git a/testing/infra/k8s/base/stack/kibana.yaml b/testing/infra/k8s/base/stack/kibana.yaml index 43bcba5c0d7..5e96369c2f1 100644 --- a/testing/infra/k8s/base/stack/kibana.yaml +++ b/testing/infra/k8s/base/stack/kibana.yaml @@ -3,7 +3,7 @@ kind: Kibana metadata: name: kibana spec: - version: 8.12.0-ec4853e4-SNAPSHOT + version: 8.12.0-9d443b17-SNAPSHOT count: 1 elasticsearchRef: name: elasticsearch