From 6e65dfb0f23be680c24c89dc0b6df9d9f2cab36b Mon Sep 17 00:00:00 2001 From: Steve Gordon Date: Tue, 20 Feb 2024 16:21:55 +0000 Subject: [PATCH] Bring docs folder up to date manually --- docs/configuration.asciidoc | 22 +++++++++++++++------- docs/images/classic-pipeline.png | Bin 0 -> 34083 bytes docs/images/integrated-pipeline.png | Bin 0 -> 10347 bytes docs/supported-technologies.asciidoc | 2 +- docs/troubleshooting.asciidoc | 20 +++++++++++++++++++- 5 files changed, 35 insertions(+), 9 deletions(-) create mode 100644 docs/images/classic-pipeline.png create mode 100644 docs/images/integrated-pipeline.png diff --git a/docs/configuration.asciidoc b/docs/configuration.asciidoc index 24f7c6b24..e4604ddfc 100644 --- a/docs/configuration.asciidoc +++ b/docs/configuration.asciidoc @@ -448,23 +448,31 @@ the latest {apm-app-ref}/agent-configuration.html[APM Agent configuration]. <> -Sometimes it is necessary to sanitize, i.e., remove, sensitive data sent to Elastic APM. -This config accepts a list of wildcard patterns of field names which should be sanitized. -These apply to HTTP headers and `application/x-www-form-urlencoded` data. +Sometimes, sanitizing, i.e., redacting sensitive data sent to Elastic APM, is necessary. +This configuration accepts a comma-separated list of wildcard patterns of field names that should be sanitized. +These apply to HTTP headers for requests and responses, cookies and `application/x-www-form-urlencoded` data. -IMPORTANT: This setting only applies to values that are captured automatically by the agent. If you capture the request body manually with the public API, this configuration doesn't apply, and the agent won't sanitize the body. +IMPORTANT: This setting only applies to values captured automatically by the agent. If you capture the request +body manually with the public API, this configuration doesn't apply, and the agent won't sanitize the body. The wildcard, `*`, matches zero or more characters, and matching is case insensitive by default. Prepending an element with `(?-i)` makes the matching case sensitive. Examples: `/foo/*/bar/*/baz*`, `*foo*`. -Please be sure to review the data captured by Elastic APM carefully to make sure it does not contain sensitive information. -If you do find sensitive data in your {es} index, add an additional entry to this list. -Setting a value here will overwrite the defaults, so be sure to include the default entries as well. +Please review the data captured by Elastic APM carefully to ensure it does not contain sensitive information. +If you find sensitive data in your {es} index, add an additional entry to this list. +Setting a value here will *overwrite* the defaults, so be sure to include the default entries as well. NOTE: Sensitive information should not be sent in the query string. Data in the query string is considered non-sensitive. See https://www.owasp.org/index.php/Information_exposure_through_query_strings_in_url[owasp.org] for more information. +*`Cookie` header sanitization:* + +The `Cookie` header is automatically redacted for incoming HTTP request transactions. Each name-value pair from the +Cookie header is parsed by the agent and sent to the APM Server. Before the name-value pairs are recorded, they are +sanitized based on the `SanitizeFieldNames` configuration. Cookies with sensitive data in +their value can be redacted by adding the cookie's name to the comma-separated list. + [options="header"] |============ | Environment variable name | IConfiguration key diff --git a/docs/images/classic-pipeline.png b/docs/images/classic-pipeline.png new file mode 100644 index 0000000000000000000000000000000000000000..3b18fa0fc3b24b8263136cd243c1bc4e2acbd407 GIT binary patch literal 34083 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 Cn8+*u literal 0 HcmV?d00001 diff --git a/docs/images/integrated-pipeline.png b/docs/images/integrated-pipeline.png new file mode 100644 index 0000000000000000000000000000000000000000..22b280e9223f5e38c1082312b492ee3881383d98 GIT binary patch literal 10347 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�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 S>=(q600kKp>1xT3A^!s-3Lbj^ literal 0 HcmV?d00001 diff --git a/docs/supported-technologies.asciidoc b/docs/supported-technologies.asciidoc index 8576e9f63..352656af1 100644 --- a/docs/supported-technologies.asciidoc +++ b/docs/supported-technologies.asciidoc @@ -116,7 +116,7 @@ Automatic instrumentation is supported for the following data access technologie |<> |MongoDB added[1.9] -|MongoDB.Driver 2.4.4+ +|MongoDB.Driver 2.19.0+ |<> |Oracle added[1.12] diff --git a/docs/troubleshooting.asciidoc b/docs/troubleshooting.asciidoc index 1cab69d2b..0bc726321 100644 --- a/docs/troubleshooting.asciidoc +++ b/docs/troubleshooting.asciidoc @@ -244,4 +244,22 @@ The most expensive operation in the agent is typically stack trace capturing. Th If this is too much in your environment, consider disabling stack trace capturing either partially or entirely: - To disable stack trace capturing for spans, but continue to capture stack traces for errors, set the <> to `-1` and leave the <> on its default. -- To disable stack trace capturing entirely –which in most applications reduces the agent overhead dramatically– set <> to `0`. \ No newline at end of file +- To disable stack trace capturing entirely –which in most applications reduces the agent overhead dramatically– set <> to `0`. + +[float] +[[iisexpress-classic-pipeline]] +=== The ElasticApmModule does not load or capture transactions and there are no agent logs generated on IISExpress + +When debugging applications using Visual Studio and IISExpress, the same requirement to use the `Integrated` managed +pipeline mode exists. Select your web application project in the solution explorer and press F4 to load the properties +window. If the managed pipeline mode is set to classic, the ElasticApmModule will not load. + +For example: + +image::./images/classic-pipeline.png[Classic Managed Pipeline Mode in Properties] + +Should be changed to: + +image::./images/integrated-pipeline.png[Integrated Managed Pipeline Mode in Properties] + +You may need to restart Visual Studio for these changes to fully apply. \ No newline at end of file