Skip to content

Commit 0ee3251

Browse files
authored
[SMP] Add more _nodist uds experiments (#20036)
This commit extracts experiments from #19882 and #19990, expanding the throughput parameter across the range of concern. Note that at the lower end of the throughput range the full contexts will not be explored, meaning that throughput per second is the dominate metric here. Contexts per second we will need to derive from captured target telemetry. Intended to back ongoing experiments with the stringInterner. REF SMPTNG-12 Signed-off-by: Brian L. Troutwine <[email protected]>
1 parent 99baec6 commit 0ee3251

File tree

14 files changed

+310
-2
lines changed

14 files changed

+310
-2
lines changed

test/regression/cases/uds_dogstatsd_to_api_nodist_100MiB/lading/lading.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -43,4 +43,4 @@ blackhole:
4343

4444
target_metrics:
4545
- prometheus:
46-
uri: "http://127.0.0.1:9000"
46+
uri: "http://127.0.0.1:5000/telemetry"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
api_key: 00000000000000000000000000000000
2+
auth_token_file_path: /tmp/agent-auth-token
3+
hostname: smp-regression
4+
5+
dd_url: http://127.0.0.1:9092
6+
7+
confd_path: /etc/datadog-agent/conf.d
8+
9+
# Disable cloud detection. This stops the Agent from poking around the
10+
# execution environment & network. This is particularly important if the target
11+
# has network access.
12+
cloud_provider_metadata: []
13+
14+
dogstatsd_socket: '/tmp/dsd.socket'
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
optimization_goal: ingress_throughput
2+
erratic: false
3+
4+
environment:
5+
DD_TELEMETRY_ENABLED: true
6+
7+
profiling_environment:
8+
DD_INTERNAL_PROFILING_ENABLED: true
9+
DD_INTERNAL_PROFILING_UNIX_SOCKET: /var/run/datadog/apm.socket
10+
DD_INTERNAL_PROFILING_DELTA_PROFILES: true
11+
DD_INTERNAL_PROFILING_ENABLE_GOROUTINE_STACKTRACES: true
12+
DD_INTERNAL_PROFILING_EXTRA_TAGS: experiment:uds_dogstatsd_to_api_nodist_16MiB
13+
DD_PROFILING_EXECUTION_TRACE_ENABLED: true
14+
DD_PROFILING_EXECUTION_TRACE_PERIOD: 1m
15+
DD_PROFILING_WAIT_PROFILE: true
16+
DD_INTERNAL_PROFILING_BLOCK_PROFILE_RATE: 10000
17+
DD_INTERNAL_PROFILING_MUTEX_PROFILE_FRACTION: 10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# If you update this configuration please update `uds_dogstatsd_*` experiments
2+
# to match, where reasonable.
3+
generator:
4+
- unix_datagram:
5+
seed: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53,
6+
59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131]
7+
path: "/tmp/dsd.socket"
8+
variant:
9+
dogstatsd:
10+
contexts_minimum: 1000
11+
contexts_maximum: 10000
12+
name_length_minimum: 1
13+
name_length_maximum: 200
14+
tag_key_length_minimum: 1
15+
tag_key_length_maximum: 100
16+
tag_value_length_minimum: 1
17+
tag_value_length_maximum: 100
18+
tags_per_msg_minimum: 2
19+
tags_per_msg_maximum: 50
20+
multivalue_count_minimum: 2
21+
multivalue_count_maximum: 32
22+
multivalue_pack_probability: 0.08
23+
kind_weights:
24+
metric: 90
25+
event: 5
26+
service_check: 5
27+
metric_weights:
28+
count: 100
29+
gauge: 10
30+
timer: 0
31+
distribution: 0
32+
set: 0
33+
histogram: 0
34+
bytes_per_second: "16 MiB"
35+
block_sizes: ["256b", "512b", "1Kb", "2Kb", "3Kb", "4Kb", "5Kb", "6Kb"]
36+
maximum_prebuild_cache_size_bytes: "500 Mb"
37+
38+
blackhole:
39+
- http:
40+
binding_addr: "127.0.0.1:9091"
41+
- http:
42+
binding_addr: "127.0.0.1:9092"
43+
44+
target_metrics:
45+
- prometheus:
46+
uri: "http://127.0.0.1:5000/telemetry"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
api_key: 00000000000000000000000000000000
2+
auth_token_file_path: /tmp/agent-auth-token
3+
hostname: smp-regression
4+
5+
dd_url: http://127.0.0.1:9092
6+
7+
confd_path: /etc/datadog-agent/conf.d
8+
9+
# Disable cloud detection. This stops the Agent from poking around the
10+
# execution environment & network. This is particularly important if the target
11+
# has network access.
12+
cloud_provider_metadata: []
13+
14+
dogstatsd_socket: '/tmp/dsd.socket'
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
optimization_goal: ingress_throughput
2+
erratic: false
3+
4+
environment:
5+
DD_TELEMETRY_ENABLED: true
6+
7+
profiling_environment:
8+
DD_INTERNAL_PROFILING_ENABLED: true
9+
DD_INTERNAL_PROFILING_UNIX_SOCKET: /var/run/datadog/apm.socket
10+
DD_INTERNAL_PROFILING_DELTA_PROFILES: true
11+
DD_INTERNAL_PROFILING_ENABLE_GOROUTINE_STACKTRACES: true
12+
DD_INTERNAL_PROFILING_EXTRA_TAGS: experiment:uds_dogstatsd_to_api_nodist_1MiB
13+
DD_PROFILING_EXECUTION_TRACE_ENABLED: true
14+
DD_PROFILING_EXECUTION_TRACE_PERIOD: 1m
15+
DD_PROFILING_WAIT_PROFILE: true
16+
DD_INTERNAL_PROFILING_BLOCK_PROFILE_RATE: 10000
17+
DD_INTERNAL_PROFILING_MUTEX_PROFILE_FRACTION: 10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# If you update this configuration please update `uds_dogstatsd_*` experiments
2+
# to match, where reasonable.
3+
generator:
4+
- unix_datagram:
5+
seed: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53,
6+
59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131]
7+
path: "/tmp/dsd.socket"
8+
variant:
9+
dogstatsd:
10+
contexts_minimum: 1000
11+
contexts_maximum: 10000
12+
name_length_minimum: 1
13+
name_length_maximum: 200
14+
tag_key_length_minimum: 1
15+
tag_key_length_maximum: 100
16+
tag_value_length_minimum: 1
17+
tag_value_length_maximum: 100
18+
tags_per_msg_minimum: 2
19+
tags_per_msg_maximum: 50
20+
multivalue_count_minimum: 2
21+
multivalue_count_maximum: 32
22+
multivalue_pack_probability: 0.08
23+
kind_weights:
24+
metric: 90
25+
event: 5
26+
service_check: 5
27+
metric_weights:
28+
count: 100
29+
gauge: 10
30+
timer: 0
31+
distribution: 0
32+
set: 0
33+
histogram: 0
34+
bytes_per_second: "1 MiB"
35+
block_sizes: ["256b", "512b", "1Kb", "2Kb", "3Kb", "4Kb", "5Kb", "6Kb"]
36+
maximum_prebuild_cache_size_bytes: "500 Mb"
37+
38+
blackhole:
39+
- http:
40+
binding_addr: "127.0.0.1:9091"
41+
- http:
42+
binding_addr: "127.0.0.1:9092"
43+
44+
target_metrics:
45+
- prometheus:
46+
uri: "http://127.0.0.1:5000/telemetry"

