hyperhive/nix/module-eval
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas 8e9ca3ee6c grafana: tell the logs datasource that severity_text is the level
Grafana's log-level buttons filter on a field called `level`; no row in
the store has one. The store's name for it is `severity_text`, chosen by
VictoriaLogs' OTLP ingester rather than by us — v1.52.0's
`app/vlinsert/opentelemetry/pb.go` writes it unconditionally and the
ingest parameters have no `_level_field` to rename it with. So the
mapping is made on the reader: the VictoriaLogs datasource, which was
provisioned with no `jsonData` at all, now carries a `logLevelRules`
entry per severity the journald parser can emit.

`logLevelRules` is the datasource plugin's only level-related jsonData
key — there is no field-name setting and no OpenTelemetry preset to
switch on. It is read off `instanceSettings.jsonData` in the plugin's
`datasource.ts` and typed in its `configuration/LogLevelRules/types.ts`,
both recovered from the sourcemap shipped in the pinned artifact
(`grafanaPlugins.victoriametrics-logs-datasource` 0.26.3). Each enabled
rule appends an `OR severity_text:="INFO"`-shaped term to the query a
level button emits, next to the `level:…` term that matches nothing.

A wrong rule here fails silently: Grafana provisions unknown jsonData
without complaint and the buttons go on returning zero rows. The three
ways to get one wrong — a non-literal `enabled`, a non-canonical `level`
spelling, a value that is not the stored text — are recorded at the
binding, and a module-eval arm pins them along with the real failure
mode, a severity added to `nix/journald-severity.nix` and not here.

`Unspecified` is left unmapped on purpose: it is the store's own
rendering of an absent severity and the thing the logs dashboard's "no
severity" panel counts.

Refs #4560
2026-09-20 17:39:04 +02:00
..
agent-icon.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
agent-matrix.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
agent-memory.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
agent-otel.nix module-eval: assert the severity table once, not once per tier 2026-09-20 14:23:56 +02:00
agent-plugins.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
agent-queue-bao.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
bao-basics.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
bao-controller.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
bao-grants.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
bao-matrix-reader.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
bao-otel-collector.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
core-toggle.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
grafana.nix grafana: tell the logs datasource that severity_text is the level 2026-09-20 17:39:04 +02:00
hive-otel.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
journald-severity.nix module-eval: assert the severity table once, not once per tier 2026-09-20 14:23:56 +02:00
lib.nix module-eval: assert the severity table once, not once per tier 2026-09-20 14:23:56 +02:00
matrix-core.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
name-guards.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
nats-authelia.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
secret-publisher.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
swarm-otel-core.nix module-eval: assert the severity table once, not once per tier 2026-09-20 14:23:56 +02:00
swarm-otel-identity.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
swarm-services-switch.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00