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