---
title: RUM OpenTelemetry Assets
description: Use this package to get a dashboard which displays metrics from your web applications instrumented by Opentelemetry JS SDK. The metrics diplayed are: 
url: https://www.elastic.co/docs/reference/integrations/otel_rum_dashboards
products:
  - Elastic integrations
applies_to:
  - Serverless Observability projects: Preview
  - Serverless Security projects: Preview
  - Elastic Stack: Preview since 9.4
---

# RUM OpenTelemetry Assets
|                                                                                                 |                                                                   |
|-------------------------------------------------------------------------------------------------|-------------------------------------------------------------------|
| **Version**                                                                                     | 0.0.4 <applies-to>: Preview</applies-to> ([View all](#changelog)) |
| **Subscription level**[What's this?](https://www.elastic.co/subscriptions)                      | Basic                                                             |
| **Developed by**[What's this?](https://www.elastic.co/docs/reference/integrations/developed-by) | Elastic                                                           |
| **Minimum Kibana version(s)**                                                                   | 9.4.0                                                             |

<admonition title="The RUM OpenTelemetry Assets integration v0.0.4 is in technical preview">
  To use pre-release integrations, go to the **Integrations** page in Kibana, scroll down, and toggle on the _Display beta integrations_ option.
</admonition>


## Overview

Use this package to get a dashboard which displays metrics from your web applications instrumented by Opentelemetry JS SDK. The metrics diplayed are:
- page load and visits: these metrics are calculated from the telemetry captured by [`@opentelemetry/instrumentation-document-load`](https://www.npmjs.com/package/@opentelemetry/instrumentation-document-load) instrumentation.
- errors: the top errors are calculated from the telemetry captured by [`@opentelemetry/instrumentation-web-exception`](https://www.npmjs.com/package/@opentelemetry/instrumentation-web-exception) instrumentation.
- web vitals: the web vitals are calculated from the telemetry captured by `WebVitalsInstrumentation` within [`@opentelemetry/browser-instrumentation`](https://www.npmjs.com/package/@opentelemetry/browser-instrumentation) package.

You should have all instrumentations enabled in your web application to get the metrics populated in this dashboard.

### Compatibility

This package has been tested with OpenTelemetry JS SDK `2.2.0` and with OpenTelemetry semantic conventions `1.38.0`. It should work with later versions as long as there are no breaking changes in `browser.*` namespace of semantic conventions.
This package requires that your log record and trace exports contain a resource attribute named `user_agent.original` as defined in [semantic conventions](https://github.com/open-telemetry/semantic-conventions/blob/8faf5c44488667d2a819fc349c5997be7070caac/model/browser/entities.yaml#L15). Such field is used to resolve which browser and OS the data is coming from.

## What do I need to use this integration?

This package will show metrics only if you are monitoring web applications with OpenTelemetry JS SDK. If you are new to OpenTelemetry RUM you can check the [guide](https://www.elastic.co/docs/solutions/observability/applications/otel-rum) on how to start with the Elastic stack.

### Validation


#### Dashboards populated

1. In the top search bar in Kibana, search for **Dashboards**.
2. In the search bar, type **RUM OTel**.
3. Select a dashboard for the dataset you are collecting, and verify the dashboard information is populated.


## Troubleshooting

If you do not see data in the dashboard make sure that:
- Elastic search has recevied the documents from Opentelemetry JS SDK. You can search for them in discover with the filter `telemetry.sdk.language : "webjs"`
- You can run more detailed searches to ensure the data is available for specific sections of the dashboard:
  - use the filter `scope.name : "@opentelemetry/instrumentation-document-load"` to check if the data for page load metrics is present.
- use the filter `scope.name : "@opentelemetry/instrumentation-web-exception"` to check if the data for error metrics is present.
- use the filter `scope.name : "@opentelemetry/browser-instrumentation/web-vitals"` to check if the data for web vitals metrics is present.
- use the filter `resource.attributes.user_agent.original : *` to check if the logs/traces contain the right resource attribute.


## Screenshots

This integration includes one or more Kibana dashboards that visualizes the data collected by the integration. The screenshots below illustrate how the ingested data is displayed.
<carousel>
  ![OpenTelemetry RUM Metrics](https://epr.elastic.co/package/otel_rum_dashboards/0.0.4/img/dashboard.png)

  ![OpenTelemetry RUM Web Vitals](https://epr.elastic.co/package/otel_rum_dashboards/0.0.4/img/web-vitals.png)
</carousel>


## Changelog

<dropdown title="Changelog">
  | Version   | Details                                                                                                                       | Minimum Kibana version |
  |-----------|-------------------------------------------------------------------------------------------------------------------------------|------------------------|
  | **0.0.4** | **Bug fix** ([View pull request](https://github.com/elastic/integrations/pull/19123))Use ESQL to parse user_agent             | 9.4.0                  |
  | **0.0.3** | **Enhancement** ([View pull request](https://github.com/elastic/integrations/pull/18409))Add web vitals metrics               | 9.4.0                  |
  | **0.0.2** | **Bug fix** ([View pull request](https://github.com/elastic/integrations/pull/17568))Fix filters on metrics and errors panels | 9.2.1                  |
  | **0.0.1** | **Enhancement** ([View pull request](https://github.com/elastic/integrations/pull/16691))Initial draft of the package         | 9.2.1                  |
</dropdown>