DevTools.ts
DevTools.ts overview
Section titled “DevTools.ts overview”High-level layers for connecting an Effect runtime to the unstable devtools tracer.
DevTools is the application-facing entry point for installing a tracer that
mirrors the current tracer and streams spans, span events, span completions,
and metric snapshots to an external devtools process. Lower-level socket
protocol details live in DevToolsClient.
Since v4.0.0
Exports Grouped by Category
Section titled “Exports Grouped by Category”layers
Section titled “layers”Layer that installs the devtools tracer over a WebSocket connection using the
global WebSocket constructor, defaulting to ws://localhost:34437.
When to use
Use to stream Effect tracing and metrics telemetry to a devtools process when
the runtime environment already provides a global WebSocket constructor.
Details
This is a convenience wrapper around layerWebSocket(url) that provides
Socket.layerWebSocketConstructorGlobal, so the resulting layer has no
remaining requirements.
Gotchas
This layer only installs the client-side tracer; it does not start a devtools
server, so the configured WebSocket endpoint must already be reachable. It
relies on globalThis.WebSocket being available in the runtime.
See
layerWebSocketfor installing the devtools tracer with an explicitWebSocketConstructorrequirementlayerSocketfor installing the devtools tracer over an existingSockettransport
Signature
declare const layer: (url?: string) => Layer.Layer<never>Since v4.0.0
layerSocket
Section titled “layerSocket”Layer that installs the devtools tracer using an existing Socket.
Signature
declare const layerSocket: Layer.Layer<never, never, Socket.Socket>Since v4.0.0
layerWebSocket
Section titled “layerWebSocket”Layer that installs the devtools tracer over a WebSocket connection to the
specified URL, defaulting to ws://localhost:34437.
Signature
declare const layerWebSocket: (url?: string) => Layer.Layer<never, never, Socket.WebSocketConstructor>Since v4.0.0