prometheus/prometheus
Glossary
Project-specific terms used across the codebase, with the place in the code where each is defined.
| Term | Meaning | Defined in |
|---|---|---|
| Sample | A (timestamp, value) pair attached to a series. Numeric value is float64. |
model/labels, tsdb/chunkenc |
| Series | A unique set of label name/value pairs with a metric name; identified internally by a SeriesRef. |
storage/interface.go |
| Labels | Sorted, immutable list of Label{Name,Value} pairs that identify a series. Three storage representations: slicelabels, stringlabels, dedupelabels, picked by build tag. |
model/labels/labels_*.go |
| SymbolTable | String-interning structure used during scraping/parsing to deduplicate label values per scrape. | model/labels/labels_dedupelabels.go |
| Appender | Short-lived transactional handle returned by storage.Storage.Appender(ctx). Calls to Append/Commit/Rollback are batched per scrape or rule evaluation. |
storage/interface.go |
| AppenderV2 | Newer appender shape that takes a single AppendEntry, supports always-on metadata, exemplars per sample, and start timestamps. Migration tracker: issue #17632. |
storage/interface_append.go |
| Head | The in-memory portion of the TSDB that holds the current ~2 hour block, the WAL, and all active series. | tsdb/head.go |
| Block | An immutable, on-disk directory containing chunks, index, tombstones, and meta.json for a fixed time range (default 2 hours, growing during compaction). |
tsdb/block.go |
| WAL / WLog | Write-ahead log. Sequence of 128 MB segments under wal/. Used to replay state on startup and as the durable buffer in agent mode. |
tsdb/wlog/wlog.go |
| Checkpoint | Compacted WAL prefix produced when WAL segments are truncated. Lives at wal/checkpoint.NNNNNNN/. |
tsdb/wlog/checkpoint.go |
| Out-of-order (OOO) | Samples whose timestamp is older than the head's max time. Stored separately when out_of_order_time_window is non-zero. |
tsdb/ooo_head.go |
| Native histogram | Sparse, exponential-bucket histogram with integer or float bucket counts, stored as a single sample per data point. | model/histogram/ |
| NHCB | Native Histograms with Custom Buckets. Translation layer maps classical histograms onto the native histogram representation. | model/histogram/, util/convertnhcb |
| Exemplar | A (labels, value, timestamp) reference attached to a sample, typically pointing to a trace ID. Optional; backed by a fixed-size circular buffer. |
tsdb/exemplar.go |
| ST / Start timestamp | The point in time a counter started accumulating. Previously called "Created Timestamp" (CT); renamed for consistency. | model/textparse, tsdb/head_append_v2.go |
| Target | A scrape endpoint with a discovered or static set of labels. | scrape/target.go |
| TargetGroup | A list of targets sharing common labels emitted by a Discoverer. |
discovery/targetgroup/ |
| Scrape pool | All scrape loops belonging to a single scrape_config. One per job. |
scrape/scrape.go |
| Scrape loop | Per-target goroutine that runs on scrape_interval ticks, fetches /metrics, parses, and appends. |
scrape/scrape.go |
| Relabeling | Rewriting of label sets via relabel_configs and metric_relabel_configs. Implemented in model/relabel. |
model/relabel/relabel.go |
| Federation | The /federate endpoint that exposes selected series to another Prometheus. |
web/federate.go |
| Recording rule | A precomputed PromQL expression whose result is written back as a new series. | rules/recording.go |
| Alerting rule | A PromQL expression whose nonzero result produces alerts. | rules/alerting.go |
| Group | An ordered set of rules that share an evaluation interval and run sequentially. | rules/group.go |
| Notifier | Subsystem that batches firing alerts and dispatches them to one or more Alertmanager URLs. | notifier/manager.go |
| Remote write | Outbound protocol that ships samples to a remote storage backend over HTTP. v1 and v2 protobuf message types. | storage/remote/queue_manager.go |
| Remote read | Inbound protocol that lets a Prometheus query historical data from a remote backend as if it were local. | storage/remote/read.go |
| OTLP | OpenTelemetry Protocol. Prometheus accepts metrics via /api/v1/otlp/v1/metrics and translates them. |
storage/remote/otlptranslator/ |
| Agent mode | A running mode (--agent) that disables local TSDB and query engine; ships everything via remote write. |
tsdb/agent/db.go |
| Feature flag | A --enable-feature=<name> toggle for experimental or breaking-change behaviours. Registered in util/features. |
util/features/features.go, docs/feature_flags.md |
ULID |
The block ID format used by the TSDB; provides time-ordered, lexicographically sortable directory names. | tsdb/block.go |
| Postings | Bit-packed lists of series IDs keyed by label name/value, stored in the block index. Drives label-value query plans. | tsdb/index/postings.go |
| Mmap chunk | Old head chunks that have been written to disk in chunks_head/ and accessed via mmap instead of being held in memory. |
tsdb/chunks/ |
promu |
The Prometheus-team build helper used by the Makefile to produce reproducible binaries (lives at github.com/prometheus/promu). |
.promu.yml, Makefile.common |
promtool |
Sibling CLI for config validation, querying, debugging, and unit-testing rules. | cmd/promtool/ |
prombench |
The performance benchmarking workflow that runs comparative loads in a Kubernetes cluster against PRs labeled prombench. |
.github/workflows/prombench.yml |
| Mantine UI / 3.x UI | The current React UI under web/ui/mantine-ui/. Replaced the older 2.x UI (still available with --enable-feature=old-ui). |
web/ui/mantine-ui/ |
Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.