grafana / grafana/faro-react-native-sdk

Emit mobile performance events instead of measurements

Open
#91 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
9
Forks
4
Avg merge
1d 18h
Merged PRs (30d)
9

Description

Migrate React Native mobile performance signals from Faro measurements to `app.*` events (aligns with OpenTelemetry's per-metric-event model).

| Current measurement | New event |
| --- | --- |
| `app_startup` | `app.startup` |
| `app_refresh_rate` | `app.refresh_rate` |
| `app_cpu_usage` | `app.cpu_usage` |
| `app_memory` | `app.memory` |
| `app_frozen_frame` | `app.jank` (`app.jank.threshold` ≈ 0.700) |
| `app_frames_rate` | `app.jank` (`app.jank.threshold` ≈ 0.016) |
| `anr` | `app.anr` |

- Numeric value serialized as a decimal string in a `value` attribute (events are string-typed).
- `app_frozen_frame` + `app_frames_rate` collapse into one `app.jank` event, distinguished by `app.jank.threshold`.
- Emit the event only (not the measurement) to avoid double-counting.
- Web Vitals are unaffected — they stay measurements.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.