package qlog

Import Path
	github.com/quic-go/quic-go/qlog (on go.dev)

Dependency Relation
	imports 17 packages, and imported by 6 packages


Package-Level Type Names (total 75)
/* sort by: | */
An AckFrame is an ACK frame.
An AckFrequencyFrame is an ACK_FREQUENCY frame.
type AckRange = wire.AckRange (struct)
ChosenALPN string ( ALPNInformation) Encode(enc *jsontext.Encoder, _ time.Time) error ( ALPNInformation) Name() string ALPNInformation : github.com/quic-go/quic-go/qlogwriter.Event ALPNInformation : github.com/polarsignals/frostdb/query/logicalplan.Named
( CongestionState) String() string CongestionState : expvar.Var CongestionState : fmt.Stringer const CongestionStateApplicationLimited const CongestionStateCongestionAvoidance const CongestionStateRecovery const CongestionStateSlowStart
State CongestionState ( CongestionStateUpdated) Encode(enc *jsontext.Encoder, _ time.Time) error ( CongestionStateUpdated) Name() string CongestionStateUpdated : github.com/quic-go/quic-go/qlogwriter.Event CongestionStateUpdated : github.com/polarsignals/frostdb/query/logicalplan.Named
ApplicationError *ApplicationErrorCode ConnectionError *TransportErrorCode Initiator Initiator Reason string Trigger ConnectionCloseTrigger ( ConnectionClosed) Encode(enc *jsontext.Encoder, _ time.Time) error ( ConnectionClosed) Name() string ConnectionClosed : github.com/quic-go/quic-go/qlogwriter.Event ConnectionClosed : github.com/polarsignals/frostdb/query/logicalplan.Named
A ConnectionCloseFrame is a CONNECTION_CLOSE frame.
A CryptoFrame is a CRYPTO frame. Length int64 Offset int64
A DataBlockedFrame is a DATA_BLOCKED frame.
A DatagramFrame is a DATAGRAM frame. Length int64
DatagramID is a unique identifier for a datagram func CalculateDatagramID(packet []byte) DatagramID
DebugEvent is a generic event that can be used to log arbitrary messages. EventName string Message string ( DebugEvent) Encode(enc *jsontext.Encoder, _ time.Time) error ( DebugEvent) Name() string DebugEvent : github.com/quic-go/quic-go/qlogwriter.Event DebugEvent : github.com/polarsignals/frostdb/query/logicalplan.Named
ECN represents the Explicit Congestion Notification value. const ECNCE const ECNUnsupported const ECT0 const ECT1 const ECTNot
ECNState is the state of the ECN state machine (see Appendix A.4 of RFC 9000) const ECNStateCapable const ECNStateFailed const ECNStateTesting const ECNStateUnknown
State ECNState Trigger string ( ECNStateUpdated) Encode(enc *jsontext.Encoder, _ time.Time) error ( ECNStateUpdated) Name() string ECNStateUpdated : github.com/quic-go/quic-go/qlogwriter.Event ECNStateUpdated : github.com/polarsignals/frostdb/query/logicalplan.Named
Frame any ( Frame) Encode(enc *jsontext.Encoder) error
A HandshakeDoneFrame is a HANDSHAKE_DONE frame.
An ImmediateAckFrame is an IMMEDIATE_ACK frame.
const InitiatorLocal const InitiatorRemote
// only set for 1-RTT keys KeyType KeyType ( KeyDiscarded) Encode(enc *jsontext.Encoder, _ time.Time) error ( KeyDiscarded) Name() string KeyDiscarded : github.com/quic-go/quic-go/qlogwriter.Event KeyDiscarded : github.com/polarsignals/frostdb/query/logicalplan.Named
type KeyPhase = protocol.KeyPhase (basic type)
type KeyPhaseBit = protocol.KeyPhaseBit (basic type)
KeyType represents the type of cryptographic key used in QUIC connections. const KeyTypeClient0RTT const KeyTypeClient1RTT const KeyTypeClientHandshake const KeyTypeClientInitial const KeyTypeServer0RTT const KeyTypeServer1RTT const KeyTypeServerHandshake const KeyTypeServerInitial
// only set for 1-RTT keys KeyType KeyType Trigger KeyUpdateTrigger ( KeyUpdated) Encode(enc *jsontext.Encoder, _ time.Time) error ( KeyUpdated) Name() string KeyUpdated : github.com/quic-go/quic-go/qlogwriter.Event KeyUpdated : github.com/polarsignals/frostdb/query/logicalplan.Named
KeyUpdateTrigger describes what caused a key update event. const KeyUpdateLocal const KeyUpdateRemote const KeyUpdateTLS
EncLevel EncryptionLevel Time time.Time TimerType TimerType Type LossTimerUpdateType ( LossTimerUpdated) Encode(enc *jsontext.Encoder, t time.Time) error ( LossTimerUpdated) Name() string LossTimerUpdated : github.com/quic-go/quic-go/qlogwriter.Event LossTimerUpdated : github.com/polarsignals/frostdb/query/logicalplan.Named
A MaxDataFrame is a MAX_DATA frame.
A MaxStreamDataFrame is a MAX_STREAM_DATA frame.
A MaxStreamsFrame is a MAX_STREAMS_FRAME.
MetricsUpdated logs RTT and congestion metrics as defined in the recovery:metrics_updated event. The PTO count is logged via PTOCountUpdated. BytesInFlight int CongestionWindow int LatestRTT time.Duration MinRTT time.Duration PacketsInFlight int RTTVariance time.Duration SmoothedRTT time.Duration ( MetricsUpdated) Encode(enc *jsontext.Encoder, _ time.Time) error ( MetricsUpdated) Name() string MetricsUpdated : github.com/quic-go/quic-go/qlogwriter.Event MetricsUpdated : github.com/polarsignals/frostdb/query/logicalplan.Named
Done bool Value int ( MTUUpdated) Encode(enc *jsontext.Encoder, _ time.Time) error ( MTUUpdated) Name() string MTUUpdated : github.com/quic-go/quic-go/qlogwriter.Event MTUUpdated : github.com/polarsignals/frostdb/query/logicalplan.Named
A NewConnectionIDFrame is a NEW_CONNECTION_ID frame.
A NewTokenFrame is a NEW_TOKEN frame.
DatagramID DatagramID Header PacketHeader Raw RawInfo ( PacketBuffered) Encode(enc *jsontext.Encoder, _ time.Time) error ( PacketBuffered) Name() string PacketBuffered : github.com/quic-go/quic-go/qlogwriter.Event PacketBuffered : github.com/polarsignals/frostdb/query/logicalplan.Named
PacketDropped is the transport:packet_dropped event. DatagramID DatagramID Header PacketHeader Raw RawInfo Trigger PacketDropReason ( PacketDropped) Encode(enc *jsontext.Encoder, _ time.Time) error ( PacketDropped) Name() string PacketDropped : github.com/quic-go/quic-go/qlogwriter.Event PacketDropped : github.com/polarsignals/frostdb/query/logicalplan.Named
const PacketLossReorderingThreshold const PacketLossTimeThreshold
Header PacketHeader Trigger PacketLossReason ( PacketLost) Encode(enc *jsontext.Encoder, _ time.Time) error ( PacketLost) Name() string PacketLost : github.com/quic-go/quic-go/qlogwriter.Event PacketLost : github.com/polarsignals/frostdb/query/logicalplan.Named
type PacketNumber = protocol.PacketNumber (basic type)
DatagramID DatagramID ECN ECN Frames []Frame Header PacketHeader IsCoalesced bool Raw RawInfo Trigger string ( PacketReceived) Encode(enc *jsontext.Encoder, _ time.Time) error ( PacketReceived) Name() string PacketReceived : github.com/quic-go/quic-go/qlogwriter.Event PacketReceived : github.com/polarsignals/frostdb/query/logicalplan.Named
DatagramID DatagramID ECN ECN Frames []Frame Header PacketHeader IsCoalesced bool Raw RawInfo SupportedVersions []Version Trigger string ( PacketSent) Encode(enc *jsontext.Encoder, _ time.Time) error ( PacketSent) Name() string PacketSent : github.com/quic-go/quic-go/qlogwriter.Event PacketSent : github.com/polarsignals/frostdb/query/logicalplan.Named
func EncryptionLevelToPacketType(l EncryptionLevel) PacketType const PacketType0RTT const PacketType1RTT const PacketTypeHandshake const PacketTypeInitial const PacketTypeRetry const PacketTypeStatelessReset const PacketTypeVersionNegotiation
A PathChallengeFrame is a PATH_CHALLENGE frame.
IPv4 netip.AddrPort IPv6 netip.AddrPort
A PathResponseFrame is a PATH_RESPONSE frame.
A PingFrame is a PING frame.
PTOCountUpdated logs the pto_count value of the recovery:metrics_updated event. PTOCount uint32 ( PTOCountUpdated) Encode(enc *jsontext.Encoder, _ time.Time) error ( PTOCountUpdated) Name() string PTOCountUpdated : github.com/quic-go/quic-go/qlogwriter.Event PTOCountUpdated : github.com/polarsignals/frostdb/query/logicalplan.Named
// full packet length, including header and AEAD authentication tag // length of the packet payload, excluding AEAD tag
A ResetStreamFrame is a RESET_STREAM frame.
A RetireConnectionIDFrame is a RETIRE_CONNECTION_ID frame.
EncryptionLevel protocol.EncryptionLevel PacketNumber protocol.PacketNumber PacketReordering uint64 TimeReordering time.Duration ( SpuriousLoss) Encode(enc *jsontext.Encoder, _ time.Time) error ( SpuriousLoss) Name() string SpuriousLoss : github.com/quic-go/quic-go/qlogwriter.Event SpuriousLoss : github.com/polarsignals/frostdb/query/logicalplan.Named
Local PathEndpointInfo Remote PathEndpointInfo ( StartedConnection) Encode(enc *jsontext.Encoder, _ time.Time) error ( StartedConnection) Name() string StartedConnection : github.com/quic-go/quic-go/qlogwriter.Event StartedConnection : github.com/polarsignals/frostdb/query/logicalplan.Named
A StopSendingFrame is a STOP_SENDING frame.
A StreamDataBlockedFrame is a STREAM_DATA_BLOCKED frame.
A StreamFrame is a STREAM frame. Fin bool Length int64 Offset int64 StreamID StreamID
type StreamID = protocol.StreamID (basic type)
A StreamsBlockedFrame is a STREAMS_BLOCKED frame.
const TimerTypeACK const TimerTypePathProbe const TimerTypePTO
Raw []byte
type Version = protocol.Version (basic type)
ChosenVersion Version ClientVersions []Version ServerVersions []Version ( VersionInformation) Encode(enc *jsontext.Encoder, _ time.Time) error ( VersionInformation) Name() string VersionInformation : github.com/quic-go/quic-go/qlogwriter.Event VersionInformation : github.com/polarsignals/frostdb/query/logicalplan.Named
Header PacketHeaderVersionNegotiation SupportedVersions []Version ( VersionNegotiationReceived) Encode(enc *jsontext.Encoder, _ time.Time) error ( VersionNegotiationReceived) Name() string VersionNegotiationReceived : github.com/quic-go/quic-go/qlogwriter.Event VersionNegotiationReceived : github.com/polarsignals/frostdb/query/logicalplan.Named
Header PacketHeaderVersionNegotiation SupportedVersions []Version ( VersionNegotiationSent) Encode(enc *jsontext.Encoder, _ time.Time) error ( VersionNegotiationSent) Name() string VersionNegotiationSent : github.com/quic-go/quic-go/qlogwriter.Event VersionNegotiationSent : github.com/polarsignals/frostdb/query/logicalplan.Named
Package-Level Functions (total 4)
CalculateDatagramID computes a DatagramID for a given packet
DefaultConnectionTracer creates a qlog file in the qlog directory specified by the QLOGDIR environment variable. File names are <odcid>_<perspective>.sqlog. Returns nil if QLOGDIR is not set.
Package-Level Constants (total 59)
CongestionStateApplicationLimited means that the congestion controller is application limited
CongestionStateCongestionAvoidance is the congestion avoidance phase of Reno / Cubic
CongestionStateRecovery is the recovery phase of Reno / Cubic
CongestionStateSlowStart is the slow start phase of Reno / Cubic
Application indicates the connection was closed by the application
IdleTimeout indicates the connection was closed due to idle timeout
StatelessReset indicates the connection was closed due to receiving a stateless reset from the peer
VersionMismatch indicates the connection was closed due to a QUIC version mismatch
ECNCE is CE
ECNStateCapable is the capable state
ECNStateFailed is the failed state
ECNStateTesting is the testing state
ECNStateUnknown is the unknown state
ECNUnsupported means that no ECN value was set / received
ECT0 is ECT(0)
ECT1 is ECT(1)
ECTNot is Not-ECT
EventSchema is the qlog event schema for QUIC
const InitiatorLocal Initiator = "local"
const InitiatorRemote Initiator = "remote"
KeyPhaseOne is key phase bit 1
KeyPhaseZero is key phase bit 0
KeyTypeClient0RTT represents the client's 0-RTT secret key.
KeyTypeClient1RTT represents the client's 1-RTT secret key.
KeyTypeClientHandshake represents the client's handshake secret key.
KeyTypeClientInitial represents the client's initial secret key.
KeyTypeServer0RTT represents the server's 0-RTT secret key.
KeyTypeServer1RTT represents the server's 1-RTT secret key.
KeyTypeServerHandshake represents the server's handshake secret key.
KeyTypeServerInitial represents the server's initial secret key.
KeyUpdateLocal indicates the key update was triggered locally.
KeyUpdateRemote indicates the key update was triggered by the remote peer.
KeyUpdateTLS indicates the key update was triggered by TLS.
PacketDropDOSPrevention is used when a packet is dropped to mitigate a DoS attack
PacketDropDuplicate is used when a duplicate packet is received
PacketDropHeaderParseError is used when a packet is dropped because header parsing failed
PacketDropKeyUnavailable is used when a packet is dropped because keys are unavailable
PacketDropPayloadDecryptError is used when a packet is dropped because decrypting the payload failed
PacketDropProtocolViolation is used when a packet is dropped due to a protocol violation
PacketDropUnexpectedPacket is used when an unexpected packet is received
PacketDropUnexpectedSourceConnectionID is used when a packet with an unexpected source connection ID is received
PacketDropUnexpectedVersion is used when a packet with an unexpected version is received
PacketDropUnknownConnectionID is used when a packet is dropped because the connection ID is unknown
PacketDropUnsupportedVersion is used when a packet is dropped because the version is not supported
PacketLossReorderingThreshold is used when a packet is declared lost due to reordering threshold
PacketLossTimeThreshold is used when a packet is declared lost due to time threshold
PacketType0RTT represents a 0-RTT packet
PacketType1RTT represents a 1-RTT packet
PacketTypeHandshake represents a Handshake packet
PacketTypeInitial represents an Initial packet
PacketTypeRetry represents a Retry packet
PacketTypeStatelessReset represents a Stateless Reset packet
PacketTypeVersionNegotiation represents a Version Negotiation packet
TimerTypeACK represents an ACK timer
TimerTypePathProbe represents a path probe timer
TimerTypePTO represents a PTO (Probe Timeout) timer