You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -28,8 +28,10 @@ After your applications have been instrumented, you can configure your RUM appli
28
28
The available functionality has the following important limitations:
29
29
30
30
- If proxying compressed traffic, the Auto-Instrumentation method is not able to inject the JS scriptlet into the HTML traffic.
31
-
- This instrumentation method does not support any [advanced RUM configurations][3]. However, `allowedTracingUrls` and `excludedActivityUrls` are supported for NGINX web servers.
32
-
- If NGINX or IIS is acting as a proxy and the upstream server has end-to-end encryption (like TLS) enabled, the module cannot inject RUM. Ensure the web server is set up for TLS origination for successful instrumentation.
31
+
- This instrumentation method does not support any [advanced RUM configurations][3]. However, `allowedTracingUrls` and `excludedActivityUrls` are supported.
32
+
- If the web server is acting as a proxy and the upstream server has end-to-end encryption (like TLS) or content compression (like gzip, zstd, or Brotli) enabled, the module may not inject the RUM Browser SDK. Ensure the following for successful instrumentation:
33
+
- Content compression is disabled on the upstream server.
34
+
- The web server is set up for TLS origination.
33
35
- (Windows IIS only) Configuration for Auto-Instrumentation is only available per Windows IIS site.
34
36
35
37
## Prerequisites
@@ -43,7 +45,7 @@ The automatic installation method requires that you have the [Datadog Agent][2]
43
45
{{< tabs >}}
44
46
{{% tab "NGINX" %}}
45
47
46
-
The Auto-Instrumentation method leverages the [NGINX Dynamic Modules capability][1] to implement a response body filter. The filter injects the RUM SDK into the response body for responses
48
+
The Auto-Instrumentation method leverages the [NGINX Dynamic Modules capability][1] to implement a response body filter. The filter injects the RUM Browser SDK into the response body for responses
47
49
identified as HTML. For more granular control over how configuration files or permissions are handled, you can also install NGINX manually.
@@ -115,6 +117,75 @@ To automatically instrument your RUM application:
115
117
116
118
{{% /collapse-content %}}
117
119
120
+
{{% /tab %}}
121
+
{{% tab "Apache HTTP Server" %}}
122
+
123
+
The Auto-Instrumentation method leverages the [Apache httpd Modules capability][1] to implement a response body filter. The filter injects the RUM Browser SDK into the response body for responses
124
+
identified as HTML. For more granular control over how configuration files or permissions are handled, you can also install the module manually.
1. In Datadog, navigate to the [**Digital Experience > Add an Application Page**][1] and select the JavaScript (JS) application type.
134
+
2. Select **Auto-Instrumentation** and **httpd**.
135
+
3. Set your Session and Session Replay sample rates. See [guidance on configuring sampling][2].
136
+
4. Copy and run the installer command to load the Datadog httpd Module with the RUM SDK Injector onto httpd.
137
+
5. After the installer successfully installs the SDK Injector, restart Apache HTTP Server to begin collecting RUM sessions.
138
+
6. (Optional) To verify the module is successfully injecting the RUM Browser SDK into HTML pages, check the error logs for relevant messages. The module logs important steps during the injection process. Ensure that Apache HTTP Server is configured with at least the `info` log level.
2. Extract the zip to obtain the `mod_datadog.so` file. Move it to a location that Apache HTTP Server has access to (referenced as `<RUM_MODULE_PATH>` in the steps below).
1. Restart the Apache HTTP Server to begin collecting data for your Datadog RUM application. By default, the RUM SDK is injected to all HTML documents. You may need to clear your browser cache.
185
+
2. (Optional) To verify the module is successfully injecting the RUM Browser SDK into HTML pages, check the httpd error logs for relevant messages. The module logs important steps during the injection process. Ensure that Apache HTTP Server is configured with at least the `info` log level.
186
+
187
+
{{% /collapse-content %}}
188
+
118
189
{{% /tab %}}
119
190
{{% tab "Windows IIS" %}}
120
191
@@ -162,7 +233,19 @@ To update your RUM Application:
162
233
163
234
1. Go to your RUM application from the [Application Management][1] list.
164
235
2. On the Instrument your application page, adjust the slider or enter a specific percentage in the input box for Session Sampling or Session Replay Sampling.
165
-
3. Copy and run the installer command in your `NGINX.conf` file.
236
+
3. Copy and paste the configuration snippet to your `NGINX.conf` file.
237
+
238
+
[1]: https://app.datadoghq.com/rum/list
239
+
240
+
{{% /tab %}}
241
+
242
+
{{% tab "Apache HTTP Server" %}}
243
+
244
+
To update your RUM Application:
245
+
246
+
1. Go to your RUM application from the [Application Management][1] list.
247
+
2. On the Instrument your application page, adjust the slider or enter a specific percentage in the input box for Session Sampling or Session Replay Sampling.
248
+
3. Copy and paste the configuration snippet to your `/opt/datadog-httpd/datadog.conf` file.
166
249
167
250
[1]: https://app.datadoghq.com/rum/list
168
251
@@ -195,7 +278,7 @@ Since the module is in Preview, it's possible NGINX may stop serving requests, p
195
278
If you notice that RUM is not being injected into HTML pages, consider the following potential causes:
196
279
197
280
-**Content-Type mismatch**: RUM is injected only into HTML pages. If the `Content-Type` header does not correctly indicate `text/html`, the injection is skipped.
198
-
-**Content compression by upstream server**: If NGINX is acting as a proxy and the upstream server has content compression (like gzip, zstd, or Brotli) enabled, the module may not inject RUM. Ensure that content compression is disabled on the upstream server and configure NGINX to compress the content.
281
+
-**Upstream serverhas end-to-end encryption or content compression**: See [Limitations][41].
199
282
200
283
## Reference
201
284
@@ -205,22 +288,22 @@ If you notice that RUM is not being injected into HTML pages, consider the follo
0 commit comments