test/regression/cases/uds_dogstatsd_to_api_nodist_200MiB/lading/lading.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -43,4 +43,4 @@ blackhole:
4343

4444
target_metrics:
4545
- prometheus:
46-
uri: "http://127.0.0.1:9000"
46+
uri: "http://127.0.0.1:5000/telemetry"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
api_key: 00000000000000000000000000000000
2+
auth_token_file_path: /tmp/agent-auth-token
3+
hostname: smp-regression
4+
5+
dd_url: http://127.0.0.1:9092
6+
7+
confd_path: /etc/datadog-agent/conf.d
8+
9+
# Disable cloud detection. This stops the Agent from poking around the
10+
# execution environment & network. This is particularly important if the target
11+
# has network access.
12+
cloud_provider_metadata: []
13+
14+
dogstatsd_socket: '/tmp/dsd.socket'
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
optimization_goal: ingress_throughput
2+
erratic: false
3+
4+
environment:
5+
DD_TELEMETRY_ENABLED: true
6+
7+
profiling_environment:
8+
DD_INTERNAL_PROFILING_ENABLED: true
9+
DD_INTERNAL_PROFILING_UNIX_SOCKET: /var/run/datadog/apm.socket
10+
DD_INTERNAL_PROFILING_DELTA_PROFILES: true
11+
DD_INTERNAL_PROFILING_ENABLE_GOROUTINE_STACKTRACES: true
12+
DD_INTERNAL_PROFILING_EXTRA_TAGS: experiment:uds_dogstatsd_to_api_nodist_32MiB
13+
DD_PROFILING_EXECUTION_TRACE_ENABLED: true
14+
DD_PROFILING_EXECUTION_TRACE_PERIOD: 1m
15+
DD_PROFILING_WAIT_PROFILE: true
16+
DD_INTERNAL_PROFILING_BLOCK_PROFILE_RATE: 10000
17+
DD_INTERNAL_PROFILING_MUTEX_PROFILE_FRACTION: 10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# If you update this configuration please update `uds_dogstatsd_*` experiments
2+
# to match, where reasonable.
3+
generator:
4+
- unix_datagram:
5+
seed: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53,
6+
59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131]
7+
path: "/tmp/dsd.socket"
8+
variant:
9+
dogstatsd:
10+
contexts_minimum: 1000
11+
contexts_maximum: 10000
12+
name_length_minimum: 1
13+
name_length_maximum: 200
14+
tag_key_length_minimum: 1
15+
tag_key_length_maximum: 100
16+
tag_value_length_minimum: 1
17+
tag_value_length_maximum: 100
18+
tags_per_msg_minimum: 2
19+
tags_per_msg_maximum: 50
20+
multivalue_count_minimum: 2
21+
multivalue_count_maximum: 32
22+
multivalue_pack_probability: 0.08
23+
kind_weights:
24+
metric: 90
25+
event: 5
26+
service_check: 5
27+
metric_weights:
28+
count: 100
29+
gauge: 10
30+
timer: 0
31+
distribution: 0
32+
set: 0
33+
histogram: 0
34+
bytes_per_second: "32 MiB"
35+
block_sizes: ["256b", "512b", "1Kb", "2Kb", "3Kb", "4Kb", "5Kb", "6Kb"]
36+
maximum_prebuild_cache_size_bytes: "500 Mb"
37+
38+
blackhole:
39+
- http:
40+
binding_addr: "127.0.0.1:9091"
41+
- http:
42+
binding_addr: "127.0.0.1:9092"
43+
44+
target_metrics:
45+
- prometheus:
46+
uri: "http://127.0.0.1:5000/telemetry"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
api_key: 00000000000000000000000000000000
2+
auth_token_file_path: /tmp/agent-auth-token
3+
hostname: smp-regression
4+
5+
dd_url: http://127.0.0.1:9092
6+
7+
confd_path: /etc/datadog-agent/conf.d
8+
9+
# Disable cloud detection. This stops the Agent from poking around the
10+
# execution environment & network. This is particularly important if the target
11+
# has network access.
12+
cloud_provider_metadata: []
13+
14+
dogstatsd_socket: '/tmp/dsd.socket'
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
optimization_goal: ingress_throughput
2+
erratic: false
3+
4+
environment:
5+
DD_TELEMETRY_ENABLED: true
6+
7+
profiling_environment:
8+
DD_INTERNAL_PROFILING_ENABLED: true
9+
DD_INTERNAL_PROFILING_UNIX_SOCKET: /var/run/datadog/apm.socket
10+
DD_INTERNAL_PROFILING_DELTA_PROFILES: true
11+
DD_INTERNAL_PROFILING_ENABLE_GOROUTINE_STACKTRACES: true
12+
DD_INTERNAL_PROFILING_EXTRA_TAGS: experiment:uds_dogstatsd_to_api_nodist_64MiB
13+
DD_PROFILING_EXECUTION_TRACE_ENABLED: true
14+
DD_PROFILING_EXECUTION_TRACE_PERIOD: 1m
15+
DD_PROFILING_WAIT_PROFILE: true
16+
DD_INTERNAL_PROFILING_BLOCK_PROFILE_RATE: 10000
17+
DD_INTERNAL_PROFILING_MUTEX_PROFILE_FRACTION: 10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# If you update this configuration please update `uds_dogstatsd_*` experiments
2+
# to match, where reasonable.
3+
generator:
4+
- unix_datagram:
5+
seed: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53,
6+
59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131]
7+
path: "/tmp/dsd.socket"
8+
variant:
9+
dogstatsd:
10+
contexts_minimum: 1000
11+
contexts_maximum: 10000
12+
name_length_minimum: 1
13+
name_length_maximum: 200
14+
tag_key_length_minimum: 1
15+
tag_key_length_maximum: 100
16+
tag_value_length_minimum: 1
17+
tag_value_length_maximum: 100
18+
tags_per_msg_minimum: 2
19+
tags_per_msg_maximum: 50
20+
multivalue_count_minimum: 2
21+
multivalue_count_maximum: 32
22+
multivalue_pack_probability: 0.08
23+
kind_weights:
24+
metric: 90
25+
event: 5
26+
service_check: 5
27+
metric_weights:
28+
count: 100
29+
gauge: 10
30+
timer: 0
31+
distribution: 0
32+
set: 0
33+
histogram: 0
34+
bytes_per_second: "64 MiB"
35+
block_sizes: ["256b", "512b", "1Kb", "2Kb", "3Kb", "4Kb", "5Kb", "6Kb"]
36+
maximum_prebuild_cache_size_bytes: "500 Mb"
37+
38+
blackhole:
39+
- http:
40+
binding_addr: "127.0.0.1:9091"
41+
- http:
42+
binding_addr: "127.0.0.1:9092"
43+
44+
target_metrics:
45+
- prometheus:
46+
uri: "http://127.0.0.1:5000/telemetry"

0 commit comments

Comments
 (0)