qlogwriter: fix storing of event schemas (#5430)

HTTP/3 qlogging (and qlogging for any other application protocol) only
works if the event schemas are stored.
This commit is contained in:
Marten Seemann
2025-11-14 16:44:33 +08:00
committed by GitHub
parent a839e42b78
commit e46470d68f
2 changed files with 6 additions and 0 deletions

View File

@@ -59,6 +59,11 @@ func TestTraceMetadata(t *testing.T) {
protocol.ParseConnectionID([]byte{0xde, 0xad, 0xbe, 0xef}),
[]string{"urn:ietf:params:qlog:events:foo", "urn:ietf:params:qlog:events:bar"},
)
require.False(t, trace.SupportsSchemas("urn:ietf:params:qlog:events:baz"))
require.True(t, trace.SupportsSchemas("urn:ietf:params:qlog:events:foo"))
require.True(t, trace.SupportsSchemas("urn:ietf:params:qlog:events:bar"))
go trace.Run()
producer := trace.AddProducer()
producer.Close()

View File

@@ -115,6 +115,7 @@ func newFileSeq(w io.WriteCloser, pers string, odcid *ConnectionID, eventSchemas
runStopped: make(chan struct{}),
encodeErr: encodeErr,
events: make(chan event, eventChanSize),
eventSchemas: eventSchemas,
}
}