datadog_agent_metrics_v3/lib.rs
1//! V3 columnar protobuf codec for Datadog metrics.
2//!
3//! This crate implements the V3 columnar format for Datadog metrics payloads. Unlike the V2
4//! row-based protobuf format where each metric is a complete message, V3 uses a columnar layout
5//! with dictionary-based string deduplication for efficient encoding.
6//!
7//! [`V3Writer`] accumulates metrics one at a time via [`V3Writer::write`], then [`V3Writer::finalize`]
8//! serializes the accumulated columns into a protobuf payload.
9
10#![deny(missing_docs)]
11
12mod constants;
13mod interner;
14mod types;
15mod writer;
16
17pub use constants::COLUMN_NAMES;
18pub use types::V3MetricType;
19pub use writer::{V3EncodeError, V3EncodedMetrics, V3EncoderStats, V3MetricBuilder, V3ValueEncodingStats, V3Writer};