Skip to content

Commit 2aea49f

Browse files
feat: Support telemetry enabled request config
1 parent e333d62 commit 2aea49f

7 files changed

Lines changed: 44 additions & 16 deletions

File tree

.stats.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 112
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel/kernel-a0ad160eb0fb11e201e240de8487c12992a474076aeed1c1167ee54ade43edfb.yml
3-
openapi_spec_hash: 84a7075fddbe17b1446a759e8cc39047
4-
config_hash: 26beac3050665664d5d74d2bbfe9e808
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel/kernel-e9c99662d29710f105847d461f8919e06f6aa2e43b0e1a6285d0b137643a7907.yml
3+
openapi_spec_hash: 4415cb4790c7a5ec892f4e3521217cb4
4+
config_hash: 27b38657d9a3b33328be930eeb319628

api.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ Types:
119119
- <code><a href="./src/resources/browsers/telemetry.ts">BrowserTelemetryCategoryConfig</a></code>
120120
- <code><a href="./src/resources/browsers/telemetry.ts">BrowserTelemetryConfig</a></code>
121121
- <code><a href="./src/resources/browsers/telemetry.ts">BrowserTelemetryEvent</a></code>
122+
- <code><a href="./src/resources/browsers/telemetry.ts">BrowserTelemetryRequestConfig</a></code>
122123
- <code><a href="./src/resources/browsers/telemetry.ts">TelemetryStreamResponse</a></code>
123124

124125
Methods:

