Set up Real User Monitoring (RUM) support
editSet up Real User Monitoring (RUM) support
editThe JavaScript RUM Agent offers real user monitoring (RUM) support.
Example config with RUM enabled:
apm-server.rum.enabled: true apm-server.rum.rate_limit: 10 apm-server.rum.allow_origins: ['*'] apm-server.rum.library_pattern: "node_modules|bower_components|~" apm-server.rum.exclude_from_grouping: "^/webpack" apm-server.rum.source_mapping.cache.expiration: 5m apm-server.rum.source_mapping.index_pattern: "apm-*-sourcemap*"
Configuration options
editenabled
editFor enabling RUM support, set the apm-server.rum.enabled
to true
.
By default this is disabled.
rate_limit
editRate limit per second and IP address for requests sent to the RUM endpoint.
If the rate limit is hit, the APM Server will return an HTTP status code 429
.
The rate limit cannot be disabled. Ensure to have it set to a number suiting your requirements.
Default value is set to 10.
allow_origins
editComma separated list of permitted origins for RUM supprt.
User-agents send an Origin header that will be validated against this list.
This is done automatically by modern browsers as part of the CORS specification.
An origin is made of a protocol scheme, host and port, without the url path.
Default value is set to ['*']
, which allows everything.
library_pattern
editRegexp to be matched against a stacktrace frame’s file_name
and abs_path
attributes.
If the regexp matches, the stacktrace frame is considered to be a library frame.
When source mapping is applied the error.culprit
is set to reflect the function and the filename
of the first not library frame.
This aims to provide an entry point for identifying issues.
Default value is "node_modules|bower_components|~"
.
exclude_from_grouping
editRegexp to be matched against a stacktrace frame’s file_name
.
If the regexp matches, the stacktrace frame is excluded from being used for calculating error groups.
The default pattern excludes stacktrace frames that have a filename starting with /webpack
.
source_mapping.cache.expiration
editIf a source map has been uploaded to the APM Server, source mapping is automatically applied to documents sent to the RUM endpoint. Source maps are fetched from Elasticsearch and then kept in an in-memory cache for the configured time. Values configured without a time unit are treated as seconds. Default value is 5 minutes.
source_mapping.elasticsearch
editConfigure the Elasticsearch source map retrieval location, taking the same options as output.elasticsearch. This must be set when using an output other than Elasticsearch, and that output is writing to Elasticsearch. Othewise leave this section empty.
source_mapping.index_pattern
editSource maps are stored in a seperate index apm-%{[beat.version]}-sourcemap
by default.
If changed, a matching index pattern needs to be specified here.