Skip to content

Data Storage

The platform uses Elasticsearch for two categories of data: time-series telemetry metrics from gateways, and structured gateway logs.

Architecture

Metric data flows through the platform in three stages:

  1. Schema generation - the metrics generator produces Elasticsearch component templates alongside C# types
  2. Migration - at startup, the index migrator creates the lifecycle policy, index template, and data stream
  3. Ingestion - the metrics sink bulk-indexes telemetry frames into the data stream

Gateway logs are written by Serilog and queried through the logs query repository.

Pages

PageDescription
Metrics SinkBulk indexing of telemetry frames into Elasticsearch
Index MigratorStartup migration for ILM policies, templates, and data streams
Logs QueryQuerying gateway logs by asset, time range, and text

Local Development

The Aspire AppHost provisions Elasticsearch 9 and Kibana containers automatically. Index configuration (type, dataset, namespace) is passed through to the platform services via environment variables.