src/resources/browsers/browsers.ts

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ import {
8383
BrowserTelemetryCategoryConfig,
8484
BrowserTelemetryConfig,
8585
BrowserTelemetryEvent,
86+
BrowserTelemetryRequestConfig,
8687
Telemetry,
8788
TelemetryStreamParams,
8889
TelemetryStreamResponse,
@@ -892,11 +893,13 @@ export interface BrowserCreateParams {
892893
stealth?: boolean;
893894

894895
/**
895-
* Telemetry configuration for the browser session. If provided, telemetry capture
896-
* starts with the specified category filter when the session is created. If
897-
* omitted, no telemetry capture is started.
896+
* Telemetry configuration for the browser session. Set enabled to true to start
897+
* capture using VM defaults, or provide browser category settings. If omitted,
898+
* null, set to an empty object ({}), set to enabled: false without browser
899+
* category settings, or all four categories are explicitly disabled, capture is
900+
* not started.
898901
*/
899-
telemetry?: TelemetryAPI.BrowserTelemetryConfig | null;
902+
telemetry?: TelemetryAPI.BrowserTelemetryRequestConfig | null;
900903

901904
/**
902905
* The number of seconds of inactivity before the browser session is terminated.
@@ -952,11 +955,12 @@ export interface BrowserUpdateParams {
952955

953956
/**
954957
* Telemetry configuration. Omit, set to null, or set to an empty object ({}) to
955-
* leave the existing configuration unchanged (no-op). To enable capture for all
956-
* categories using VM defaults, set browser to an empty object ({"browser": {}}).
957-
* To stop capture, set every category's enabled to false.
958+
* leave the existing configuration unchanged. Set enabled to true to enable
959+
* capture using VM defaults. Set enabled to false to stop capture. Provide browser
960+
* category settings for per-category updates. Explicitly disabling all four
961+
* categories also stops capture.
958962
*/
959-
telemetry?: TelemetryAPI.BrowserTelemetryConfig | null;
963+
telemetry?: TelemetryAPI.BrowserTelemetryRequestConfig | null;
960964

961965
/**
962966
* Viewport configuration to apply to the browser session.
@@ -1111,6 +1115,7 @@ export declare namespace Browsers {
11111115
type BrowserTelemetryCategoryConfig as BrowserTelemetryCategoryConfig,
11121116
type BrowserTelemetryConfig as BrowserTelemetryConfig,
11131117
type BrowserTelemetryEvent as BrowserTelemetryEvent,
1118+
type BrowserTelemetryRequestConfig as BrowserTelemetryRequestConfig,
11141119
type TelemetryStreamResponse as TelemetryStreamResponse,
11151120
type TelemetryStreamParams as TelemetryStreamParams,
11161121
};

src/resources/browsers/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ export {
111111
type BrowserTelemetryCategoryConfig,
112112
type BrowserTelemetryConfig,
113113
type BrowserTelemetryEvent,
114+
type BrowserTelemetryRequestConfig,
114115
type TelemetryStreamResponse,
115116
type TelemetryStreamParams,
116117
} from './telemetry';

src/resources/browsers/telemetry.ts

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1412,11 +1412,11 @@ export interface BrowserTelemetryCategoryConfig {
14121412
}
14131413

14141414
/**
1415-
* Telemetry configuration for a browser session.
1415+
* Active telemetry configuration for a browser session.
14161416
*/
14171417
export interface BrowserTelemetryConfig {
14181418
/**
1419-
* Per-category enable/disable flags. If omitted, all categories are captured.
1419+
* Per-category enable/disable flags.
14201420
*/
14211421
browser?: BrowserTelemetryCategoriesConfig;
14221422
}
@@ -1452,6 +1452,25 @@ export type BrowserTelemetryEvent =
14521452
| BrowserMonitorReconnectFailedEvent
14531453
| BrowserMonitorInitFailedEvent;
14541454

1455+
/**
1456+
* Telemetry request configuration for a browser session.
1457+
*/
1458+
export interface BrowserTelemetryRequestConfig {
1459+
/**
1460+
* Per-category enable/disable flags. If enabled is true and browser is omitted or
1461+
* empty, the VM default category set is used. Explicitly disabling all four
1462+
* categories stops capture on update and starts no capture on create.
1463+
*/
1464+
browser?: BrowserTelemetryCategoriesConfig;
1465+
1466+
/**
1467+
* Request shortcut for browser telemetry capture. True enables capture using VM
1468+
* defaults. False stops capture on update and starts no capture on create. Cannot
1469+
* be combined with browser category settings.
1470+
*/
1471+
enabled?: boolean;
1472+
}
1473+
14551474
/**
14561475
* Envelope wrapping a browser telemetry event with its monotonic sequence number.
14571476
* Each SSE data: frame carries one envelope as JSON. The seq value is also emitted
@@ -1515,6 +1534,7 @@ export declare namespace Telemetry {
15151534
type BrowserTelemetryCategoryConfig as BrowserTelemetryCategoryConfig,
15161535
type BrowserTelemetryConfig as BrowserTelemetryConfig,
15171536
type BrowserTelemetryEvent as BrowserTelemetryEvent,
1537+
type BrowserTelemetryRequestConfig as BrowserTelemetryRequestConfig,
15181538
type TelemetryStreamResponse as TelemetryStreamResponse,
15191539
type TelemetryStreamParams as TelemetryStreamParams,
15201540
};

tests/api-resources/browsers/browsers.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ describe('resource browsers', () => {
4747
network: { enabled: true },
4848
page: { enabled: true },
4949
},
50+
enabled: true,
5051
},
5152
timeout_seconds: 10,
5253
viewport: {

yarn.lock

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1215,9 +1215,9 @@ baseline-browser-mapping@^2.9.0:
12151215
integrity sha512-B0xUquLkiGLgHhpPBqvl7GWegWBUNuujQ6kXd/r1U38ElPT6Ok8KZ8e+FpUGEc2ZoRQUzq/aUnaKFc/svWUGSg==
12161216

12171217
brace-expansion@^2.0.2:
1218-
version "2.1.0"
1219-
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.1.0.tgz#4f41a41190216ee36067ec381526fe9539c4f0ae"
1220-
integrity sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w==
1218+
version "2.1.1"
1219+
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.1.1.tgz#c68b1c4111c76aae3a6fba55d496cee10c39dad8"
1220+
integrity sha512-WR1cURNjuvBLMZBMbqM0UoE+WAfdUcEV1ccD8PVBVOI+Z3ND4+SZbN8RsfT2bMuG1qwz5RFvPukSZm5fF2D5eA==
12211221
dependencies:
12221222
balanced-match "^1.0.0"
12231223

0 commit comments

Comments
 (0)