Skip to main content

Metric & Arrow Schema

Exact schema used when exporting Micrometer metrics as Apache Arrow.


Supported Meter Types​

All core Micrometer meters are supported:

  • Counter
  • Gauge
  • Timer
  • DistributionSummary
  • LongTaskTimer
  • FunctionCounter
  • FunctionTimer

Arrow Schema (Authoritative)​

Each published metric is written as one Arrow row using the following schema:

name               STRING   NOT NULL
type STRING NOT NULL
application_id STRING
application_name STRING
application_host STRING
tags MAP<STRING, STRING> NOT NULL
value DOUBLE
min DOUBLE
max DOUBLE
mean DOUBLE

This schema is defined in ArrowMetricSchema and is stable across releases.


Field Semantics​

FieldDescription
nameMetric name
typeMeter type (counter, timer, gauge, ...)
application_idLogical application identifier
application_nameHuman‑readable service name
application_hostHostname or node id
tagsMicrometer tags as key‑value map
valuePrimary metric value (count, gauge value, active tasks)
minMinimum observed value (when applicable)
maxMaximum observed value
meanMean / average value

Type‑Specific Mapping​

Meter Typevalueminmaxmean
Countercount000
Gaugevalue000
Timercount0max(sec)mean(sec)
DistributionSummarycount0maxmean
LongTaskTimeractive tasks0total(sec)avg(sec)
Function meterscomputed0computedcomputed

Deterministic Output​

The registry guarantees:

  • Stable schema
  • Deterministic ordering (sorted by type and name)
  • Repeatable snapshots

This enables:

  • CI regression checks
  • Release comparisons
  • Diff‑based validation