diff --git a/generated/attributes/http.md b/generated/attributes/http.md index a24a05c..46f8fb6 100644 --- a/generated/attributes/http.md +++ b/generated/attributes/http.md @@ -20,6 +20,7 @@ - [http.request.response_end](#httprequestresponse_end) - [http.request.response_start](#httprequestresponse_start) - [http.request.secure_connection_start](#httprequestsecure_connection_start) + - [http.request.time_to_first_byte](#httprequesttime_to_first_byte) - [http.request.worker_start](#httprequestworker_start) - [http.response.body.size](#httpresponsebodysize) - [http.response.header.\](#httpresponseheaderkey) @@ -232,6 +233,17 @@ The UNIX timestamp representing the time immediately before the browser starts t | Exists in OpenTelemetry | No | | Example | `1732829555.73` | +### http.request.time_to_first_byte + +The time in seconds from the browser's timeorigin to when the first byte of the request's response was received. See https://web.dev/articles/ttfb#measure-resource-requests + +| Property | Value | +| --- | --- | +| Type | `double` | +| Has PII | false | +| Exists in OpenTelemetry | No | +| Example | `1.032` | + ### http.request.worker_start The UNIX timestamp representing the timestamp immediately before dispatching the FetchEvent if a Service Worker thread is already running, or immediately before starting the Service Worker thread if it is not already running. diff --git a/javascript/sentry-conventions/src/attributes.ts b/javascript/sentry-conventions/src/attributes.ts index 73f98ce..340e66d 100644 --- a/javascript/sentry-conventions/src/attributes.ts +++ b/javascript/sentry-conventions/src/attributes.ts @@ -3403,6 +3403,26 @@ export const HTTP_REQUEST_SECURE_CONNECTION_START = 'http.request.secure_connect */ export type HTTP_REQUEST_SECURE_CONNECTION_START_TYPE = number; +// Path: model/attributes/http/http__request__time_to_first_byte.json + +/** + * The time in seconds from the browser's timeorigin to when the first byte of the request's response was received. See https://web.dev/articles/ttfb#measure-resource-requests `http.request.time_to_first_byte` + * + * Attribute Value Type: `number` {@link HTTP_REQUEST_TIME_TO_FIRST_BYTE_TYPE} + * + * Contains PII: false + * + * Attribute defined in OTEL: No + * + * @example 1.032 + */ +export const HTTP_REQUEST_TIME_TO_FIRST_BYTE = 'http.request.time_to_first_byte'; + +/** + * Type for {@link HTTP_REQUEST_TIME_TO_FIRST_BYTE} http.request.time_to_first_byte + */ +export type HTTP_REQUEST_TIME_TO_FIRST_BYTE_TYPE = number; + // Path: model/attributes/http/http__request__worker_start.json /** @@ -6781,6 +6801,7 @@ export type Attributes = { [HTTP_REQUEST_RESPONSE_END]?: HTTP_REQUEST_RESPONSE_END_TYPE; [HTTP_REQUEST_RESPONSE_START]?: HTTP_REQUEST_RESPONSE_START_TYPE; [HTTP_REQUEST_SECURE_CONNECTION_START]?: HTTP_REQUEST_SECURE_CONNECTION_START_TYPE; + [HTTP_REQUEST_TIME_TO_FIRST_BYTE]?: HTTP_REQUEST_TIME_TO_FIRST_BYTE_TYPE; [HTTP_REQUEST_WORKER_START]?: HTTP_REQUEST_WORKER_START_TYPE; [HTTP_RESPONSE_BODY_SIZE]?: HTTP_RESPONSE_BODY_SIZE_TYPE; [HTTP_RESPONSE_HEADER_KEY]?: HTTP_RESPONSE_HEADER_KEY_TYPE; @@ -7067,6 +7088,7 @@ export type FullAttributes = { [HTTP_REQUEST_RESPONSE_END]?: HTTP_REQUEST_RESPONSE_END_TYPE; [HTTP_REQUEST_RESPONSE_START]?: HTTP_REQUEST_RESPONSE_START_TYPE; [HTTP_REQUEST_SECURE_CONNECTION_START]?: HTTP_REQUEST_SECURE_CONNECTION_START_TYPE; + [HTTP_REQUEST_TIME_TO_FIRST_BYTE]?: HTTP_REQUEST_TIME_TO_FIRST_BYTE_TYPE; [HTTP_REQUEST_WORKER_START]?: HTTP_REQUEST_WORKER_START_TYPE; [HTTP_RESPONSE_BODY_SIZE]?: HTTP_RESPONSE_BODY_SIZE_TYPE; [HTTP_RESPONSE_HEADER_KEY]?: HTTP_RESPONSE_HEADER_KEY_TYPE; diff --git a/model/attributes/http/http__request__time_to_first_byte.json b/model/attributes/http/http__request__time_to_first_byte.json new file mode 100644 index 0000000..1a882f1 --- /dev/null +++ b/model/attributes/http/http__request__time_to_first_byte.json @@ -0,0 +1,11 @@ +{ + "key": "http.request.time_to_first_byte", + "brief": "The time in seconds from the browser's timeorigin to when the first byte of the request's response was received. See https://web.dev/articles/ttfb#measure-resource-requests", + "type": "double", + "pii": { + "key": "false" + }, + "is_in_otel": false, + "example": 1.032, + "sdks": ["javascript-browser"] +}