From 95f188e284062c5e99cc92cff8d8736289cef221 Mon Sep 17 00:00:00 2001 From: Lukas Stracke Date: Tue, 9 Sep 2025 14:17:40 +0200 Subject: [PATCH 1/4] feat(http): Add new `http.request` attributes --- generated/attributes/http.md | 12 ++++++++++ .../sentry-conventions/src/attributes.ts | 22 +++++++++++++++++++ .../http/http__request__redirect_end.json | 13 +++++++++++ 3 files changed, 47 insertions(+) create mode 100644 model/attributes/http/http__request__redirect_end.json diff --git a/generated/attributes/http.md b/generated/attributes/http.md index ede6692a..e9042a08 100644 --- a/generated/attributes/http.md +++ b/generated/attributes/http.md @@ -13,6 +13,7 @@ - [http.request.fetch_start](#httprequestfetch_start) - [http.request.header.\](#httprequestheaderkey) - [http.request.method](#httprequestmethod) + - [http.request.redirect_end](#httprequestredirect_end) - [http.request.redirect_start](#httprequestredirect_start) - [http.request.request_start](#httprequestrequest_start) - [http.request.resend_count](#httprequestresend_count) @@ -153,6 +154,17 @@ The HTTP method used. | Example | `GET` | | Aliases | `method`, `http.method` | +### http.request.redirect_end + +The UNIX timestamp representing the timestamp immediately after receiving the last byte of the response of the last redirect + +| Property | Value | +| --- | --- | +| Type | `integer` | +| Has PII | false | +| Exists in OpenTelemetry | No | +| Example | `1732829558` | + ### http.request.redirect_start The UNIX timestamp representing the start time of the fetch which that initiates the redirect. diff --git a/javascript/sentry-conventions/src/attributes.ts b/javascript/sentry-conventions/src/attributes.ts index 35cf1a25..6e25ab2c 100644 --- a/javascript/sentry-conventions/src/attributes.ts +++ b/javascript/sentry-conventions/src/attributes.ts @@ -3238,6 +3238,26 @@ export const HTTP_REQUEST_METHOD = 'http.request.method'; */ export type HTTP_REQUEST_METHOD_TYPE = string; +// Path: model/attributes/http/http__request__redirect_end.json + +/** + * The UNIX timestamp representing the timestamp immediately after receiving the last byte of the response of the last redirect `http.request.redirect_end` + * + * Attribute Value Type: `number` {@link HTTP_REQUEST_REDIRECT_END_TYPE} + * + * Contains PII: false + * + * Attribute defined in OTEL: No + * + * @example 1732829558 + */ +export const HTTP_REQUEST_REDIRECT_END = 'http.request.redirect_end'; + +/** + * Type for {@link HTTP_REQUEST_REDIRECT_END} http.request.redirect_end + */ +export type HTTP_REQUEST_REDIRECT_END_TYPE = number; + // Path: model/attributes/http/http__request__redirect_start.json /** @@ -6618,6 +6638,7 @@ export type Attributes = { [HTTP_REQUEST_FETCH_START]?: HTTP_REQUEST_FETCH_START_TYPE; [HTTP_REQUEST_HEADER_KEY]?: HTTP_REQUEST_HEADER_KEY_TYPE; [HTTP_REQUEST_METHOD]?: HTTP_REQUEST_METHOD_TYPE; + [HTTP_REQUEST_REDIRECT_END]?: HTTP_REQUEST_REDIRECT_END_TYPE; [HTTP_REQUEST_REDIRECT_START]?: HTTP_REQUEST_REDIRECT_START_TYPE; [HTTP_REQUEST_REQUEST_START]?: HTTP_REQUEST_REQUEST_START_TYPE; [HTTP_REQUEST_RESEND_COUNT]?: HTTP_REQUEST_RESEND_COUNT_TYPE; @@ -6900,6 +6921,7 @@ export type FullAttributes = { [HTTP_REQUEST_FETCH_START]?: HTTP_REQUEST_FETCH_START_TYPE; [HTTP_REQUEST_HEADER_KEY]?: HTTP_REQUEST_HEADER_KEY_TYPE; [HTTP_REQUEST_METHOD]?: HTTP_REQUEST_METHOD_TYPE; + [HTTP_REQUEST_REDIRECT_END]?: HTTP_REQUEST_REDIRECT_END_TYPE; [HTTP_REQUEST_REDIRECT_START]?: HTTP_REQUEST_REDIRECT_START_TYPE; [HTTP_REQUEST_REQUEST_START]?: HTTP_REQUEST_REQUEST_START_TYPE; [HTTP_REQUEST_RESEND_COUNT]?: HTTP_REQUEST_RESEND_COUNT_TYPE; diff --git a/model/attributes/http/http__request__redirect_end.json b/model/attributes/http/http__request__redirect_end.json new file mode 100644 index 00000000..45a06cfe --- /dev/null +++ b/model/attributes/http/http__request__redirect_end.json @@ -0,0 +1,13 @@ +{ + "key": "http.request.redirect_end", + "brief": "The UNIX timestamp representing the timestamp immediately after receiving the last byte of the response of the last redirect", + "type": "integer", + "pii": { + "key": "false" + }, + "is_in_otel": false, + "example": 1732829558, + "sdks": [ + "javascript-browser" + ] +} From 06e563701bbf8a3d33de64c24e696be0c2971e3f Mon Sep 17 00:00:00 2001 From: Lukas Stracke Date: Tue, 9 Sep 2025 14:54:03 +0200 Subject: [PATCH 2/4] http.request.worker_start --- generated/attributes/http.md | 14 +++++++++++- .../sentry-conventions/src/attributes.ts | 22 +++++++++++++++++++ .../http/http__request__worker_start.json | 13 +++++++++++ 3 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 model/attributes/http/http__request__worker_start.json diff --git a/generated/attributes/http.md b/generated/attributes/http.md index e9042a08..e2cc0d98 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.worker_start](#httprequestworker_start) - [http.response.body.size](#httpresponsebodysize) - [http.response.header.\](#httpresponseheaderkey) - [http.response.header.content-length](#httpresponseheadercontentlength) @@ -160,7 +161,7 @@ The UNIX timestamp representing the timestamp immediately after receiving the la | Property | Value | | --- | --- | -| Type | `integer` | +| Type | `double` | | Has PII | false | | Exists in OpenTelemetry | No | | Example | `1732829558` | @@ -231,6 +232,17 @@ The UNIX timestamp representing the time immediately before the browser starts t | Exists in OpenTelemetry | No | | Example | `1732829555` | +### 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. + +| Property | Value | +| --- | --- | +| Type | `double` | +| Has PII | false | +| Exists in OpenTelemetry | No | +| Example | `1732829553` | + ### http.response.body.size The encoded body size of the response (in bytes). diff --git a/javascript/sentry-conventions/src/attributes.ts b/javascript/sentry-conventions/src/attributes.ts index 6e25ab2c..6c18f6a9 100644 --- a/javascript/sentry-conventions/src/attributes.ts +++ b/javascript/sentry-conventions/src/attributes.ts @@ -3378,6 +3378,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__worker_start.json + +/** + * 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. `http.request.worker_start` + * + * Attribute Value Type: `number` {@link HTTP_REQUEST_WORKER_START_TYPE} + * + * Contains PII: false + * + * Attribute defined in OTEL: No + * + * @example 1732829553 + */ +export const HTTP_REQUEST_WORKER_START = 'http.request.worker_start'; + +/** + * Type for {@link HTTP_REQUEST_WORKER_START} http.request.worker_start + */ +export type HTTP_REQUEST_WORKER_START_TYPE = number; + // Path: model/attributes/http/http__response__body__size.json /** @@ -6645,6 +6665,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_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; [HTTP_RESPONSE_HEADER_CONTENT_LENGTH]?: HTTP_RESPONSE_HEADER_CONTENT_LENGTH_TYPE; @@ -6928,6 +6949,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_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; [HTTP_RESPONSE_HEADER_CONTENT_LENGTH]?: HTTP_RESPONSE_HEADER_CONTENT_LENGTH_TYPE; diff --git a/model/attributes/http/http__request__worker_start.json b/model/attributes/http/http__request__worker_start.json new file mode 100644 index 00000000..2c5713d2 --- /dev/null +++ b/model/attributes/http/http__request__worker_start.json @@ -0,0 +1,13 @@ +{ + "key": "http.request.worker_start", + "brief": "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.", + "type": "double", + "pii": { + "key": "false" + }, + "is_in_otel": false, + "example": 1732829553, + "sdks": [ + "javascript-browser" + ] +} From 5e2b1b72648816e5f5c700a043a65a5e02b2e5cb Mon Sep 17 00:00:00 2001 From: Lukas Stracke Date: Tue, 9 Sep 2025 15:08:17 +0200 Subject: [PATCH 3/4] biome --- model/attributes/http/http__request__redirect_end.json | 4 +--- model/attributes/http/http__request__worker_start.json | 4 +--- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/model/attributes/http/http__request__redirect_end.json b/model/attributes/http/http__request__redirect_end.json index 45a06cfe..3970a2bc 100644 --- a/model/attributes/http/http__request__redirect_end.json +++ b/model/attributes/http/http__request__redirect_end.json @@ -7,7 +7,5 @@ }, "is_in_otel": false, "example": 1732829558, - "sdks": [ - "javascript-browser" - ] + "sdks": ["javascript-browser"] } diff --git a/model/attributes/http/http__request__worker_start.json b/model/attributes/http/http__request__worker_start.json index 2c5713d2..5fc13338 100644 --- a/model/attributes/http/http__request__worker_start.json +++ b/model/attributes/http/http__request__worker_start.json @@ -7,7 +7,5 @@ }, "is_in_otel": false, "example": 1732829553, - "sdks": [ - "javascript-browser" - ] + "sdks": ["javascript-browser"] } From 067e400239b8243c9c51db7781fa5290865a939f Mon Sep 17 00:00:00 2001 From: Lukas Stracke Date: Tue, 9 Sep 2025 15:18:47 +0200 Subject: [PATCH 4/4] double --- model/attributes/http/http__request__redirect_end.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/model/attributes/http/http__request__redirect_end.json b/model/attributes/http/http__request__redirect_end.json index 3970a2bc..24582720 100644 --- a/model/attributes/http/http__request__redirect_end.json +++ b/model/attributes/http/http__request__redirect_end.json @@ -1,7 +1,7 @@ { "key": "http.request.redirect_end", "brief": "The UNIX timestamp representing the timestamp immediately after receiving the last byte of the response of the last redirect", - "type": "integer", + "type": "double", "pii": { "key": "false" },