saluki_components/config_registry/datadog/
encoders.rs1use crate::config_registry::{
3 generated::schema, structs, Pipeline, PipelineAffinity, SalukiAnnotation, Schema, SchemaEntry, SupportLevel,
4 ValueType,
5};
6
7static FLUSH_TIMEOUT_SECS_SCHEMA: SchemaEntry = SchemaEntry {
8 schema: Schema::Saluki,
9 yaml_path: "flush_timeout_secs",
10 env_vars: &[],
11 value_type: ValueType::Integer,
12 default: None,
13};
14
15static SERIALIZER_MAX_METRICS_PER_PAYLOAD_SCHEMA: SchemaEntry = SchemaEntry {
16 schema: Schema::Saluki,
17 yaml_path: "serializer_max_metrics_per_payload",
18 env_vars: &[],
19 value_type: ValueType::Integer,
20 default: None,
21};
22
23crate::declare_annotations! {
24 SERIALIZER_COMPRESSOR_KIND = SalukiAnnotation {
26 schema: &schema::SERIALIZER_COMPRESSOR_KIND,
27 support_level: SupportLevel::Full,
28 additional_yaml_paths: &[],
29 env_var_override: None,
30 used_by: &[
31 structs::DATADOG_EVENTS_CONFIGURATION,
32 structs::DATADOG_LOGS_CONFIGURATION,
33 structs::DATADOG_METRICS_CONFIGURATION,
34 structs::DATADOG_SERVICE_CHECKS_CONFIGURATION,
35 structs::DATADOG_TRACE_CONFIGURATION,
36 ],
37 value_type_override: None,
38 test_json: None,
39 pipeline_affinity: PipelineAffinity::CrossCutting,
40 };
41
42 SERIALIZER_ZSTD_COMPRESSOR_LEVEL = SalukiAnnotation {
45 schema: &schema::SERIALIZER_ZSTD_COMPRESSOR_LEVEL,
46 support_level: SupportLevel::Full,
47 additional_yaml_paths: &[],
48 env_var_override: None,
49 used_by: &[
50 structs::DATADOG_EVENTS_CONFIGURATION,
51 structs::DATADOG_LOGS_CONFIGURATION,
52 structs::DATADOG_METRICS_CONFIGURATION,
53 structs::DATADOG_SERVICE_CHECKS_CONFIGURATION,
54 structs::DATADOG_TRACE_CONFIGURATION,
55 ],
56 value_type_override: Some(ValueType::Integer),
57 test_json: None,
58 pipeline_affinity: PipelineAffinity::CrossCutting,
59 };
60
61 FLUSH_TIMEOUT_SECS = SalukiAnnotation {
63 schema: &FLUSH_TIMEOUT_SECS_SCHEMA,
64 support_level: SupportLevel::Full,
65 additional_yaml_paths: &[],
66 env_var_override: None,
67 used_by: &[
68 structs::DATADOG_APM_STATS_ENCODER_CONFIGURATION,
69 structs::DATADOG_METRICS_CONFIGURATION,
70 structs::DATADOG_TRACE_CONFIGURATION,
71 ],
72 value_type_override: None,
73 test_json: None,
74 pipeline_affinity: PipelineAffinity::Pipelines(&[Pipeline::Checks, Pipeline::Traces, Pipeline::DogStatsD]),
75 };
76
77 SERIALIZER_MAX_METRICS_PER_PAYLOAD = SalukiAnnotation {
79 schema: &SERIALIZER_MAX_METRICS_PER_PAYLOAD_SCHEMA,
80 support_level: SupportLevel::Full,
81 additional_yaml_paths: &[],
82 env_var_override: None,
83 used_by: &[structs::DATADOG_METRICS_CONFIGURATION],
84 value_type_override: None,
85 test_json: None,
86 pipeline_affinity: PipelineAffinity::Pipelines(&[Pipeline::Checks, Pipeline::DogStatsD]),
87 };
88
89 LOG_PAYLOADS = SalukiAnnotation {
91 schema: &schema::LOG_PAYLOADS,
92 support_level: SupportLevel::Full,
93 additional_yaml_paths: &[],
94 env_var_override: None,
95 used_by: &[
96 structs::DATADOG_EVENTS_CONFIGURATION,
97 structs::DATADOG_METRICS_CONFIGURATION,
98 structs::DATADOG_SERVICE_CHECKS_CONFIGURATION,
99 ],
100 value_type_override: None,
101 test_json: None,
102 pipeline_affinity: PipelineAffinity::Pipelines(&[Pipeline::Checks, Pipeline::DogStatsD, Pipeline::Traces]),
103 };
104
105 SERIALIZER_MAX_PAYLOAD_SIZE = SalukiAnnotation {
107 schema: &schema::SERIALIZER_MAX_PAYLOAD_SIZE,
108 support_level: SupportLevel::Full,
109 additional_yaml_paths: &[],
110 env_var_override: None,
111 used_by: &[
112 structs::DATADOG_EVENTS_CONFIGURATION,
113 structs::DATADOG_METRICS_CONFIGURATION,
114 structs::DATADOG_SERVICE_CHECKS_CONFIGURATION,
115 ],
116 value_type_override: Some(ValueType::Integer),
117 test_json: None,
118 pipeline_affinity: PipelineAffinity::Pipelines(&[Pipeline::Checks, Pipeline::DogStatsD]),
119 };
120
121 SERIALIZER_MAX_UNCOMPRESSED_PAYLOAD_SIZE = SalukiAnnotation {
123 schema: &schema::SERIALIZER_MAX_UNCOMPRESSED_PAYLOAD_SIZE,
124 support_level: SupportLevel::Full,
125 additional_yaml_paths: &[],
126 env_var_override: None,
127 used_by: &[
128 structs::DATADOG_EVENTS_CONFIGURATION,
129 structs::DATADOG_METRICS_CONFIGURATION,
130 structs::DATADOG_SERVICE_CHECKS_CONFIGURATION,
131 ],
132 value_type_override: Some(ValueType::Integer),
133 test_json: None,
134 pipeline_affinity: PipelineAffinity::Pipelines(&[Pipeline::Checks, Pipeline::DogStatsD]),
135 };
136
137 SERIALIZER_MAX_SERIES_PAYLOAD_SIZE = SalukiAnnotation {
139 schema: &schema::SERIALIZER_MAX_SERIES_PAYLOAD_SIZE,
140 support_level: SupportLevel::Full,
141 additional_yaml_paths: &[],
142 env_var_override: None,
143 used_by: &[structs::DATADOG_METRICS_CONFIGURATION],
144 value_type_override: Some(ValueType::Integer),
145 test_json: None,
146 pipeline_affinity: PipelineAffinity::Pipelines(&[Pipeline::Checks, Pipeline::DogStatsD]),
147 };
148
149 SERIALIZER_MAX_SERIES_UNCOMPRESSED_PAYLOAD_SIZE = SalukiAnnotation {
151 schema: &schema::SERIALIZER_MAX_SERIES_UNCOMPRESSED_PAYLOAD_SIZE,
152 support_level: SupportLevel::Full,
153 additional_yaml_paths: &[],
154 env_var_override: None,
155 used_by: &[structs::DATADOG_METRICS_CONFIGURATION],
156 value_type_override: Some(ValueType::Integer),
157 test_json: None,
158 pipeline_affinity: PipelineAffinity::Pipelines(&[Pipeline::Checks, Pipeline::DogStatsD]),
159 };
160
161 USE_V2_API_SERIES = SalukiAnnotation {
163 schema: &schema::USE_V2_API_SERIES,
164 support_level: SupportLevel::Full,
165 additional_yaml_paths: &[],
166 env_var_override: None,
167 used_by: &[structs::DATADOG_METRICS_CONFIGURATION],
168 value_type_override: None,
169 test_json: None,
170 pipeline_affinity: PipelineAffinity::Pipelines(&[Pipeline::Checks, Pipeline::DogStatsD]),
171 };
172
173 ENV = SalukiAnnotation {
175 schema: &schema::ENV,
176 support_level: SupportLevel::Full,
177 additional_yaml_paths: &[],
178 env_var_override: None,
179 used_by: &[
180 structs::DATADOG_APM_STATS_ENCODER_CONFIGURATION,
181 structs::DATADOG_TRACE_CONFIGURATION,
182 ],
183 value_type_override: None,
184 test_json: None,
185 pipeline_affinity: PipelineAffinity::Pipelines(&[Pipeline::Traces]),
186 };
187}