Marten Seemann
e41d1f9dd7
logging / qlog: add support for DPLPMTUD ( #4517 )
...
* logging / qlog: add support for DPLPMTUD
* improve the MTU discovery integration test
2024-05-14 02:37:54 -07:00
Marten Seemann
55c05aceed
qlog: log sent packets outside of a QUIC connection
2024-03-09 19:32:15 +09:30
Marten Seemann
aff90a6ffa
qlog: log sent Version Negotiation packets
2024-03-09 19:32:15 +09:30
Marten Seemann
3a7a53fdb9
qlog: log packet drops outside of a QUIC connection
2024-03-09 19:32:15 +09:30
Marten Seemann
2abbd41806
qlog: introduce a basic tracer for non-connection events
2024-03-09 19:32:15 +09:30
Marten Seemann
ab17a5df6a
qlog: rename generation to key_phase on key_updated and key_discarded ( #4315 )
2024-02-07 18:04:23 -08:00
Marten Seemann
225d2a3926
qlog: disentangle the ConnectionTracer from the qlog writer ( #4300 )
...
The qlog writer simply records events, puts them into a channel, and
consumes these events in a separate Go routine (by serializing them).
The ConnectionTracer is the one generating those events.
2024-02-02 02:00:15 -08:00
Marten Seemann
0344401de5
qlog: rename qlog.go to connection_tracer.go ( #4301 )
2024-02-02 01:45:51 -08:00
Marten Seemann
f3c4be6b01
qlog: remove unneeded mutex from the ConnectionTracer ( #4299 )
...
Events are appended to a channel, which is able to handle concurrect writes.
2024-02-01 15:57:07 -08:00
Marten Seemann
fbaa941ea1
protocol: rename VersionNumber to Version ( #4295 )
2024-01-31 21:57:33 -08:00
Benedikt Spies
2cd9ed38f1
qlog: add a default tracer that writes to QLOGDIR ( #4233 )
...
* add qlog default tracer which writes to QLOGDIR
* gofumpt
* add qlog default tracer which writes to QLOGDIR
* fix flaky tests
* Update README.md
Co-authored-by: Marten Seemann <martenseemann@gmail.com >
* Update README.md
Co-authored-by: Marten Seemann <martenseemann@gmail.com >
* Update README.md
Co-authored-by: Marten Seemann <martenseemann@gmail.com >
* Update README.md
Co-authored-by: Marten Seemann <martenseemann@gmail.com >
---------
Co-authored-by: Marten Seemann <martenseemann@gmail.com >
2024-01-12 03:11:53 -08:00
Marten Seemann
8cad3d2ea5
wire: use netip.AddrPort to encode the IPs in the Preferred Address ( #4232 )
2024-01-02 21:56:25 -08:00
Benedikt Spies
31a677cacd
qlog: add support for alpn_information event ( #4216 )
...
* qlog chosen alpn
* qlog chosen alpn
* qlog: fix capitalization of ALPN
---------
Co-authored-by: Marten Seemann <martenseemann@gmail.com >
2023-12-25 21:02:47 -08:00
Marten Seemann
3bf2e19d0d
logging: pass the packet number to ConnectionTracer.DroppedPacket ( #4171 )
...
In most cases the packet number is not known when a packet is dropped,
but it's useful to log the packet number when dropping a duplicate
packet.
2023-11-17 04:11:16 -08:00
Marten Seemann
9b82196578
make the logging.Tracer and logging.ConnectionTracer a struct ( #4082 )
2023-09-16 04:58:51 -07:00
Marten Seemann
d52e9f35bc
ackhandler: detect ECN mangling ( #4080 )
...
* ackhandler: detect ECN mangling
Mangling means that a path is re-marking all ECN-marked packets as CE.
* ackhandler: only detect ECN mangling once all testing packets were sent
2023-09-11 23:18:33 -07:00
Marten Seemann
ffe6546833
add tracing and qlogging of state transitions for ECN validation
2023-09-11 20:31:50 +07:00
Marten Seemann
ad63e2a40a
trace and qlog the ECN marking on sent and received packets
2023-09-11 20:31:50 +07:00
Marten Seemann
07ad2cbee2
remove Tracer from Config, put ConnectionTracer constructor there
2023-05-02 15:56:49 +02:00
Marten Seemann
1f57d4e789
protocol: remove VersionTLS, used during the gQUIC -> TLS 1.3 transition ( #3764 )
2023-04-19 07:24:34 -07:00
Marten Seemann
3ebdd1df5e
qlog: move the quic-go version to the configuration field ( #3735 )
2023-04-19 06:06:19 -07:00
Marten Seemann
11f493381f
qlog: use version_mismatch trigger on transport:connection_closed event ( #3724 )
2023-03-26 22:24:30 +09:00
Marten Seemann
58cedf7a4f
rename module, adjust import paths to quic-go/quic-go ( #3680 )
2023-01-21 19:53:57 -08:00
Marten Seemann
86edf7fd4b
remove the LongHeader field from the wire.Header
2023-01-17 21:53:39 +13:00
Marten Seemann
4bf50901e8
add a function to determine the length of a short header
2023-01-17 21:53:39 +13:00
Marten Seemann
24be84cd00
introduce separate tracing calls for sent long and short header packets
2023-01-17 21:53:37 +13:00
Marten Seemann
870fbe7ab0
migrate to Ginkgo v2
2022-10-11 16:38:44 +04:00
Marten Seemann
fe277dc663
log the size of buffered packets ( #3571 )
2022-10-11 02:27:26 -07:00
Marten Seemann
17761bf35f
qlog: rename key_retired to key_discarded ( #3463 )
2022-09-09 06:39:49 -07:00
Marten Seemann
656f3d2d7d
remove the wire.ShortHeader in favor of more return values ( #3535 )
2022-08-30 04:37:36 -07:00
Marten Seemann
ed15a94703
split the tracing function for received short and long header packets
2022-08-29 15:32:27 +03:00
Marten Seemann
1aced95d41
use an array instead of a byte slice for Connection IDs
2022-08-29 11:30:31 +03:00
Marten Seemann
53412e9ba3
trace arbitrary length Connection IDs for Version Negotiation packets
2022-08-29 10:58:33 +03:00
Marten Seemann
ecc8320c2c
add a tracer function to trace sending of Version Negotiation packets
2022-08-29 10:58:33 +03:00
Marten Seemann
42ecbf0000
qlog the reason phrase of application and transport errors
2021-05-03 14:04:03 +07:00
Marten Seemann
1613809ba2
use the new error types to log the reason why a connection is closed
2021-05-03 14:00:41 +07:00
Marten Seemann
f5238bf7b1
move the ApplicationErrorCdoe to the qerr package
2021-05-01 09:38:49 +07:00
Marten Seemann
592fb9cad9
introduce a dedicated qerr.TransportError and qerr.ApplicationError
2021-05-01 09:38:48 +07:00
Marten Seemann
0413afd615
Merge pull request #3153 from lucas-clemente/trace-version-selection
...
trace and qlog version selection / negotiation
2021-04-28 18:13:18 +07:00
Marten Seemann
e7c4e756ad
trace and qlog version selection / negotiation
2021-04-19 11:38:10 +07:00
Marten Seemann
878e0b261a
pass a context to logging.Tracer.NewConnectionTracer
...
This context has the same value attached to it as the context returned
by Session.Context().
In the case of a dialed connection, this context is derived from the
context used for dialing.
2021-04-14 16:59:36 +07:00
Marten Seemann
c30a45ef6f
don't pass the QUIC version to the StartedConnection event
...
The version might change in response to a Version Negotiation packet.
2021-04-02 17:33:49 +07:00
Marten Seemann
875692ea10
add a function to trace acknowledged packets
2021-04-02 11:37:07 +07:00
Marten Seemann
d468a79339
fix qlogging of version mismatches on the connection_closed event
2021-03-15 13:36:49 +08:00
Marten Seemann
ab46df5071
fix logging of dropped 0-RTT keys
...
Client and server only possess write or read 0-RTT keys, respectively.
We should therefore only emit a single event when those are dropped.
2021-03-01 10:30:59 +08:00
Marten Seemann
7e59a091a4
add the time_format field to qlog common_fields
2021-02-13 12:56:44 +08:00
Marten Seemann
4e6e4db7ac
Merge pull request #3033 from lucas-clemente/qlog-quic-go-version
...
qlog the quic-go version
2021-02-09 17:49:27 +08:00
Marten Seemann
ef1cea84c4
expose the constructor for the qlog connection tracer
2021-02-09 10:51:21 +08:00
Marten Seemann
0437acd41d
set the qlogged quic-go version when building the interop runner image
2021-02-08 09:24:12 +08:00
Marten Seemann
218b204e1b
qlog the quic-go version
...
This only works when quic-go is used as a library.
2021-02-07 19:26:12 +08:00