Skip to content

observe

observe is the neutral extension surface shared by the transport packages.

It models:

  • sessions
  • close and error info
  • HTTP request and response observations
  • grouped HTTP round trips
  • WebSocket frames
  • transport-adjacent protocol events

It deliberately avoids:

  • route names
  • app-specific DTOs
  • preview JSON schemas
  • storage ownership

Core types

TypePurpose
SessionIdentifies a transport exchange
CloseInfoTerminal session outcome
ErrorInfoTransport-stage error
HTTPRequest / HTTPResponseSampled HTTP observations
HTTPRoundTripCombined request/response timing group
WSFrameProxied WebSocket message
ProtocolEventHigher-level signal derived from a session
HooksShared callback set

Why concrete structs matter

The public surface uses concrete structs and options, not wide exported interfaces.

That makes the API easier to evolve additively and keeps it easier to understand for downstream Go users.

Released under the Apache 2.0 License.