Skip to main content

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
28mod trace_piecemeal_include {
29    include!(concat!(env!("OUT_DIR"), "/trace_piecemeal/mod.rs"));
30}
31
32mod checks_include {
33    include!(concat!(env!("OUT_DIR"), "/checks.mod.rs"));
34}
35
36/// Metrics-related definitions.
37pub mod metrics {
38    pub use super::include::agent_payload::metric_payload::*;
39    pub use super::include::agent_payload::sketch_payload::{sketch::*, Sketch};
40    pub use super::include::agent_payload::*;
41}
42
43/// Event-related definitions.
44pub mod events {
45    pub use super::include::agent_payload::events_payload::*;
46    pub use super::include::agent_payload::EventsPayload;
47}
48
49/// Trace-related definitions.
50pub mod traces {
51    pub use super::trace_include::agent_payload::*;
52    pub use super::trace_include::span::{attribute_any_value::*, attribute_array_value::*, *};
53    pub use super::trace_include::stats::*;
54    pub use super::trace_include::tracer_payload::*;
55
56    /// Piecemeal-generated builder types for incremental trace encoding.
57    pub mod builders {
58        pub use super::super::trace_piecemeal_include::datadog::trace::*;
59    }
60}
61
62/// Agent definitions.
63pub mod agent {
64    pub use super::agent_include::datadog::api::v1::agent_client::AgentClient;
65    pub use super::agent_include::datadog::api::v1::agent_secure_client::AgentSecureClient;
66    pub use super::agent_include::datadog::autodiscovery::*;
67    pub use super::agent_include::datadog::model::v1::*;
68    pub use super::agent_include::datadog::remoteagent::*;
69    pub use super::agent_include::datadog::workloadmeta::*;
70}
71
72/// DDSketch definitions from (sketches-go).
73pub mod sketches {
74    pub use super::sketch_include::ddsketch::*;
75}
76
77/// Checks definitions.
78pub mod checks {
79    pub use super::checks_include::datadog::checks::v1::*;
80}