From 7f56583a4235f0b95f07da805d6aa13b274b80b2 Mon Sep 17 00:00:00 2001 From: Karlie Li Date: Tue, 25 Feb 2025 17:22:50 -0800 Subject: [PATCH 1/4] add browser web vital events --- model/browser/events.yaml | 55 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 model/browser/events.yaml diff --git a/model/browser/events.yaml b/model/browser/events.yaml new file mode 100644 index 0000000000..e8557fb8a3 --- /dev/null +++ b/model/browser/events.yaml @@ -0,0 +1,55 @@ +groups: + - id: event.browser.web_vital + stability: development + type: event + name: browser.web_vital + brief: > + This event describes the website performance metrics introduced by Google, See [web vitals](https://web.dev/vitals). + body: + id: browser.web_vital + requirement_level: required + stability: development + type: map + fields: + - id: name + type: + members: + - id: cls + value: 'cls' + brief: Cumulative Layout Shift. + stability: development + - id: lcp + value: 'lcp' + brief: Largest Contentful Paint. + stability: development + - id: fid + value: 'fid' + brief: First Input Delay. + stability: development + - id: inp + value: 'inp' + brief: Interation to Next Paint. + stability: development + stability: development + brief: Name of the web vital. + requirement_level: required + examples: ["cls"] + - id: value + type: double + stability: development + brief: Value of the web vital. + requirement_level: required + examples: [1.0] + - id: delta + type: double + stability: development + brief: The delta between the current value and the last-reported value. + requirement_level: required + examples: [0.2] + - id: id + type: string + stability: development + brief: A unique ID representing this particular metric instance. + requirement_level: required + examples: ["v3-1677874579383-6381583661209"] + \ No newline at end of file From 8e8f6fc87c796ae239bf83a192b1f9fbba4ef264 Mon Sep 17 00:00:00 2001 From: Karlie Li Date: Wed, 26 Feb 2025 14:15:16 -0800 Subject: [PATCH 2/4] update --- docs/browser/events.md | 50 +++++++++++++++++++++++++++++++++++++++ model/browser/events.yaml | 36 ++++++++++++++-------------- 2 files changed, 68 insertions(+), 18 deletions(-) create mode 100644 docs/browser/events.md diff --git a/docs/browser/events.md b/docs/browser/events.md new file mode 100644 index 0000000000..b90b00e34d --- /dev/null +++ b/docs/browser/events.md @@ -0,0 +1,50 @@ + + +# Semantic conventions for browser events + +**Status**: [Development][DocumentStatus] + +This document defines semantic conventions for browser (web) instrumentations +that emit events. + +## WebVital Event + + + + + + + + +**Status:** ![Development](https://img.shields.io/badge/-development-blue) + +The event name MUST be `browser.web_vital`. + +This event describes the website performance metrics introduced by Google, See [web vitals](https://web.dev/vitals). + +**Body fields:** + +| Body Field | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | +|---|---|---|---|---|---| +| `delta` | double | The delta between the current value and the last-reported value. | `0.2` | `Required` | ![Development](https://img.shields.io/badge/-development-blue) | +| `id` | string | A unique ID representing this particular metric instance. | `v3-1677874579383-6381583661209` | `Required` | ![Development](https://img.shields.io/badge/-development-blue) | +| `name` | enum | Name of the web vital. | `cls` | `Required` | ![Development](https://img.shields.io/badge/-development-blue) | +| `value` | double | Value of the web vital. | `1.0` | `Required` | ![Development](https://img.shields.io/badge/-development-blue) | + +`name` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. + +| Value | Description | Stability | +|---|---|---| +| `cls` | Cumulative Layout Shift. | ![Development](https://img.shields.io/badge/-development-blue) | +| `fid` | First Input Delay. | ![Development](https://img.shields.io/badge/-development-blue) | +| `inp` | Interation to Next Paint. | ![Development](https://img.shields.io/badge/-development-blue) | +| `lcp` | Largest Contentful Paint. | ![Development](https://img.shields.io/badge/-development-blue) | + + + + + + +[DocumentStatus]: https://opentelemetry.io/docs/specs/otel/document-status diff --git a/model/browser/events.yaml b/model/browser/events.yaml index e8557fb8a3..fec79242c0 100644 --- a/model/browser/events.yaml +++ b/model/browser/events.yaml @@ -12,24 +12,24 @@ groups: type: map fields: - id: name - type: - members: - - id: cls - value: 'cls' - brief: Cumulative Layout Shift. - stability: development - - id: lcp - value: 'lcp' - brief: Largest Contentful Paint. - stability: development - - id: fid - value: 'fid' - brief: First Input Delay. - stability: development - - id: inp - value: 'inp' - brief: Interation to Next Paint. - stability: development + type: enum + members: + - id: cls + value: 'cls' + brief: Cumulative Layout Shift. + stability: development + - id: lcp + value: 'lcp' + brief: Largest Contentful Paint. + stability: development + - id: fid + value: 'fid' + brief: First Input Delay. + stability: development + - id: inp + value: 'inp' + brief: Interation to Next Paint. + stability: development stability: development brief: Name of the web vital. requirement_level: required From 0457a2e16e2bd406bc6343340905e67954ca7951 Mon Sep 17 00:00:00 2001 From: Karlie Li Date: Wed, 26 Feb 2025 14:20:36 -0800 Subject: [PATCH 3/4] update --- model/browser/events.yaml | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/model/browser/events.yaml b/model/browser/events.yaml index fec79242c0..3922fb1b5a 100644 --- a/model/browser/events.yaml +++ b/model/browser/events.yaml @@ -11,7 +11,7 @@ groups: stability: development type: map fields: - - id: name + - id: name type: enum members: - id: cls @@ -34,22 +34,21 @@ groups: brief: Name of the web vital. requirement_level: required examples: ["cls"] - - id: value + - id: value type: double stability: development - brief: Value of the web vital. + brief: Value of the web vital. requirement_level: required examples: [1.0] - - id: delta + - id: delta type: double stability: development brief: The delta between the current value and the last-reported value. requirement_level: required examples: [0.2] - - id: id + - id: id type: string stability: development brief: A unique ID representing this particular metric instance. requirement_level: required - examples: ["v3-1677874579383-6381583661209"] - \ No newline at end of file + examples: ["v3-1677874579383-6381583661209"] \ No newline at end of file From 6e0dab929bc99f9bd39ccfc21714ba4222adca37 Mon Sep 17 00:00:00 2001 From: Karlie Li Date: Wed, 26 Feb 2025 14:26:35 -0800 Subject: [PATCH 4/4] update --- model/browser/events.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/model/browser/events.yaml b/model/browser/events.yaml index 3922fb1b5a..126e26416c 100644 --- a/model/browser/events.yaml +++ b/model/browser/events.yaml @@ -51,4 +51,4 @@ groups: stability: development brief: A unique ID representing this particular metric instance. requirement_level: required - examples: ["v3-1677874579383-6381583661209"] \ No newline at end of file + examples: ["v3-1677874579383-6381583661209"]