diff --git a/apmpackage/apm/0.1.0/_dev/docs/README.template.md b/apmpackage/apm/0.1.0/_dev/docs/README.template.md index 5c5c4c17008..06a2875ed4e 100644 --- a/apmpackage/apm/0.1.0/_dev/docs/README.template.md +++ b/apmpackage/apm/0.1.0/_dev/docs/README.template.md @@ -53,22 +53,14 @@ both the service name and the environment as the namespace. The APM integration requires Kibana 7.11 and Elasticsearch with basic license. This version is experimental and has some limitations, listed bellow: -- It is not yet possible to change APM Server settings dynamically. You must update the policy with any changes you need and restart the APM Server process. - Sourcemap enrichment is not yet supported. - There is no default ILM policy for traces (spans and transactions). - You can't use an Elastic Agent enrolled before 7.11 with an APM integration. +- Only a handful of configuration options are supported yet. IMPORTANT: If you run APM Server with Elastic Agent manually in standalone mode, you must install the APM integration before ingestion starts. -## Configuration parameters - -- `Host`: APM Server host and port to listen on. -- `Secret token`: Authorization token for sending data to APM Server. See the [documentation](https://www.elastic.co/guide/en/apm/server/current/configuration-rum.html) for details. -- `Enable RUM`: Enables support for RUM monitoring. See the [documentation](https://www.elastic.co/guide/en/apm/server/current/configuration-rum.html) for details. -- `API Key for Central Configuration`: Gives privileges for APM Agent central configuration. See the [documentation](https://www.elastic.co/guide/en/kibana/master/agent-configuration.html) -- `API Key for Sourcemaps`: Gives priveleges to read sourcemaps. See the [documentation](https://www.elastic.co/guide/en/apm/agent/rum-js/current/sourcemap.html). - ## Traces Traces are comprised of [spans and transactions](https://www.elastic.co/guide/en/apm/get-started/current/apm-data-model.html). diff --git a/apmpackage/apm/0.1.0/agent/input/template.yml.hbs b/apmpackage/apm/0.1.0/agent/input/template.yml.hbs index 77c50823730..246560be3b9 100644 --- a/apmpackage/apm/0.1.0/agent/input/template.yml.hbs +++ b/apmpackage/apm/0.1.0/agent/input/template.yml.hbs @@ -1,8 +1,20 @@ apm-server: host: {{host}} secret_token: {{secret_token}} + max_event_size: {{max_event_bytes}} + capture_personal_data: {{capture_personal_data}} + kibana: + api_key: {{kibana_api_key}} rum: enabled: {{enable_rum}} source_mapping.elasticsearch.api_key: {{sourcemap_api_key}} - kibana: - api_key: {{kibana_api_key}} + allow_origins: {{rum_allow_origins}} + allow_headers: {{rum_allow_headers}} + library_pattern: {{rum_library_pattern}} + exclude_from_grouping: {{rum_exclude_from_grouping}} + response_headers: {{rum_response_headers}} + event_rate.limit: {{rum_event_rate_limit}} + event_rate.lru_size: {{rum_event_rate_lru_size}} + api_key: + enabled: {{api_key_enabled}} + limit: {{api_key_limit}} diff --git a/apmpackage/apm/0.1.0/docs/README.md b/apmpackage/apm/0.1.0/docs/README.md index 8d26ec5cfd0..ea1165ad8de 100644 --- a/apmpackage/apm/0.1.0/docs/README.md +++ b/apmpackage/apm/0.1.0/docs/README.md @@ -53,22 +53,14 @@ both the service name and the environment as the namespace. The APM integration requires Kibana 7.11 and Elasticsearch with basic license. This version is experimental and has some limitations, listed bellow: -- It is not yet possible to change APM Server settings dynamically. You must update the policy with any changes you need and restart the APM Server process. - Sourcemap enrichment is not yet supported. - There is no default ILM policy for traces (spans and transactions). - You can't use an Elastic Agent enrolled before 7.11 with an APM integration. +- Only a handful of configuration options are supported yet. IMPORTANT: If you run APM Server with Elastic Agent manually in standalone mode, you must install the APM integration before ingestion starts. -## Configuration parameters - -- `Host`: APM Server host and port to listen on. -- `Secret token`: Authorization token for sending data to APM Server. See the [documentation](https://www.elastic.co/guide/en/apm/server/current/configuration-rum.html) for details. -- `Enable RUM`: Enables support for RUM monitoring. See the [documentation](https://www.elastic.co/guide/en/apm/server/current/configuration-rum.html) for details. -- `API Key for Central Configuration`: Gives privileges for APM Agent central configuration. See the [documentation](https://www.elastic.co/guide/en/kibana/master/agent-configuration.html) -- `API Key for Sourcemaps`: Gives priveleges to read sourcemaps. See the [documentation](https://www.elastic.co/guide/en/apm/agent/rum-js/current/sourcemap.html). - ## Traces Traces are comprised of [spans and transactions](https://www.elastic.co/guide/en/apm/get-started/current/apm-data-model.html). diff --git a/apmpackage/apm/0.1.0/manifest.yml b/apmpackage/apm/0.1.0/manifest.yml index e6401dd294e..37f43c1f2af 100644 --- a/apmpackage/apm/0.1.0/manifest.yml +++ b/apmpackage/apm/0.1.0/manifest.yml @@ -36,9 +36,17 @@ policy_templates: title: Secret token required: false show_user: true + - name: api_key_enabled + type: bool + title: API Key Auth + description: Enable API Key auth between APM Server and APM Agents. + required: false + show_user: true + default: false - name: enable_rum type: bool title: Enable RUM + description: Enable Real User Monitoring (RUM). required: true show_user: true default: false @@ -54,6 +62,61 @@ policy_templates: required: false description: Enter as : show_user: true + - name: api_key_limit + type: int + title: Maximum number of API Keys + description: Restrict number of unique API Keys per minute, used for auth between APM Agents and Server. + required: false + show_user: false + default: 100 + - name: capture_personal_data + type: bool + title: Capture personal data + description: Capture personal data such as IP or User Agent. + required: false + show_user: false + default: true + - name: rum_allow_origins + type: string + title: RUM - Origin Headers + description: Allowed Origin headers to be sent by User Agents. + multi: true + required: false + show_user: false + default: ['*'] + - name: rum_allow_headers + type: string + title: RUM - Access-Control-Allow-Headers + description: Supported Access-Control-Allow-Headers in addition to "Content-Type", "Content-Encoding" and "Accept". + multi: true + required: false + show_user: false + - name: rum_response_headers + type: yaml + title: RUM - Custom HTTP response headers + description: Added to RUM responses, e.g. for security policy compliance. + required: false + show_user: false + - name: rum_event_rate_limit + type: int + title: RUM - Rate limit events per IP + description: Maximum number of events allowed per IP per second. + required: false + show_user: false + default: 300 + - name: rum_event_rate_lru_size + type: int + title: RUM - Rate limit cache size + description: Number of unique IPs to be cached for the rate limiter. + required: false + show_user: false + default: 1000 + - name: max_event_bytes + type: int + title: Maximum size per event (bytes) + required: false + show_user: false + default: 307200 template_path: template.yml.hbs owner: github: elastic/apm-server diff --git a/changelogs/head.asciidoc b/changelogs/head.asciidoc index c3363a94aa2..09f7aec2b43 100644 --- a/changelogs/head.asciidoc +++ b/changelogs/head.asciidoc @@ -27,6 +27,7 @@ https://github.com/elastic/apm-server/compare/7.11\...master[View commits] * OpenTelemetry Protocol (OTLP) over gRPC is now supported on the standard endpoint (8200) {pull}4677[4677] * Add initial support for APM central config and sourcemaps when running under Fleet {pull}4670[4670] * Data stream and ILM policy for tail-based sampling {pull}4707[4707] +* Support additional config options when running under Fleet {pull}4690[4690] [float] ==== Deprecated