package qlogwriter
Import Path
github.com/quic-go/quic-go/qlogwriter (on go.dev)
Dependency Relation
imports 10 packages, and imported by 7 packages
Package-Level Type Names (total 6)
type ConnectionID = protocol.ConnectionID (struct)
Event represents a qlog event that can be encoded to JSON.
Each event must provide its name and a method to encode itself using a jsontext.Encoder.
Encode writes the event's data to the provided jsontext.Encoder
Name returns the name of the event, as it should appear in the qlog output
github.com/quic-go/quic-go/http3/qlog.DatagramCreated
github.com/quic-go/quic-go/http3/qlog.DatagramParsed
github.com/quic-go/quic-go/http3/qlog.FrameCreated
github.com/quic-go/quic-go/http3/qlog.FrameParsed
github.com/quic-go/quic-go/qlog.ALPNInformation
github.com/quic-go/quic-go/qlog.CongestionStateUpdated
github.com/quic-go/quic-go/qlog.ConnectionClosed
github.com/quic-go/quic-go/qlog.DebugEvent
github.com/quic-go/quic-go/qlog.ECNStateUpdated
github.com/quic-go/quic-go/qlog.KeyDiscarded
github.com/quic-go/quic-go/qlog.KeyUpdated
github.com/quic-go/quic-go/qlog.LossTimerUpdated
github.com/quic-go/quic-go/qlog.MetricsUpdated
github.com/quic-go/quic-go/qlog.MTUUpdated
github.com/quic-go/quic-go/qlog.PacketBuffered
github.com/quic-go/quic-go/qlog.PacketDropped
github.com/quic-go/quic-go/qlog.PacketLost
github.com/quic-go/quic-go/qlog.PacketReceived
github.com/quic-go/quic-go/qlog.PacketSent
github.com/quic-go/quic-go/qlog.ParametersSet
github.com/quic-go/quic-go/qlog.PTOCountUpdated
github.com/quic-go/quic-go/qlog.SpuriousLoss
github.com/quic-go/quic-go/qlog.StartedConnection
github.com/quic-go/quic-go/qlog.VersionInformation
github.com/quic-go/quic-go/qlog.VersionNegotiationReceived
github.com/quic-go/quic-go/qlog.VersionNegotiationSent
Event : github.com/polarsignals/frostdb/query/logicalplan.Named
func Recorder.RecordEvent(Event)
func (*Writer).RecordEvent(ev Event)
FileSeq represents a qlog trace using the JSON-SEQ format,
https://www.ietf.org/archive/id/draft-ietf-quic-qlog-main-schema-12.html#section-5
qlog event producers can be created by calling AddProducer.
The underlying io.WriteCloser is closed when the last producer is removed.
(*FileSeq) AddProducer() Recorder
(*FileSeq) Run()
(*FileSeq) SupportsSchemas(schema string) bool
*FileSeq : Trace
*FileSeq : github.com/robfig/cron/v3.Job
func NewConnectionFileSeq(w io.WriteCloser, isClient bool, odcid ConnectionID, eventSchemas []string) *FileSeq
func NewFileSeq(w io.WriteCloser) *FileSeq
Recorder is used to record events to a qlog trace.
It is safe for concurrent use by multiple goroutines.
( Recorder) Close() error
RecordEvent records a single Event to the trace.
It must not be called after Close.
*Writer
Recorder : github.com/prometheus/common/expfmt.Closer
Recorder : io.Closer
func (*FileSeq).AddProducer() Recorder
func Trace.AddProducer() Recorder
func github.com/quic-go/quic-go/internal/ackhandler.NewSentPacketHandler(initialPN protocol.PacketNumber, initialMaxDatagramSize protocol.ByteCount, rttStats *utils.RTTStats, connStats *utils.ConnectionStats, clientAddressValidated bool, enableECN bool, ignorePacketsBelow func(protocol.PacketNumber), pers protocol.Perspective, qlogger Recorder, logger utils.Logger) ackhandler.SentPacketHandler
func github.com/quic-go/quic-go/internal/congestion.NewCubicSender(clock congestion.Clock, rttStats *utils.RTTStats, connStats *utils.ConnectionStats, initialMaxDatagramSize protocol.ByteCount, reno bool, qlogger Recorder) *congestion.cubicSender
func github.com/quic-go/quic-go/internal/handshake.NewCryptoSetupClient(connID protocol.ConnectionID, tp *wire.TransportParameters, tlsConf *tls.Config, enable0RTT bool, rttStats *utils.RTTStats, qlogger Recorder, logger utils.Logger, version protocol.Version) handshake.CryptoSetup
func github.com/quic-go/quic-go/internal/handshake.NewCryptoSetupServer(connID protocol.ConnectionID, localAddr, remoteAddr net.Addr, tp *wire.TransportParameters, tlsConf *tls.Config, allow0RTT bool, rttStats *utils.RTTStats, qlogger Recorder, logger utils.Logger, version protocol.Version) handshake.CryptoSetup
Trace represents a qlog trace that can have multiple event producers.
Each producer can record events to the trace independently.
When the last producer is closed, the underlying trace is closed as well.
AddProducer creates a new Recorder for this trace.
Each Recorder can record events independently.
SupportsSchemas returns true if the trace supports the given schema.
*FileSeq
func github.com/quic-go/quic-go.(*Conn).QlogTrace() Trace
func github.com/quic-go/quic-go/http3/qlog.DefaultConnectionTracer(ctx context.Context, isClient bool, connID quic.ConnectionID) Trace
func github.com/quic-go/quic-go/qlog.DefaultConnectionTracer(_ context.Context, isClient bool, connID qlog.ConnectionID) Trace
func github.com/quic-go/quic-go/qlog.DefaultConnectionTracerWithSchemas(_ context.Context, isClient bool, connID qlog.ConnectionID, eventSchemas []string) Trace
Package-Level Functions (total 2)
NewConnectionFileSeq creates a new qlog trace to log connection events.
NewFileSeq creates a new JSON-SEQ qlog trace to log transport events.
Package-Level Constants (only one)
RecordSeparator is the record separator byte for the JSON-SEQ format
![]() |
The pages are generated with Golds v0.8.2. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |