Skip to content

Commit 3ad5f92

Browse files
committed
feat(otlp): adds support for full suite of otlp_config.receiver keys
1 parent 42b3b21 commit 3ad5f92

9 files changed

Lines changed: 1846 additions & 80 deletions

File tree

.vale/styles/config/vocabularies/technical/accept.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -254,3 +254,4 @@ reimplemented
254254
hoc
255255
rss
256256
waker
257+
keepalive

docs/agent-data-plane/configuration/configuration.md

Lines changed: 101 additions & 45 deletions
Large diffs are not rendered by default.

lib/datadog-agent/config-overlay-model/src/saluki_keys.rs

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -318,21 +318,6 @@ pub static SALUKI_KEYS: &[SalukiKey] = &[
318318
pipeline_affinity: "PipelineAffinity::Pipelines(&[Pipeline::Traces])",
319319
filename: "otlp.rs",
320320
},
321-
SalukiKey {
322-
yaml_path: "otlp_config.receiver.protocols.http.transport",
323-
description: "OTLP HTTP receiver transport",
324-
default: "",
325-
documentation: None,
326-
value_type: "ValueType::String",
327-
schema_default: None,
328-
env_vars: &[],
329-
env_var_override: None,
330-
additional_yaml_paths: &[],
331-
used_by: &["TYPED_CONFIG_SYSTEM"],
332-
test_json: None,
333-
pipeline_affinity: "PipelineAffinity::Pipelines(&[Pipeline::Otlp])",
334-
filename: "otlp.rs",
335-
},
336321
SalukiKey {
337322
yaml_path: "otlp_allow_context_heap_allocs",
338323
description: "Allow heap allocations for OTLP contexts",

lib/datadog-agent/config-testing/build/registry_gen.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,6 @@ static GOLDEN_ORDER: &[(&str, &[&str])] = &[
204204
"otlp_config.receiver.protocols.grpc.max_recv_msg_size_mib",
205205
"otlp_config.receiver.protocols.grpc.transport",
206206
"otlp_config.receiver.protocols.http.endpoint",
207-
"otlp_config.receiver.protocols.http.transport",
208207
"otlp_config.traces.enabled",
209208
"otlp_config.traces.ignore_missing_datadog_fields",
210209
"otlp_config.traces.enable_otlp_compute_top_level_by_span_kind",

lib/datadog-agent/config-testing/src/config_registry/otlp.rs

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,6 @@ use super::schema;
44
#[allow(unused_imports)]
55
use super::*;
66

7-
static OTLP_CONFIG_RECEIVER_PROTOCOLS_HTTP_TRANSPORT_SCHEMA: SchemaEntry = SchemaEntry {
8-
schema: Schema::Saluki,
9-
yaml_path: "otlp_config.receiver.protocols.http.transport",
10-
env_vars: &[],
11-
value_type: ValueType::String,
12-
default: None,
13-
};
14-
157
static OTLP_CONFIG_TRACES_IGNORE_MISSING_DATADOG_FIELDS_SCHEMA: SchemaEntry = SchemaEntry {
168
schema: Schema::Saluki,
179
yaml_path: "otlp_config.traces.ignore_missing_datadog_fields",
@@ -113,17 +105,6 @@ crate::declare_annotations! {
113105
test_json: None,
114106
pipeline_affinity: PipelineAffinity::Pipelines(&[Pipeline::Otlp]),
115107
};
116-
/// `otlp_config.receiver.protocols.http.transport`
117-
OTLP_CONFIG_RECEIVER_PROTOCOLS_HTTP_TRANSPORT = SalukiAnnotation {
118-
schema: &OTLP_CONFIG_RECEIVER_PROTOCOLS_HTTP_TRANSPORT_SCHEMA,
119-
support_level: SupportLevel::Full,
120-
additional_yaml_paths: &[],
121-
env_var_override: None,
122-
used_by: &[structs::TYPED_CONFIG_SYSTEM],
123-
value_type_override: None,
124-
test_json: None,
125-
pipeline_affinity: PipelineAffinity::Pipelines(&[Pipeline::Otlp]),
126-
};
127108
/// `otlp_config.traces.enabled`-otlp_config.traces.enabled
128109
OTLP_CONFIG_TRACES_ENABLED = SalukiAnnotation {
129110
schema: &schema::OTLP_CONFIG_TRACES_ENABLED,

lib/datadog-agent/config-testing/src/config_registry/unsupported.rs

Lines changed: 627 additions & 0 deletions
Large diffs are not rendered by default.

lib/datadog-agent/config/schema/core/core_schema.yaml

Lines changed: 262 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5412,6 +5412,30 @@ properties:
54125412
node_type: section
54135413
type: object
54145414
properties:
5415+
server_parameters:
5416+
node_type: section
5417+
type: object
5418+
properties:
5419+
max_connection_idle:
5420+
node_type: setting
5421+
type: string
5422+
default: 0
5423+
max_connection_age:
5424+
node_type: setting
5425+
type: string
5426+
default: 0
5427+
max_connection_age_grace:
5428+
node_type: setting
5429+
type: string
5430+
default: 0
5431+
time:
5432+
node_type: setting
5433+
type: string
5434+
default: 0
5435+
timeout:
5436+
node_type: setting
5437+
type: string
5438+
default: 0
54155439
enforcement_policy:
54165440
node_type: section
54175441
type: object
@@ -5420,6 +5444,10 @@ properties:
54205444
node_type: setting
54215445
type: string
54225446
default: 5m
5447+
permit_without_stream:
5448+
node_type: setting
5449+
type: boolean
5450+
default: false
54235451
max_concurrent_streams:
54245452
node_type: setting
54255453
type: integer
@@ -5432,6 +5460,94 @@ properties:
54325460
node_type: setting
54335461
type: integer
54345462
default: 0
5463+
tls:
5464+
node_type: section
5465+
type: object
5466+
properties:
5467+
ca_file:
5468+
node_type: setting
5469+
type: string
5470+
default: ''
5471+
ca_pem:
5472+
node_type: setting
5473+
type: string
5474+
default: ''
5475+
cert_file:
5476+
node_type: setting
5477+
type: string
5478+
default: ''
5479+
cert_pem:
5480+
node_type: setting
5481+
type: string
5482+
default: ''
5483+
key_file:
5484+
node_type: setting
5485+
type: string
5486+
default: ''
5487+
key_pem:
5488+
node_type: setting
5489+
type: string
5490+
default: ''
5491+
include_system_ca_certs_pool:
5492+
node_type: setting
5493+
type: boolean
5494+
default: false
5495+
min_version:
5496+
node_type: setting
5497+
type: string
5498+
default: '1.2'
5499+
max_version:
5500+
node_type: setting
5501+
type: string
5502+
default: ''
5503+
cipher_suites:
5504+
node_type: setting
5505+
type: array
5506+
default: []
5507+
items:
5508+
type: string
5509+
include_insecure_cipher_suites:
5510+
node_type: setting
5511+
type: boolean
5512+
default: false
5513+
curve_preferences:
5514+
node_type: setting
5515+
type: array
5516+
default: []
5517+
items:
5518+
type: string
5519+
reload_interval:
5520+
node_type: setting
5521+
type: string
5522+
default: 0
5523+
client_ca_file:
5524+
node_type: setting
5525+
type: string
5526+
default: ''
5527+
client_ca_file_reload:
5528+
node_type: setting
5529+
type: boolean
5530+
default: false
5531+
tpm:
5532+
node_type: section
5533+
type: object
5534+
properties:
5535+
enabled:
5536+
node_type: setting
5537+
type: boolean
5538+
default: false
5539+
path:
5540+
node_type: setting
5541+
type: string
5542+
default: ''
5543+
owner_auth:
5544+
node_type: setting
5545+
type: string
5546+
default: ''
5547+
auth:
5548+
node_type: setting
5549+
type: string
5550+
default: ''
54355551
http:
54365552
node_type: section
54375553
type: object
@@ -5468,6 +5584,16 @@ properties:
54685584
default: []
54695585
items:
54705586
type: string
5587+
exposed_headers:
5588+
node_type: setting
5589+
type: array
5590+
default: []
5591+
items:
5592+
type: string
5593+
max_age:
5594+
node_type: setting
5595+
type: integer
5596+
default: 0
54715597
include_metadata:
54725598
node_type: setting
54735599
type: boolean
@@ -5476,6 +5602,142 @@ properties:
54765602
node_type: setting
54775603
type: integer
54785604
default: 0
5605+
transport:
5606+
node_type: setting
5607+
type: string
5608+
default: tcp
5609+
response_headers:
5610+
node_type: setting
5611+
type: object
5612+
default: {}
5613+
additionalProperties:
5614+
type: string
5615+
compression_algorithms:
5616+
node_type: setting
5617+
type: array
5618+
default: ['', gzip, zstd, zlib, snappy, deflate, lz4]
5619+
items:
5620+
type: string
5621+
read_timeout:
5622+
node_type: setting
5623+
type: string
5624+
default: 0
5625+
read_header_timeout:
5626+
node_type: setting
5627+
type: string
5628+
default: 1m
5629+
write_timeout:
5630+
node_type: setting
5631+
type: string
5632+
default: 30s
5633+
idle_timeout:
5634+
node_type: setting
5635+
type: string
5636+
default: 1m
5637+
keep_alives_enabled:
5638+
node_type: setting
5639+
type: boolean
5640+
default: true
5641+
traces_url_path:
5642+
node_type: setting
5643+
type: string
5644+
default: /v1/traces
5645+
metrics_url_path:
5646+
node_type: setting
5647+
type: string
5648+
default: /v1/metrics
5649+
logs_url_path:
5650+
node_type: setting
5651+
type: string
5652+
default: /v1/logs
5653+
tls:
5654+
node_type: section
5655+
type: object
5656+
properties:
5657+
ca_file:
5658+
node_type: setting
5659+
type: string
5660+
default: ''
5661+
ca_pem:
5662+
node_type: setting
5663+
type: string
5664+
default: ''
5665+
cert_file:
5666+
node_type: setting
5667+
type: string
5668+
default: ''
5669+
cert_pem:
5670+
node_type: setting
5671+
type: string
5672+
default: ''
5673+
key_file:
5674+
node_type: setting
5675+
type: string
5676+
default: ''
5677+
key_pem:
5678+
node_type: setting
5679+
type: string
5680+
default: ''
5681+
include_system_ca_certs_pool:
5682+
node_type: setting
5683+
type: boolean
5684+
default: false
5685+
min_version:
5686+
node_type: setting
5687+
type: string
5688+
default: '1.2'
5689+
max_version:
5690+
node_type: setting
5691+
type: string
5692+
default: ''
5693+
cipher_suites:
5694+
node_type: setting
5695+
type: array
5696+
default: []
5697+
items:
5698+
type: string
5699+
include_insecure_cipher_suites:
5700+
node_type: setting
5701+
type: boolean
5702+
default: false
5703+
curve_preferences:
5704+
node_type: setting
5705+
type: array
5706+
default: []
5707+
items:
5708+
type: string
5709+
reload_interval:
5710+
node_type: setting
5711+
type: string
5712+
default: 0
5713+
client_ca_file:
5714+
node_type: setting
5715+
type: string
5716+
default: ''
5717+
client_ca_file_reload:
5718+
node_type: setting
5719+
type: boolean
5720+
default: false
5721+
tpm:
5722+
node_type: section
5723+
type: object
5724+
properties:
5725+
enabled:
5726+
node_type: setting
5727+
type: boolean
5728+
default: false
5729+
path:
5730+
node_type: setting
5731+
type: string
5732+
default: ''
5733+
owner_auth:
5734+
node_type: setting
5735+
type: string
5736+
default: ''
5737+
auth:
5738+
node_type: setting
5739+
type: string
5740+
default: ''
54795741
metrics:
54805742
node_type: section
54815743
type: object

0 commit comments

Comments
 (0)