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
24/// Metrics-related definitions.
25pub mod metrics {
26    pub use super::include::agent_payload::metric_payload::*;
27    pub use super::include::agent_payload::sketch_payload::{sketch::*, Sketch};
28    pub use super::include::agent_payload::*;
29}
30
31/// Event-related definitions.
32pub mod events {
33    pub use super::include::agent_payload::events_payload::*;
34    pub use super::include::agent_payload::EventsPayload;
35}
36
37/// Trace-related definitions.
38pub mod traces {
39    pub use super::trace_include::agent_payload::*;
40    pub use super::trace_include::span::{attribute_any_value::*, attribute_array_value::*, *};
41    pub use super::trace_include::stats::*;
42    pub use super::trace_include::tracer_payload::*;
43}
44
45/// Agent definitions.
46pub mod agent {
47    pub use super::agent_include::datadog::api::v1::agent_client::AgentClient;
48    pub use super::agent_include::datadog::api::v1::agent_secure_client::AgentSecureClient;
49    pub use super::agent_include::datadog::autodiscovery::*;
50    pub use super::agent_include::datadog::model::v1::*;
51    pub use super::agent_include::datadog::remoteagent::*;
52    pub use super::agent_include::datadog::workloadmeta::*;
53}