1use crate::config_registry::{generated::schema, structs, PipelineAffinity, SalukiAnnotation, SupportLevel, ValueType};
3
4crate::declare_annotations! {
6 API_KEY = SalukiAnnotation {
10 schema: &schema::API_KEY,
11 support_level: SupportLevel::Full,
12 additional_yaml_paths: &[],
13 env_var_override: None,
14 used_by: &[structs::FORWARDER_CONFIGURATION],
15 value_type_override: None,
16 test_json: None,
17 pipeline_affinity: PipelineAffinity::CrossCutting,
18 };
19
20 SITE = SalukiAnnotation {
22 schema: &schema::SITE,
23 support_level: SupportLevel::Full,
24 additional_yaml_paths: &[],
25 env_var_override: None,
26 used_by: &[structs::FORWARDER_CONFIGURATION],
27 value_type_override: None,
28 test_json: None,
29 pipeline_affinity: PipelineAffinity::CrossCutting,
30 };
31
32 DD_URL = SalukiAnnotation {
34 schema: &schema::DD_URL,
35 support_level: SupportLevel::Full,
36 additional_yaml_paths: &[],
37 env_var_override: None,
38 used_by: &[structs::FORWARDER_CONFIGURATION],
39 value_type_override: None,
40 test_json: None,
41 pipeline_affinity: PipelineAffinity::CrossCutting,
42 };
43
44 OBSERVABILITY_PIPELINES_WORKER_METRICS_ENABLED = SalukiAnnotation {
46 schema: &schema::OBSERVABILITY_PIPELINES_WORKER_METRICS_ENABLED,
47 support_level: SupportLevel::Full,
48 additional_yaml_paths: &[],
49 env_var_override: Some(&["DD_OBSERVABILITY_PIPELINES_WORKER_METRICS_ENABLED"]),
50 used_by: &[structs::FORWARDER_CONFIGURATION],
51 value_type_override: None,
52 test_json: None,
53 pipeline_affinity: PipelineAffinity::CrossCutting,
54 };
55
56 OBSERVABILITY_PIPELINES_WORKER_METRICS_URL = SalukiAnnotation {
58 schema: &schema::OBSERVABILITY_PIPELINES_WORKER_METRICS_URL,
59 support_level: SupportLevel::Full,
60 additional_yaml_paths: &[],
61 env_var_override: Some(&["DD_OBSERVABILITY_PIPELINES_WORKER_METRICS_URL"]),
62 used_by: &[structs::FORWARDER_CONFIGURATION],
63 value_type_override: None,
64 test_json: None,
65 pipeline_affinity: PipelineAffinity::CrossCutting,
66 };
67
68 VECTOR_METRICS_ENABLED = SalukiAnnotation {
70 schema: &schema::VECTOR_METRICS_ENABLED,
71 support_level: SupportLevel::Full,
72 additional_yaml_paths: &[],
73 env_var_override: Some(&["DD_VECTOR_METRICS_ENABLED"]),
74 used_by: &[structs::FORWARDER_CONFIGURATION],
75 value_type_override: None,
76 test_json: None,
77 pipeline_affinity: PipelineAffinity::CrossCutting,
78 };
79
80 VECTOR_METRICS_URL = SalukiAnnotation {
82 schema: &schema::VECTOR_METRICS_URL,
83 support_level: SupportLevel::Full,
84 additional_yaml_paths: &[],
85 env_var_override: Some(&["DD_VECTOR_METRICS_URL"]),
86 used_by: &[structs::FORWARDER_CONFIGURATION],
87 value_type_override: None,
88 test_json: None,
89 pipeline_affinity: PipelineAffinity::CrossCutting,
90 };
91
92 ADDITIONAL_ENDPOINTS = SalukiAnnotation {
95 schema: &schema::ADDITIONAL_ENDPOINTS,
96 support_level: SupportLevel::Full,
97 additional_yaml_paths: &[],
98 env_var_override: None,
99 used_by: &[structs::FORWARDER_CONFIGURATION],
100 value_type_override: None,
101 test_json: Some(r#"{"smoke-host-1.example.com": ["smoke-api-key"]}"#),
102 pipeline_affinity: PipelineAffinity::CrossCutting,
103 };
104
105 FORWARDER_NUM_WORKERS = SalukiAnnotation {
109 schema: &schema::FORWARDER_NUM_WORKERS,
110 support_level: SupportLevel::Full,
111 additional_yaml_paths: &[],
112 env_var_override: None,
113 used_by: &[structs::FORWARDER_CONFIGURATION],
114 value_type_override: Some(ValueType::Integer),
115 test_json: None,
116 pipeline_affinity: PipelineAffinity::CrossCutting,
117 };
118
119 FORWARDER_TIMEOUT = SalukiAnnotation {
121 schema: &schema::FORWARDER_TIMEOUT,
122 support_level: SupportLevel::Full,
123 additional_yaml_paths: &[],
124 env_var_override: None,
125 used_by: &[structs::FORWARDER_CONFIGURATION],
126 value_type_override: Some(ValueType::Integer),
127 test_json: None,
128 pipeline_affinity: PipelineAffinity::CrossCutting,
129 };
130
131 FORWARDER_HIGH_PRIO_BUFFER_SIZE = SalukiAnnotation {
133 schema: &schema::FORWARDER_HIGH_PRIO_BUFFER_SIZE,
134 support_level: SupportLevel::Full,
135 additional_yaml_paths: &[],
136 env_var_override: None,
137 used_by: &[structs::FORWARDER_CONFIGURATION],
138 value_type_override: Some(ValueType::Integer),
139 test_json: None,
140 pipeline_affinity: PipelineAffinity::CrossCutting,
141 };
142
143 FORWARDER_CONNECTION_RESET_INTERVAL = SalukiAnnotation {
145 schema: &schema::FORWARDER_CONNECTION_RESET_INTERVAL,
146 support_level: SupportLevel::Full,
147 additional_yaml_paths: &[],
148 env_var_override: None,
149 used_by: &[structs::FORWARDER_CONFIGURATION],
150 value_type_override: Some(ValueType::Integer),
151 test_json: None,
152 pipeline_affinity: PipelineAffinity::CrossCutting,
153 };
154
155 FORWARDER_HTTP_PROTOCOL = SalukiAnnotation {
157 schema: &schema::FORWARDER_HTTP_PROTOCOL,
158 support_level: SupportLevel::Full,
159 additional_yaml_paths: &[],
160 env_var_override: None,
161 used_by: &[structs::FORWARDER_CONFIGURATION],
162 value_type_override: None,
163 test_json: Some("\"http1\""),
164 pipeline_affinity: PipelineAffinity::CrossCutting,
165 };
166
167 SKIP_SSL_VALIDATION = SalukiAnnotation {
169 schema: &schema::SKIP_SSL_VALIDATION,
170 support_level: SupportLevel::Full,
171 additional_yaml_paths: &[],
172 env_var_override: Some(&["DD_SKIP_SSL_VALIDATION"]),
173 used_by: &[structs::FORWARDER_CONFIGURATION],
174 value_type_override: None,
175 test_json: None,
176 pipeline_affinity: PipelineAffinity::CrossCutting,
177 };
178
179 MIN_TLS_VERSION = SalukiAnnotation {
181 schema: &schema::MIN_TLS_VERSION,
182 support_level: SupportLevel::Partial,
183 additional_yaml_paths: &[],
184 env_var_override: Some(&["DD_MIN_TLS_VERSION"]),
185 used_by: &[structs::FORWARDER_CONFIGURATION],
186 value_type_override: None,
187 test_json: None,
188 pipeline_affinity: PipelineAffinity::CrossCutting,
189 };
190
191 ALLOW_ARBITRARY_TAGS = SalukiAnnotation {
193 schema: &schema::ALLOW_ARBITRARY_TAGS,
194 support_level: SupportLevel::Full,
195 additional_yaml_paths: &[],
196 env_var_override: Some(&["DD_ALLOW_ARBITRARY_TAGS"]),
197 used_by: &[structs::FORWARDER_CONFIGURATION],
198 value_type_override: None,
199 test_json: None,
200 pipeline_affinity: PipelineAffinity::CrossCutting,
201 };
202
203 FORWARDER_BACKOFF_BASE = SalukiAnnotation {
207 schema: &schema::FORWARDER_BACKOFF_BASE,
208 support_level: SupportLevel::Full,
209 additional_yaml_paths: &[],
210 env_var_override: None,
211 used_by: &[structs::FORWARDER_CONFIGURATION],
212 value_type_override: None,
213 test_json: None,
214 pipeline_affinity: PipelineAffinity::CrossCutting,
215 };
216
217 FORWARDER_BACKOFF_FACTOR = SalukiAnnotation {
219 schema: &schema::FORWARDER_BACKOFF_FACTOR,
220 support_level: SupportLevel::Full,
221 additional_yaml_paths: &[],
222 env_var_override: None,
223 used_by: &[structs::FORWARDER_CONFIGURATION],
224 value_type_override: None,
225 test_json: None,
226 pipeline_affinity: PipelineAffinity::CrossCutting,
227 };
228
229 FORWARDER_BACKOFF_MAX = SalukiAnnotation {
231 schema: &schema::FORWARDER_BACKOFF_MAX,
232 support_level: SupportLevel::Full,
233 additional_yaml_paths: &[],
234 env_var_override: None,
235 used_by: &[structs::FORWARDER_CONFIGURATION],
236 value_type_override: None,
237 test_json: None,
238 pipeline_affinity: PipelineAffinity::CrossCutting,
239 };
240
241 FORWARDER_RECOVERY_INTERVAL = SalukiAnnotation {
243 schema: &schema::FORWARDER_RECOVERY_INTERVAL,
244 support_level: SupportLevel::Full,
245 additional_yaml_paths: &[],
246 env_var_override: None,
247 used_by: &[structs::FORWARDER_CONFIGURATION],
248 value_type_override: Some(ValueType::Integer),
249 test_json: None,
250 pipeline_affinity: PipelineAffinity::CrossCutting,
251 };
252
253 FORWARDER_RECOVERY_RESET = SalukiAnnotation {
255 schema: &schema::FORWARDER_RECOVERY_RESET,
256 support_level: SupportLevel::Full,
257 additional_yaml_paths: &[],
258 env_var_override: None,
259 used_by: &[structs::FORWARDER_CONFIGURATION],
260 value_type_override: None,
261 test_json: None,
262 pipeline_affinity: PipelineAffinity::CrossCutting,
263 };
264
265 FORWARDER_RETRY_QUEUE_MAX_SIZE = SalukiAnnotation {
267 schema: &schema::FORWARDER_RETRY_QUEUE_MAX_SIZE,
268 support_level: SupportLevel::Full,
269 additional_yaml_paths: &[],
270 env_var_override: None,
271 used_by: &[structs::FORWARDER_CONFIGURATION],
272 value_type_override: Some(ValueType::Integer),
273 test_json: None,
274 pipeline_affinity: PipelineAffinity::CrossCutting,
275 };
276
277 FORWARDER_RETRY_QUEUE_PAYLOADS_MAX_SIZE = SalukiAnnotation {
279 schema: &schema::FORWARDER_RETRY_QUEUE_PAYLOADS_MAX_SIZE,
280 support_level: SupportLevel::Full,
281 additional_yaml_paths: &[],
282 env_var_override: None,
283 used_by: &[structs::FORWARDER_CONFIGURATION],
284 value_type_override: Some(ValueType::Integer),
285 test_json: None,
286 pipeline_affinity: PipelineAffinity::CrossCutting,
287 };
288
289 FORWARDER_STORAGE_MAX_DISK_RATIO = SalukiAnnotation {
291 schema: &schema::FORWARDER_STORAGE_MAX_DISK_RATIO,
292 support_level: SupportLevel::Full,
293 additional_yaml_paths: &[],
294 env_var_override: None,
295 used_by: &[structs::FORWARDER_CONFIGURATION],
296 value_type_override: None,
297 test_json: None,
298 pipeline_affinity: PipelineAffinity::CrossCutting,
299 };
300
301 FORWARDER_STORAGE_MAX_SIZE_IN_BYTES = SalukiAnnotation {
303 schema: &schema::FORWARDER_STORAGE_MAX_SIZE_IN_BYTES,
304 support_level: SupportLevel::Full,
305 additional_yaml_paths: &[],
306 env_var_override: None,
307 used_by: &[structs::FORWARDER_CONFIGURATION],
308 value_type_override: Some(ValueType::Integer),
309 test_json: None,
310 pipeline_affinity: PipelineAffinity::CrossCutting,
311 };
312
313 FORWARDER_STORAGE_PATH = SalukiAnnotation {
315 schema: &schema::FORWARDER_STORAGE_PATH,
316 support_level: SupportLevel::Full,
317 additional_yaml_paths: &[],
318 env_var_override: None,
319 used_by: &[structs::FORWARDER_CONFIGURATION],
320 value_type_override: None,
321 test_json: None,
322 pipeline_affinity: PipelineAffinity::CrossCutting,
323 };
324}