Patch Changes
-
5b0d074: fix: let browsers cache the collector's CORS preflights for 10 minutes
The OTLP receiver now answers preflights with
Access-Control-Max-Age: 600.
Without it, browsers cached a preflight for only 5 seconds, which is how often
the browser SDK exports, so about half of its requests were preflights. -
8384fe6: perf: compress the seed schemas with
ZSTD(3)instead ofZSTD(1)The seed schemas pinned
ZSTD(1)on almost every column. Level 3 gives a better
compression ratio at a small insert-time CPU cost, without affecting reads, and
it is the default codec of ClickHouse since 26.9. It is pinned explicitly so
that older ClickHouse versions, whose default isLZ4, get it too.Delta
codecs drop their byte-size argument, which ClickHouse infers from the column
type. Only newly created tables are affected; existing tables keep their codecs. -
7021810: feat: session ID columns,
session.idfromrum.sessionId, severity textThe
hyperdx_sessionsseed adds materializedrum.sessionIdandsession.id
columns with skip indexes, and theotel_logsseed adds a materialized
session.idcolumn with a skip index, so session queries no longer read the
attribute maps. Only newly created tables get them; existing tables need an
ALTER TABLE ... ADD COLUMNto benefit.Spans, logs and session replay events from older
@hyperdx/browserSDKs, which
carry the session id only in therum.sessionIdresource attribute, now also
get the OpenTelemetrysession.idattribute. An existingsession.idis never
overwritten andrum.sessionIdis kept. If you override pipelineprocessors:
lists inCUSTOM_OTELCOL_CONFIG_FILE, addtransform/session_idto keep this.Logs that carry a severity number but no severity text, such as those from the
new browser SDK, now get the matching level text (info,error, ...) instead
of an empty level. Severity text set by the producer is never overwritten.