datadog_protos/
lib.rs

1//! Datadog Agent-specific Protocol Buffers definitions.
2//!
3//! This crate contains generated code based on the Protocol Buffers definitions used by the Datadog Agent to
4//! communicate with the Datadog Platform, specifically for shipping metrics and traces.
5#![deny(warnings)]
6#![allow(dead_code)]
7#![allow(clippy::enum_variant_names)]
8#![allow(clippy::doc_overindented_list_items)]
9
10pub(crate) mod serde;
11
12mod include {
13    include!(concat!(env!("OUT_DIR"), "/protos/mod.rs"));
14}
15
16mod trace_include {
17    include!(concat!(env!("OUT_DIR"), "/trace_protos/mod.rs"));
18}
19
20mod agent_include {
21    include!(concat!(env!("OUT_DIR"), "/api.mod.rs"));
22}
23
24mod sketch_include {
25    include!(concat!(env!("OUT_DIR"), "/sketch_protos/mod.rs"));
26}
27
28/// Metrics-related definitions.
29pub mod metrics {
30    pub use super::include::agent_payload::metric_payload::*;
31    pub use super::include::agent_payload::sketch_payload::{sketch::*, Sketch};
32    pub use super::include::agent_payload::*;
33}
34
35/// Event-related definitions.
36pub mod events {
37    pub use super::include::agent_payload::events_payload::*;
38    pub use super::include::agent_payload::EventsPayload;
39}
40
41/// Trace-related definitions.
42pub mod traces {
43    pub use super::trace_include::agent_payload::*;
44    pub use super::trace_include::span::{attribute_any_value::*, attribute_array_value::*, *};
45    pub use super::trace_include::stats::*;
46    pub use super::trace_include::tracer_payload::*;
47}
48
49/// Agent definitions.
50pub mod agent {
51    pub use super::agent_include::datadog::api::v1::agent_client::AgentClient;
52    pub use super::agent_include::datadog::api::v1::agent_secure_client::AgentSecureClient;
53    pub use super::agent_include::datadog::autodiscovery::*;
54    pub use super::agent_include::datadog::model::v1::*;
55    pub use super::agent_include::datadog::remoteagent::*;
56    pub use super::agent_include::datadog::workloadmeta::*;
57}
58
59/// DDSketch definitions from (sketches-go).
60pub mod sketches {
61    pub use super::sketch_include::ddsketch::*;
62}