Semantic conventions for request events captured on the client in Dynatrace RUM.
This query searches for all request user events.
fetch user.events| filter characteristics.has_request == true
This query searches for all failed requests.
fetch user.events| filter characteristics.has_failed_request == true
RUM JavaScript doesn't capture data URL requests.
| Attribute | Type | Description | Examples |
|---|---|---|---|
characteristics.classifier | string | experimental In case the request failed, error; for page loads, navigation; otherwise, request. | request |
characteristics.has_csp_violation | boolean | experimental Additional error characteristic: If set to true, the user event contains a CSP rule violation. | true |
characteristics.has_error | boolean | experimental Primary characteristic: If set to true, the user event contains at least one error. | true |
characteristics.has_exception | boolean | experimental Additional error characteristic: If set to true, the user event contains an exception. | true |
characteristics.has_failed_request | boolean | experimental Additional error characteristic: If set to true, the user event contains a failed request. | true |
characteristics.has_navigation | boolean | experimental Primary characteristic: If set to true, the user event contains navigation information. | true |
characteristics.has_request | boolean | experimental Fixed value true. | true |
characteristics.has_w3c_navigation_timings | boolean | experimental Additional request characteristic: If set to true, the user event contains W3C navigation timings. | true |
characteristics.has_w3c_resource_timings | boolean | experimental Additional request characteristic: If set to true, the user event contains W3C resource timings. | true |
| Attribute | Type | Description | Examples |
|---|---|---|---|
network.protocol.name | string | experimental OSI Application Layer or non-OSI equivalent. This is a mandatory field for request user events. | amqp; http; mqtt |
| Attribute | Type | Description | Examples |
|---|---|---|---|
url.domain | string | experimental The URI domain component. This is extracted from url.full. | www.foo.bar; google.com; wikipedia.org |
url.fragment | string | experimental The URI fragment component. This is extracted from url.full. | SemConv |
url.full | string | experimental Absolute URL describing a network resource according to RFC3986. OneAgent for Mobile removes the optional user information subcomponent. This is a mandatory field for request user events. Tags: sensitive-spans | https://www.foo.bar/docs/search?q=OpenTelemetry#SemConv |
url.path | string | experimental The URI path component. This is extracted from url.full. | /docs/search |
url.provider | string | experimental The provider type for the host name of url.full. This information is determined by Dynatrace RUM resource detection. | third_party |
url.query | string | experimental The URI query component. This is extracted from url.full.Tags: sensitive-spans | q=OpenTelemetry |
url.scheme | string | experimental The URI scheme component identifying the used protocol. This is extracted from url.full. | https; ftp; telnet |
Only available for HTTP requests.
| Attribute | Type | Description | Examples |
|---|---|---|---|
http.request.method | string | experimental HTTP request method. | GET; POST; HEAD |
http.response.reason_phrase | string | experimental The HTTP reason phrase (HTTP1 only). | Not found |
http.response.status_code | long | experimental HTTP response status code. | 200 |
Only available for WebSocket connection request events sent by OneAgent for Mobile.
| Attribute | Type | Description | Examples |
|---|---|---|---|
websocket.connection.status_code | long | experimental The WebSocket connection status code. | 1001 |
| Attribute | Type | Description | Examples |
|---|---|---|---|
span.id | uid | experimental A unique identifier for a span within a trace. The span.id is an 8-byte ID and hex-encoded if shown as a string. Only available if Dynatrace RUM starts a trace and sets the Trace Context HTTP headers. | f76281848bd8288c |
trace.id | uid | experimental A unique identifier for a trace. The trace.id is a 16-byte ID and hex-encoded if shown as a string. Available if Dynatrace RUM starts a trace and sets the Trace Context HTTP headers or if RUM JavaScript captures the trace information reported by OneAgent via server-timing HTTP response header. | 357bf70f3c617cb34584b31bd4616af8 |
trace.is_sampled | boolean | experimental Flag indicating whether the trace was sampled out. If set to true, the trace is recorded. If set to false, the trace is ignored. Only available if RUM JavaScript captures the trace information reported by OneAgent via server-timing HTTP response header. Not supported by OneAgent for Mobile. | true; false |
| Attribute | Type | Description | Examples |
|---|---|---|---|
request.trace_context_hint | string | experimental Indicates if and why Dynatrace RUM set the W3C Trace Context headers on the request. | excluded |
request.server_timing_hint | string | experimental Indicates if and why RUM JavaScript received trace information from OneAgent via the browser's performance API ( PerformanceServerTiming interface). | received |
request.trace_context_hint MUST be one of the following:
| Value | Description |
|---|---|
api_set | Trace Context headers were set using the Dyntrace API. |
api_unused | Trace Context headers were not set in the customer code using the Dyntrace API, therefore it’s expected that the header is not set. |
cross_origin | Trace Context headers were not set because the request is a cross-origin request. |
disabled | Trace Context headers were not set for the request because the feature is disabled. |
excluded | Trace Context headers were not set because the request is excluded by configuration. |
external | Trace Context headers were not set because the traceparent HTTP request header was already available. |
from_server | Trace Context headers were set based on the request's server-timing HTTP response header. |
included | Trace Context headers were set because the request is included by configuration. |
invalid | Trace Context headers were not set because the traceparent HTTP request header was already available but invalid according to the W3C specification. |
max_length | Trace Context headers were not set because the maximum length for the tracestate entry was exceeded. |
missing_values | Trace Context headers were not set because mandatory values were not available to Dyntrace RUM. |
not_http | Trace Context headers were not set because the request is not an HTTP request. |
not_initialized | Trace Context headers were not set because the initial configuration was not received. |
not_set | Trace Context headers were not set for the request. |
set | Trace Context headers were set for the request. |
request.server_timing_hint MUST be one of the following:
| Value | Description |
|---|---|
invalid | RUM JavaScript ignored invalid trace information. |
mismatch | RUM JavaScript received trace information that doesn't match the Trace Context headers. |
no_trace_info | No trace information available. |
not_available | Server-Timing not available. |
received | RUM JavaScript received valid trace information. |
Only available for user events sent by OneAgent for Mobile.
| Attribute | Type | Description | Examples |
|---|---|---|---|
request.bytes_received | long | experimental The estimated number of encoded/compressed bytes received for the request. This includes the response header fields plus the response payload body. | 36917 |
request.bytes_sent | long | experimental The estimated number of encoded/compressed bytes sent for the request. This includes the request header fields plus the request payload body. | 456 |
Only available for user events sent by RUM JavaScript and based on W3C Resource Timing and W3C Navigation Timing.
| Attribute | Type | Description | Examples |
|---|---|---|---|
performance.incomplete_reason | string | experimental Gives additional information about missing performance fields. | not_detected |
performance.time_origin | timestamp | experimental The timestamp of the beginning of the current page's lifetime in client time. The value is a UNIX Epoch time in nanoseconds. | 1667469141402000000 |
performance.initiator_type | string | experimental The web platform feature that initiated the resource load. | xmlhttprequest |
performance.next_hop_protocol | string | experimental The network protocol used to fetch the resource. | http/1.1 |
performance.render_blocking_status | string | experimental The render-blocking status of the resource. | blocking; non-blocking |
performance.delivery_type | string | experimental The delivery type of the resource, for example, cache or navigational-prefetch. This is an experimental feature that is only available in some browsers. | cache |
performance.transfer_size | long | experimental The size (in octets) of the fetched resource. The size includes the response header fields plus the response payload body. | 36917 |
performance.encoded_body_size | long | experimental The size (in octets) of the content encoded body. | 31580 |
performance.decoded_body_size | long | experimental The size (in octets) of the body in bytes after removing content encoding. | 31580 |
performance.incomplete_reason MUST be one of the following:
| Value | Description |
|---|---|
cache_or_cors | The resource was retrieved from a cache or it was a cross-origin request without Timing-Allow-Origin HTTP response header. |
invalid_timings | The timings reported by the browser are invalid. |
late_aborted | The browser only provides incomplete information because the HTTP request was aborted late in processing. |
local_cache | The resource was fetched from a local cache. Set in case performance.transfer_size is zero and performance.decoded_body_size is not zero. |
not_detected | Not provided by the browser. |
page_dismissal | Page dismissal was triggered while RUM JavaScript waited for resources. |
performance.initiator_type MUST be one of the following:
| Value | Description |
|---|---|
audio | If the request was initiated by an <audio> element's src attribute. |
beacon | If the request was initiated by a navigator.sendBeacon() method. |
body | If the request was initiated by a <body> element's background attribute. |
css | If the request was initiated by a CSS url() function. |
early-hint | If the request was initiated by an 103 Early Hint response. |
embed | If the request was initiated by an <embed> element's src attribute. |
fetch | If the request was initiated by a fetch() method. |
frame | If the request was initiated by loading a <frame> element. |
icon | If the request was initiated by a favicon. Non-standard and only reported by Safari. |
iframe | If the request was initiated by an <iframe> element's src attribute. |
image | If the request was initiated by an <image> element. |
img | If the request was initiated by an <img> element's src or srcset attribute. |
input | If the request was initiated by an <input> element of type image. |
link | If the request was initiated by a <link> element. |
navigation | If the request was initiated by a navigation request. |
object | If the request was initiated by an <object> element. |
other | If no condition matches. |
ping | If the request was initiated by an <a> element's ping. |
script | If the request was initiated by a <script> element. |
track | If the request was initiated by a <track> element's src. |
video | If the request was initiated by a <video> element's poster or src. |
xmlhttprequest | If the request was initiated by an XMLHttpRequest. |
performance.render_blocking_status MUST be one of the following:
| Value | Description |
|---|---|
blocking | The resource might potentially block rendering. |
non-blocking | The resource does not block rendering. |
| Attribute | Type | Description | Examples |
|---|---|---|---|
performance.start_time | duration | experimental The start time of the resource fetching phase. The value is relative to performance.time_origin and for navigation timings always 0. | 0 |
performance.redirect_start | duration | experimental The start time of the redirect phase. The value is relative to performance.start_time. | 0 |
performance.redirect_end | duration | experimental The end time of the redirect phase. The value is relative to performance.start_time. | 0 |
performance.worker_start | duration | experimental The start time of the service worker phase. The value is relative to performance.start_time. | 0 |
performance.fetch_start | duration | experimental The start time of the resource fetching. (This is also the end time of the service worker phase.) The value is relative to performance.start_time. | 3000000 |
performance.domain_lookup_start | duration | experimental The start time of the domain name lookup phase. The value is relative to performance.start_time. | 3000000 |
performance.domain_lookup_end | duration | experimental The end time of the domain name lookup phase. The value is relative to performance.start_time. | 3000000 |
performance.connect_start | duration | experimental The start time of the complete server connection phase. The value is relative to performance.start_time. | 3000000 |
performance.secure_connection_start | duration | experimental The start time of the secure server connection phase. The value is relative to performance.start_time. | 3000000 |
performance.connect_end | duration | experimental The end time of the complete server connection phase. The value is relative to performance.start_time. | 3000000 |
performance.request_start | duration | experimental The start time of the resource request phase. The value is relative to performance.start_time. | 17000000 |
performance.first_interim_response_start | duration | experimental The time when the first byte was received for an interim 1xx response. The value is relative to performance.start_time. This is an experimental feature that is only available in some browsers. | 0 |
performance.final_response_headers_start | duration | experimental The time when the first byte of the final document response was received from the server. The value is relative to performance.start_time. This is an experimental feature that is only available in some browsers. | 0 |
performance.response_start | duration | experimental The start time of the resource response phase. (This is also the end time of the resource request phase.) The value is relative to performance.start_time. | 150000000 |
performance.response_end | duration | experimental The end time of the resource response phase. The value is relative to performance.start_time. | 150000000 |
| Attribute | Type | Description | Examples |
|---|---|---|---|
performance.type | string | experimental The navigation type according to the W3C navigation timing. | navigate |
performance.redirect_count | long | experimental The number of redirects since the last non-redirect navigation. | 0 |
performance.activation_start | duration | experimental The time when a prerendered document is activated. The value is relative to performance.start_time. This is an experimental feature that is only available in some browsers. | 0 |
performance.unload_event_start | duration | experimental The start time of the unload event handler phase. The value is relative to performance.start_time. | 154000000 |
performance.unload_event_end | duration | experimental The end time of the unload event handler phase. The value is relative to performance.start_time. | 167000000 |
performance.dom_interactive | duration | experimental The time when the DOM construction has finished and interaction with it is possible. The value is relative to performance.start_time. | 409000000 |
performance.dom_content_loaded_event_start | duration | experimental The start time of the DOM content loaded event handler phase. The value is relative to performance.start_time. | 409000000 |
performance.dom_content_loaded_event_end | duration | experimental The end time of the DOM content loaded event handler phase. The value is relative to performance.start_time. | 424000000 |
performance.dom_complete | duration | experimental The time when the DOM is complete. The value is relative to performance.start_time. | 899000000 |
performance.load_event_start | duration | experimental The start time of the load event handler phase. The value is relative to performance.start_time. | 899000000 |
performance.load_event_end | duration | experimental The end time of the load event handler phase. The value is relative to performance.start_time. | 900000000 |
performance.type MUST be one of the following:
| Value | Description |
|---|---|
back_forward | Navigation through the browser's history traversal operation. |
navigate | Navigation started by clicking a link, entering the URL in the browser's address bar, form submission, or initializing through a script operation that is not a reload or back_forward navigation. |
reload | Navigation through the browser's reload operation, location.reload() or a refresh pragma directive like <meta http-equiv="refresh" content="300">. |
Only available for user events sent by RUM JavaScript that are based on W3C Navigation Timing.
| Attribute | Type | Description | Examples |
|---|---|---|---|
web_vitals.time_to_first_byte | duration | experimental The Time to First Byte value. | 92000000 |
Only available for user events sent by RUM JavaScript and captured using the browser's XML Http Request API.
| Attribute | Type | Description | Examples |
|---|---|---|---|
xhr.load_end | duration | experimental The time from request start to XHR load end event. The value is relative to performance.start_time. | 150000000 |
Only available for user events sent by RUM JavaScript and in case a user action was active when the request started.
| Attribute | Type | Description | Examples |
|---|---|---|---|
user_action.instance_id | uid | experimental The ID of the active user action. The user_action.instance_id is an 8-byte ID and hex-encoded if shown as a string. | f76281848bd8288c |
Navigation requests, i.e. page loads captured by RUM JavaScript that contain W3C Navigation Timings(https://www.w3.org/TR/navigation-timing-2/), contain additional attributes that are defined in the navigation model.
Failed requests can contain additional attributes that are defined in the exception model and the Content Security Policy (CSP) rule violation model.
The basic attributes for all user events are defined in the user event base model.