From 19a7a4ac6ed5b0d7c78a35031b1aa94853fdac19 Mon Sep 17 00:00:00 2001 From: "Brian L. Troutwine" Date: Wed, 29 Nov 2023 10:37:12 -0800 Subject: [PATCH] string-interner experiments with LRU enabled Signed-off-by: Brian L. Troutwine --- .../datadog-agent/datadog.yaml | 13 +++++ .../experiment.yaml | 24 ++++++++ .../lading/lading.yaml | 56 +++++++++++++++++++ .../datadog-agent/datadog.yaml | 13 +++++ .../experiment.yaml | 24 ++++++++ .../lading/lading.yaml | 56 +++++++++++++++++++ .../datadog-agent/datadog.yaml | 13 +++++ .../experiment.yaml | 23 ++++++++ .../lading/lading.yaml | 56 +++++++++++++++++++ .../datadog-agent/datadog.yaml | 13 +++++ .../experiment.yaml | 24 ++++++++ .../lading/lading.yaml | 56 +++++++++++++++++++ .../datadog-agent/datadog.yaml | 13 +++++ .../experiment.yaml | 24 ++++++++ .../lading/lading.yaml | 56 +++++++++++++++++++ .../datadog-agent/datadog.yaml | 13 +++++ .../experiment.yaml | 24 ++++++++ .../lading/lading.yaml | 56 +++++++++++++++++++ .../datadog-agent/datadog.yaml | 13 +++++ .../experiment.yaml | 24 ++++++++ .../lading/lading.yaml | 56 +++++++++++++++++++ .../datadog-agent/datadog.yaml | 13 +++++ .../experiment.yaml | 24 ++++++++ .../lading/lading.yaml | 56 +++++++++++++++++++ .../datadog-agent/datadog.yaml | 13 +++++ .../experiment.yaml | 24 ++++++++ .../lading/lading.yaml | 56 +++++++++++++++++++ 27 files changed, 836 insertions(+) create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_128MiB_100/datadog-agent/datadog.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_128MiB_100/experiment.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_128MiB_100/lading/lading.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_128MiB_1k/datadog-agent/datadog.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_128MiB_1k/experiment.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_128MiB_1k/lading/lading.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_64MiB_100/datadog-agent/datadog.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_64MiB_100/experiment.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_64MiB_100/lading/lading.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_64MiB_1k/datadog-agent/datadog.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_64MiB_1k/experiment.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_64MiB_1k/lading/lading.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_8MiB_100/datadog-agent/datadog.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_8MiB_100/experiment.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_8MiB_100/lading/lading.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_8MiB_100k/datadog-agent/datadog.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_8MiB_100k/experiment.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_8MiB_100k/lading/lading.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_8MiB_10k/datadog-agent/datadog.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_8MiB_10k/experiment.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_8MiB_10k/lading/lading.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_8MiB_1k/datadog-agent/datadog.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_8MiB_1k/experiment.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_8MiB_1k/lading/lading.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_8MiB_50k/datadog-agent/datadog.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_8MiB_50k/experiment.yaml create mode 100644 test/regression/cases/dogstatsd_lru_string_interner_8MiB_50k/lading/lading.yaml diff --git a/test/regression/cases/dogstatsd_lru_string_interner_128MiB_100/datadog-agent/datadog.yaml b/test/regression/cases/dogstatsd_lru_string_interner_128MiB_100/datadog-agent/datadog.yaml new file mode 100644 index 0000000000000..aee29a8c34785 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_128MiB_100/datadog-agent/datadog.yaml @@ -0,0 +1,13 @@ +auth_token_file_path: /tmp/agent-auth-token +hostname: smp-regression + +dd_url: http://127.0.0.1:9092 + +confd_path: /etc/datadog-agent/conf.d + +# Disable cloud detection. This stops the Agent from poking around the +# execution environment & network. This is particularly important if the target +# has network access. +cloud_provider_metadata: [] + +dogstatsd_socket: '/tmp/dsd.socket' diff --git a/test/regression/cases/dogstatsd_lru_string_interner_128MiB_100/experiment.yaml b/test/regression/cases/dogstatsd_lru_string_interner_128MiB_100/experiment.yaml new file mode 100644 index 0000000000000..548b56618da3d --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_128MiB_100/experiment.yaml @@ -0,0 +1,24 @@ +optimization_goal: ingress_throughput +erratic: false + +environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + DD_TELEMETRY_ENABLED: true + DD_API_KEY: 00000001 + +profiling_environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + + DD_INTERNAL_PROFILING_BLOCK_PROFILE_RATE: 10000 + DD_INTERNAL_PROFILING_CPU_DURATION: 1m + DD_INTERNAL_PROFILING_DELTA_PROFILES: true + DD_INTERNAL_PROFILING_ENABLED: true + DD_INTERNAL_PROFILING_ENABLE_GOROUTINE_STACKTRACES: true + DD_INTERNAL_PROFILING_MUTEX_PROFILE_FRACTION: 10 + DD_INTERNAL_PROFILING_PERIOD: 1m + DD_INTERNAL_PROFILING_UNIX_SOCKET: /var/run/datadog/apm.socket + DD_PROFILING_EXECUTION_TRACE_ENABLED: true + DD_PROFILING_EXECUTION_TRACE_PERIOD: 1m + DD_PROFILING_WAIT_PROFILE: true + + DD_INTERNAL_PROFILING_EXTRA_TAGS: experiment:dogstatsd_lru_string_interner_128MiB_100 diff --git a/test/regression/cases/dogstatsd_lru_string_interner_128MiB_100/lading/lading.yaml b/test/regression/cases/dogstatsd_lru_string_interner_128MiB_100/lading/lading.yaml new file mode 100644 index 0000000000000..59421039b85c4 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_128MiB_100/lading/lading.yaml @@ -0,0 +1,56 @@ +# If you update this configuration please update `uds_dogstatsd_*` experiments +# to match, where reasonable. +generator: + - unix_datagram: + seed: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, + 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131] + path: "/tmp/dsd.socket" + variant: + dogstatsd: + contexts: + constant: 100 + name_length: + inclusive: + min: 1 + max: 200 + tag_key_length: + inclusive: + min: 1 + max: 100 + tag_value_length: + inclusive: + min: 1 + max: 100 + tags_per_msg: + inclusive: + min: 2 + max: 50 + multivalue_count: + inclusive: + min: 2 + max: 32 + multivalue_pack_probability: 0.08 + kind_weights: + metric: 90 + event: 5 + service_check: 5 + metric_weights: + count: 100 + gauge: 10 + timer: 0 + distribution: 0 + set: 0 + histogram: 0 + bytes_per_second: "128 MiB" + block_sizes: ["256b", "512b", "1Kb", "2Kb", "3Kb", "4Kb", "5Kb", "6Kb"] + maximum_prebuild_cache_size_bytes: "500 Mb" + +blackhole: + - http: + binding_addr: "127.0.0.1:9091" + - http: + binding_addr: "127.0.0.1:9092" + +target_metrics: + - prometheus: + uri: "http://127.0.0.1:5000/telemetry" diff --git a/test/regression/cases/dogstatsd_lru_string_interner_128MiB_1k/datadog-agent/datadog.yaml b/test/regression/cases/dogstatsd_lru_string_interner_128MiB_1k/datadog-agent/datadog.yaml new file mode 100644 index 0000000000000..aee29a8c34785 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_128MiB_1k/datadog-agent/datadog.yaml @@ -0,0 +1,13 @@ +auth_token_file_path: /tmp/agent-auth-token +hostname: smp-regression + +dd_url: http://127.0.0.1:9092 + +confd_path: /etc/datadog-agent/conf.d + +# Disable cloud detection. This stops the Agent from poking around the +# execution environment & network. This is particularly important if the target +# has network access. +cloud_provider_metadata: [] + +dogstatsd_socket: '/tmp/dsd.socket' diff --git a/test/regression/cases/dogstatsd_lru_string_interner_128MiB_1k/experiment.yaml b/test/regression/cases/dogstatsd_lru_string_interner_128MiB_1k/experiment.yaml new file mode 100644 index 0000000000000..4341316a5f8d2 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_128MiB_1k/experiment.yaml @@ -0,0 +1,24 @@ +optimization_goal: ingress_throughput +erratic: false + +environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + DD_TELEMETRY_ENABLED: true + DD_API_KEY: 00000001 + +profiling_environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + + DD_INTERNAL_PROFILING_BLOCK_PROFILE_RATE: 10000 + DD_INTERNAL_PROFILING_CPU_DURATION: 1m + DD_INTERNAL_PROFILING_DELTA_PROFILES: true + DD_INTERNAL_PROFILING_ENABLED: true + DD_INTERNAL_PROFILING_ENABLE_GOROUTINE_STACKTRACES: true + DD_INTERNAL_PROFILING_MUTEX_PROFILE_FRACTION: 10 + DD_INTERNAL_PROFILING_PERIOD: 1m + DD_INTERNAL_PROFILING_UNIX_SOCKET: /var/run/datadog/apm.socket + DD_PROFILING_EXECUTION_TRACE_ENABLED: true + DD_PROFILING_EXECUTION_TRACE_PERIOD: 1m + DD_PROFILING_WAIT_PROFILE: true + + DD_INTERNAL_PROFILING_EXTRA_TAGS: experiment:dogstatsd_lru_string_interner_128MiB_1k diff --git a/test/regression/cases/dogstatsd_lru_string_interner_128MiB_1k/lading/lading.yaml b/test/regression/cases/dogstatsd_lru_string_interner_128MiB_1k/lading/lading.yaml new file mode 100644 index 0000000000000..2f611ec0559aa --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_128MiB_1k/lading/lading.yaml @@ -0,0 +1,56 @@ +# If you update this configuration please update `uds_dogstatsd_*` experiments +# to match, where reasonable. +generator: + - unix_datagram: + seed: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, + 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131] + path: "/tmp/dsd.socket" + variant: + dogstatsd: + contexts: + constant: 1000 + name_length: + inclusive: + min: 1 + max: 200 + tag_key_length: + inclusive: + min: 1 + max: 100 + tag_value_length: + inclusive: + min: 1 + max: 100 + tags_per_msg: + inclusive: + min: 2 + max: 50 + multivalue_count: + inclusive: + min: 2 + max: 32 + multivalue_pack_probability: 0.08 + kind_weights: + metric: 90 + event: 5 + service_check: 5 + metric_weights: + count: 100 + gauge: 10 + timer: 0 + distribution: 0 + set: 0 + histogram: 0 + bytes_per_second: "128 MiB" + block_sizes: ["256b", "512b", "1Kb", "2Kb", "3Kb", "4Kb", "5Kb", "6Kb"] + maximum_prebuild_cache_size_bytes: "500 Mb" + +blackhole: + - http: + binding_addr: "127.0.0.1:9091" + - http: + binding_addr: "127.0.0.1:9092" + +target_metrics: + - prometheus: + uri: "http://127.0.0.1:5000/telemetry" diff --git a/test/regression/cases/dogstatsd_lru_string_interner_64MiB_100/datadog-agent/datadog.yaml b/test/regression/cases/dogstatsd_lru_string_interner_64MiB_100/datadog-agent/datadog.yaml new file mode 100644 index 0000000000000..aee29a8c34785 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_64MiB_100/datadog-agent/datadog.yaml @@ -0,0 +1,13 @@ +auth_token_file_path: /tmp/agent-auth-token +hostname: smp-regression + +dd_url: http://127.0.0.1:9092 + +confd_path: /etc/datadog-agent/conf.d + +# Disable cloud detection. This stops the Agent from poking around the +# execution environment & network. This is particularly important if the target +# has network access. +cloud_provider_metadata: [] + +dogstatsd_socket: '/tmp/dsd.socket' diff --git a/test/regression/cases/dogstatsd_lru_string_interner_64MiB_100/experiment.yaml b/test/regression/cases/dogstatsd_lru_string_interner_64MiB_100/experiment.yaml new file mode 100644 index 0000000000000..7288800da8fcb --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_64MiB_100/experiment.yaml @@ -0,0 +1,23 @@ +optimization_goal: ingress_throughput +erratic: false + +environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + DD_TELEMETRY_ENABLED: true + DD_API_KEY: 00000001 + +profiling_environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + DD_INTERNAL_PROFILING_BLOCK_PROFILE_RATE: 10000 + DD_INTERNAL_PROFILING_CPU_DURATION: 1m + DD_INTERNAL_PROFILING_DELTA_PROFILES: true + DD_INTERNAL_PROFILING_ENABLED: true + DD_INTERNAL_PROFILING_ENABLE_GOROUTINE_STACKTRACES: true + DD_INTERNAL_PROFILING_MUTEX_PROFILE_FRACTION: 10 + DD_INTERNAL_PROFILING_PERIOD: 1m + DD_INTERNAL_PROFILING_UNIX_SOCKET: /var/run/datadog/apm.socket + DD_PROFILING_EXECUTION_TRACE_ENABLED: true + DD_PROFILING_EXECUTION_TRACE_PERIOD: 1m + DD_PROFILING_WAIT_PROFILE: true + + DD_INTERNAL_PROFILING_EXTRA_TAGS: experiment:dogstatsd_lru_string_interner_64MiB_100 diff --git a/test/regression/cases/dogstatsd_lru_string_interner_64MiB_100/lading/lading.yaml b/test/regression/cases/dogstatsd_lru_string_interner_64MiB_100/lading/lading.yaml new file mode 100644 index 0000000000000..e4aad7e4c6753 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_64MiB_100/lading/lading.yaml @@ -0,0 +1,56 @@ +# If you update this configuration please update `uds_dogstatsd_*` experiments +# to match, where reasonable. +generator: + - unix_datagram: + seed: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, + 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131] + path: "/tmp/dsd.socket" + variant: + dogstatsd: + contexts: + constant: 100 + name_length: + inclusive: + min: 1 + max: 200 + tag_key_length: + inclusive: + min: 1 + max: 100 + tag_value_length: + inclusive: + min: 1 + max: 100 + tags_per_msg: + inclusive: + min: 2 + max: 50 + multivalue_count: + inclusive: + min: 2 + max: 32 + multivalue_pack_probability: 0.08 + kind_weights: + metric: 90 + event: 5 + service_check: 5 + metric_weights: + count: 100 + gauge: 10 + timer: 0 + distribution: 0 + set: 0 + histogram: 0 + bytes_per_second: "64 MiB" + block_sizes: ["256b", "512b", "1Kb", "2Kb", "3Kb", "4Kb", "5Kb", "6Kb"] + maximum_prebuild_cache_size_bytes: "500 Mb" + +blackhole: + - http: + binding_addr: "127.0.0.1:9091" + - http: + binding_addr: "127.0.0.1:9092" + +target_metrics: + - prometheus: + uri: "http://127.0.0.1:5000/telemetry" diff --git a/test/regression/cases/dogstatsd_lru_string_interner_64MiB_1k/datadog-agent/datadog.yaml b/test/regression/cases/dogstatsd_lru_string_interner_64MiB_1k/datadog-agent/datadog.yaml new file mode 100644 index 0000000000000..aee29a8c34785 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_64MiB_1k/datadog-agent/datadog.yaml @@ -0,0 +1,13 @@ +auth_token_file_path: /tmp/agent-auth-token +hostname: smp-regression + +dd_url: http://127.0.0.1:9092 + +confd_path: /etc/datadog-agent/conf.d + +# Disable cloud detection. This stops the Agent from poking around the +# execution environment & network. This is particularly important if the target +# has network access. +cloud_provider_metadata: [] + +dogstatsd_socket: '/tmp/dsd.socket' diff --git a/test/regression/cases/dogstatsd_lru_string_interner_64MiB_1k/experiment.yaml b/test/regression/cases/dogstatsd_lru_string_interner_64MiB_1k/experiment.yaml new file mode 100644 index 0000000000000..ee82c4d4c1dc1 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_64MiB_1k/experiment.yaml @@ -0,0 +1,24 @@ +optimization_goal: ingress_throughput +erratic: false + +environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + DD_TELEMETRY_ENABLED: true + DD_API_KEY: 00000001 + +profiling_environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + + DD_INTERNAL_PROFILING_BLOCK_PROFILE_RATE: 10000 + DD_INTERNAL_PROFILING_CPU_DURATION: 1m + DD_INTERNAL_PROFILING_DELTA_PROFILES: true + DD_INTERNAL_PROFILING_ENABLED: true + DD_INTERNAL_PROFILING_ENABLE_GOROUTINE_STACKTRACES: true + DD_INTERNAL_PROFILING_MUTEX_PROFILE_FRACTION: 10 + DD_INTERNAL_PROFILING_PERIOD: 1m + DD_INTERNAL_PROFILING_UNIX_SOCKET: /var/run/datadog/apm.socket + DD_PROFILING_EXECUTION_TRACE_ENABLED: true + DD_PROFILING_EXECUTION_TRACE_PERIOD: 1m + DD_PROFILING_WAIT_PROFILE: true + + DD_INTERNAL_PROFILING_EXTRA_TAGS: experiment:dogstatsd_lru_string_interner_64MiB_1k diff --git a/test/regression/cases/dogstatsd_lru_string_interner_64MiB_1k/lading/lading.yaml b/test/regression/cases/dogstatsd_lru_string_interner_64MiB_1k/lading/lading.yaml new file mode 100644 index 0000000000000..ffa0f09b27c21 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_64MiB_1k/lading/lading.yaml @@ -0,0 +1,56 @@ +# If you update this configuration please update `uds_dogstatsd_*` experiments +# to match, where reasonable. +generator: + - unix_datagram: + seed: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, + 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131] + path: "/tmp/dsd.socket" + variant: + dogstatsd: + contexts: + constant: 1000 + name_length: + inclusive: + min: 1 + max: 200 + tag_key_length: + inclusive: + min: 1 + max: 100 + tag_value_length: + inclusive: + min: 1 + max: 100 + tags_per_msg: + inclusive: + min: 2 + max: 50 + multivalue_count: + inclusive: + min: 2 + max: 32 + multivalue_pack_probability: 0.08 + kind_weights: + metric: 90 + event: 5 + service_check: 5 + metric_weights: + count: 100 + gauge: 10 + timer: 0 + distribution: 0 + set: 0 + histogram: 0 + bytes_per_second: "64 MiB" + block_sizes: ["256b", "512b", "1Kb", "2Kb", "3Kb", "4Kb", "5Kb", "6Kb"] + maximum_prebuild_cache_size_bytes: "500 Mb" + +blackhole: + - http: + binding_addr: "127.0.0.1:9091" + - http: + binding_addr: "127.0.0.1:9092" + +target_metrics: + - prometheus: + uri: "http://127.0.0.1:5000/telemetry" diff --git a/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100/datadog-agent/datadog.yaml b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100/datadog-agent/datadog.yaml new file mode 100644 index 0000000000000..aee29a8c34785 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100/datadog-agent/datadog.yaml @@ -0,0 +1,13 @@ +auth_token_file_path: /tmp/agent-auth-token +hostname: smp-regression + +dd_url: http://127.0.0.1:9092 + +confd_path: /etc/datadog-agent/conf.d + +# Disable cloud detection. This stops the Agent from poking around the +# execution environment & network. This is particularly important if the target +# has network access. +cloud_provider_metadata: [] + +dogstatsd_socket: '/tmp/dsd.socket' diff --git a/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100/experiment.yaml b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100/experiment.yaml new file mode 100644 index 0000000000000..0092e75482908 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100/experiment.yaml @@ -0,0 +1,24 @@ +optimization_goal: ingress_throughput +erratic: false + +environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + DD_TELEMETRY_ENABLED: true + DD_API_KEY: 00000001 + +profiling_environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + + DD_INTERNAL_PROFILING_BLOCK_PROFILE_RATE: 10000 + DD_INTERNAL_PROFILING_CPU_DURATION: 1m + DD_INTERNAL_PROFILING_DELTA_PROFILES: true + DD_INTERNAL_PROFILING_ENABLED: true + DD_INTERNAL_PROFILING_ENABLE_GOROUTINE_STACKTRACES: true + DD_INTERNAL_PROFILING_MUTEX_PROFILE_FRACTION: 10 + DD_INTERNAL_PROFILING_PERIOD: 1m + DD_INTERNAL_PROFILING_UNIX_SOCKET: /var/run/datadog/apm.socket + DD_PROFILING_EXECUTION_TRACE_ENABLED: true + DD_PROFILING_EXECUTION_TRACE_PERIOD: 1m + DD_PROFILING_WAIT_PROFILE: true + + DD_INTERNAL_PROFILING_EXTRA_TAGS: experiment:dogstatsd_lru_string_interner_8MiB_100 diff --git a/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100/lading/lading.yaml b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100/lading/lading.yaml new file mode 100644 index 0000000000000..b47a3a3bf0658 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100/lading/lading.yaml @@ -0,0 +1,56 @@ +# If you update this configuration please update `uds_dogstatsd_*` experiments +# to match, where reasonable. +generator: + - unix_datagram: + seed: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, + 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131] + path: "/tmp/dsd.socket" + variant: + dogstatsd: + contexts: + constant: 100 + name_length: + inclusive: + min: 1 + max: 200 + tag_key_length: + inclusive: + min: 1 + max: 100 + tag_value_length: + inclusive: + min: 1 + max: 100 + tags_per_msg: + inclusive: + min: 2 + max: 50 + multivalue_count: + inclusive: + min: 2 + max: 32 + multivalue_pack_probability: 0.08 + kind_weights: + metric: 90 + event: 5 + service_check: 5 + metric_weights: + count: 100 + gauge: 10 + timer: 0 + distribution: 0 + set: 0 + histogram: 0 + bytes_per_second: "8 MiB" + block_sizes: ["256b", "512b", "1Kb", "2Kb", "3Kb", "4Kb", "5Kb", "6Kb"] + maximum_prebuild_cache_size_bytes: "500 Mb" + +blackhole: + - http: + binding_addr: "127.0.0.1:9091" + - http: + binding_addr: "127.0.0.1:9092" + +target_metrics: + - prometheus: + uri: "http://127.0.0.1:5000/telemetry" diff --git a/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100k/datadog-agent/datadog.yaml b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100k/datadog-agent/datadog.yaml new file mode 100644 index 0000000000000..aee29a8c34785 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100k/datadog-agent/datadog.yaml @@ -0,0 +1,13 @@ +auth_token_file_path: /tmp/agent-auth-token +hostname: smp-regression + +dd_url: http://127.0.0.1:9092 + +confd_path: /etc/datadog-agent/conf.d + +# Disable cloud detection. This stops the Agent from poking around the +# execution environment & network. This is particularly important if the target +# has network access. +cloud_provider_metadata: [] + +dogstatsd_socket: '/tmp/dsd.socket' diff --git a/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100k/experiment.yaml b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100k/experiment.yaml new file mode 100644 index 0000000000000..b252e96ddb01d --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100k/experiment.yaml @@ -0,0 +1,24 @@ +optimization_goal: ingress_throughput +erratic: false + +environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + DD_TELEMETRY_ENABLED: true + DD_API_KEY: 00000001 + +profiling_environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + + DD_INTERNAL_PROFILING_BLOCK_PROFILE_RATE: 10000 + DD_INTERNAL_PROFILING_CPU_DURATION: 1m + DD_INTERNAL_PROFILING_DELTA_PROFILES: true + DD_INTERNAL_PROFILING_ENABLED: true + DD_INTERNAL_PROFILING_ENABLE_GOROUTINE_STACKTRACES: true + DD_INTERNAL_PROFILING_MUTEX_PROFILE_FRACTION: 10 + DD_INTERNAL_PROFILING_PERIOD: 1m + DD_INTERNAL_PROFILING_UNIX_SOCKET: /var/run/datadog/apm.socket + DD_PROFILING_EXECUTION_TRACE_ENABLED: true + DD_PROFILING_EXECUTION_TRACE_PERIOD: 1m + DD_PROFILING_WAIT_PROFILE: true + + DD_INTERNAL_PROFILING_EXTRA_TAGS: experiment:dogstatsd_lru_string_interner_8MiB_100k diff --git a/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100k/lading/lading.yaml b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100k/lading/lading.yaml new file mode 100644 index 0000000000000..ee6442c6f0d5e --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_100k/lading/lading.yaml @@ -0,0 +1,56 @@ +# If you update this configuration please update `uds_dogstatsd_*` experiments +# to match, where reasonable. +generator: + - unix_datagram: + seed: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, + 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131] + path: "/tmp/dsd.socket" + variant: + dogstatsd: + contexts: + constant: 100000 + name_length: + inclusive: + min: 1 + max: 200 + tag_key_length: + inclusive: + min: 1 + max: 100 + tag_value_length: + inclusive: + min: 1 + max: 100 + tags_per_msg: + inclusive: + min: 2 + max: 50 + multivalue_count: + inclusive: + min: 2 + max: 32 + multivalue_pack_probability: 0.08 + kind_weights: + metric: 90 + event: 5 + service_check: 5 + metric_weights: + count: 100 + gauge: 10 + timer: 0 + distribution: 0 + set: 0 + histogram: 0 + bytes_per_second: "8 MiB" + block_sizes: ["256b", "512b", "1Kb", "2Kb", "3Kb", "4Kb", "5Kb", "6Kb"] + maximum_prebuild_cache_size_bytes: "500 Mb" + +blackhole: + - http: + binding_addr: "127.0.0.1:9091" + - http: + binding_addr: "127.0.0.1:9092" + +target_metrics: + - prometheus: + uri: "http://127.0.0.1:5000/telemetry" diff --git a/test/regression/cases/dogstatsd_lru_string_interner_8MiB_10k/datadog-agent/datadog.yaml b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_10k/datadog-agent/datadog.yaml new file mode 100644 index 0000000000000..aee29a8c34785 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_10k/datadog-agent/datadog.yaml @@ -0,0 +1,13 @@ +auth_token_file_path: /tmp/agent-auth-token +hostname: smp-regression + +dd_url: http://127.0.0.1:9092 + +confd_path: /etc/datadog-agent/conf.d + +# Disable cloud detection. This stops the Agent from poking around the +# execution environment & network. This is particularly important if the target +# has network access. +cloud_provider_metadata: [] + +dogstatsd_socket: '/tmp/dsd.socket' diff --git a/test/regression/cases/dogstatsd_lru_string_interner_8MiB_10k/experiment.yaml b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_10k/experiment.yaml new file mode 100644 index 0000000000000..8d5cdbc5d3a46 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_10k/experiment.yaml @@ -0,0 +1,24 @@ +optimization_goal: ingress_throughput +erratic: false + +environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + DD_TELEMETRY_ENABLED: true + DD_API_KEY: 00000001 + +profiling_environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + + DD_INTERNAL_PROFILING_BLOCK_PROFILE_RATE: 10000 + DD_INTERNAL_PROFILING_CPU_DURATION: 1m + DD_INTERNAL_PROFILING_DELTA_PROFILES: true + DD_INTERNAL_PROFILING_ENABLED: true + DD_INTERNAL_PROFILING_ENABLE_GOROUTINE_STACKTRACES: true + DD_INTERNAL_PROFILING_MUTEX_PROFILE_FRACTION: 10 + DD_INTERNAL_PROFILING_PERIOD: 1m + DD_INTERNAL_PROFILING_UNIX_SOCKET: /var/run/datadog/apm.socket + DD_PROFILING_EXECUTION_TRACE_ENABLED: true + DD_PROFILING_EXECUTION_TRACE_PERIOD: 1m + DD_PROFILING_WAIT_PROFILE: true + + DD_INTERNAL_PROFILING_EXTRA_TAGS: experiment:dogstatsd_lru_string_interner_8MiB_10k diff --git a/test/regression/cases/dogstatsd_lru_string_interner_8MiB_10k/lading/lading.yaml b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_10k/lading/lading.yaml new file mode 100644 index 0000000000000..1396db299d9e7 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_10k/lading/lading.yaml @@ -0,0 +1,56 @@ +# If you update this configuration please update `uds_dogstatsd_*` experiments +# to match, where reasonable. +generator: + - unix_datagram: + seed: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, + 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131] + path: "/tmp/dsd.socket" + variant: + dogstatsd: + contexts: + constant: 10000 + name_length: + inclusive: + min: 1 + max: 200 + tag_key_length: + inclusive: + min: 1 + max: 100 + tag_value_length: + inclusive: + min: 1 + max: 100 + tags_per_msg: + inclusive: + min: 2 + max: 50 + multivalue_count: + inclusive: + min: 2 + max: 32 + multivalue_pack_probability: 0.08 + kind_weights: + metric: 90 + event: 5 + service_check: 5 + metric_weights: + count: 100 + gauge: 10 + timer: 0 + distribution: 0 + set: 0 + histogram: 0 + bytes_per_second: "8 MiB" + block_sizes: ["256b", "512b", "1Kb", "2Kb", "3Kb", "4Kb", "5Kb", "6Kb"] + maximum_prebuild_cache_size_bytes: "500 Mb" + +blackhole: + - http: + binding_addr: "127.0.0.1:9091" + - http: + binding_addr: "127.0.0.1:9092" + +target_metrics: + - prometheus: + uri: "http://127.0.0.1:5000/telemetry" diff --git a/test/regression/cases/dogstatsd_lru_string_interner_8MiB_1k/datadog-agent/datadog.yaml b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_1k/datadog-agent/datadog.yaml new file mode 100644 index 0000000000000..aee29a8c34785 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_1k/datadog-agent/datadog.yaml @@ -0,0 +1,13 @@ +auth_token_file_path: /tmp/agent-auth-token +hostname: smp-regression + +dd_url: http://127.0.0.1:9092 + +confd_path: /etc/datadog-agent/conf.d + +# Disable cloud detection. This stops the Agent from poking around the +# execution environment & network. This is particularly important if the target +# has network access. +cloud_provider_metadata: [] + +dogstatsd_socket: '/tmp/dsd.socket' diff --git a/test/regression/cases/dogstatsd_lru_string_interner_8MiB_1k/experiment.yaml b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_1k/experiment.yaml new file mode 100644 index 0000000000000..f1365a6a0df4f --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_1k/experiment.yaml @@ -0,0 +1,24 @@ +optimization_goal: ingress_throughput +erratic: false + +environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + DD_TELEMETRY_ENABLED: true + DD_API_KEY: 00000001 + +profiling_environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + + DD_INTERNAL_PROFILING_BLOCK_PROFILE_RATE: 10000 + DD_INTERNAL_PROFILING_CPU_DURATION: 1m + DD_INTERNAL_PROFILING_DELTA_PROFILES: true + DD_INTERNAL_PROFILING_ENABLED: true + DD_INTERNAL_PROFILING_ENABLE_GOROUTINE_STACKTRACES: true + DD_INTERNAL_PROFILING_MUTEX_PROFILE_FRACTION: 10 + DD_INTERNAL_PROFILING_PERIOD: 1m + DD_INTERNAL_PROFILING_UNIX_SOCKET: /var/run/datadog/apm.socket + DD_PROFILING_EXECUTION_TRACE_ENABLED: true + DD_PROFILING_EXECUTION_TRACE_PERIOD: 1m + DD_PROFILING_WAIT_PROFILE: true + + DD_INTERNAL_PROFILING_EXTRA_TAGS: experiment:dogstatsd_lru_string_interner_8MiB_1k diff --git a/test/regression/cases/dogstatsd_lru_string_interner_8MiB_1k/lading/lading.yaml b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_1k/lading/lading.yaml new file mode 100644 index 0000000000000..7b9fc69b0cdba --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_1k/lading/lading.yaml @@ -0,0 +1,56 @@ +# If you update this configuration please update `uds_dogstatsd_*` experiments +# to match, where reasonable. +generator: + - unix_datagram: + seed: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, + 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131] + path: "/tmp/dsd.socket" + variant: + dogstatsd: + contexts: + constant: 1000 + name_length: + inclusive: + min: 1 + max: 200 + tag_key_length: + inclusive: + min: 1 + max: 100 + tag_value_length: + inclusive: + min: 1 + max: 100 + tags_per_msg: + inclusive: + min: 2 + max: 50 + multivalue_count: + inclusive: + min: 2 + max: 32 + multivalue_pack_probability: 0.08 + kind_weights: + metric: 90 + event: 5 + service_check: 5 + metric_weights: + count: 100 + gauge: 10 + timer: 0 + distribution: 0 + set: 0 + histogram: 0 + bytes_per_second: "8 MiB" + block_sizes: ["256b", "512b", "1Kb", "2Kb", "3Kb", "4Kb", "5Kb", "6Kb"] + maximum_prebuild_cache_size_bytes: "500 Mb" + +blackhole: + - http: + binding_addr: "127.0.0.1:9091" + - http: + binding_addr: "127.0.0.1:9092" + +target_metrics: + - prometheus: + uri: "http://127.0.0.1:5000/telemetry" diff --git a/test/regression/cases/dogstatsd_lru_string_interner_8MiB_50k/datadog-agent/datadog.yaml b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_50k/datadog-agent/datadog.yaml new file mode 100644 index 0000000000000..aee29a8c34785 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_50k/datadog-agent/datadog.yaml @@ -0,0 +1,13 @@ +auth_token_file_path: /tmp/agent-auth-token +hostname: smp-regression + +dd_url: http://127.0.0.1:9092 + +confd_path: /etc/datadog-agent/conf.d + +# Disable cloud detection. This stops the Agent from poking around the +# execution environment & network. This is particularly important if the target +# has network access. +cloud_provider_metadata: [] + +dogstatsd_socket: '/tmp/dsd.socket' diff --git a/test/regression/cases/dogstatsd_lru_string_interner_8MiB_50k/experiment.yaml b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_50k/experiment.yaml new file mode 100644 index 0000000000000..fad9ba825abb6 --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_50k/experiment.yaml @@ -0,0 +1,24 @@ +optimization_goal: ingress_throughput +erratic: false + +environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + DD_TELEMETRY_ENABLED: true + DD_API_KEY: 00000001 + +profiling_environment: + DD_DOGSTATSD_STRING_INTERNER_ENABLE_LRU: true + + DD_INTERNAL_PROFILING_BLOCK_PROFILE_RATE: 10000 + DD_INTERNAL_PROFILING_CPU_DURATION: 1m + DD_INTERNAL_PROFILING_DELTA_PROFILES: true + DD_INTERNAL_PROFILING_ENABLED: true + DD_INTERNAL_PROFILING_ENABLE_GOROUTINE_STACKTRACES: true + DD_INTERNAL_PROFILING_MUTEX_PROFILE_FRACTION: 10 + DD_INTERNAL_PROFILING_PERIOD: 1m + DD_INTERNAL_PROFILING_UNIX_SOCKET: /var/run/datadog/apm.socket + DD_PROFILING_EXECUTION_TRACE_ENABLED: true + DD_PROFILING_EXECUTION_TRACE_PERIOD: 1m + DD_PROFILING_WAIT_PROFILE: true + + DD_INTERNAL_PROFILING_EXTRA_TAGS: experiment:dogstatsd_lru_string_interner_8MiB_50k diff --git a/test/regression/cases/dogstatsd_lru_string_interner_8MiB_50k/lading/lading.yaml b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_50k/lading/lading.yaml new file mode 100644 index 0000000000000..eb3eb809b7ddd --- /dev/null +++ b/test/regression/cases/dogstatsd_lru_string_interner_8MiB_50k/lading/lading.yaml @@ -0,0 +1,56 @@ +# If you update this configuration please update `uds_dogstatsd_*` experiments +# to match, where reasonable. +generator: + - unix_datagram: + seed: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, + 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131] + path: "/tmp/dsd.socket" + variant: + dogstatsd: + contexts: + constant: 50000 + name_length: + inclusive: + min: 1 + max: 200 + tag_key_length: + inclusive: + min: 1 + max: 100 + tag_value_length: + inclusive: + min: 1 + max: 100 + tags_per_msg: + inclusive: + min: 2 + max: 50 + multivalue_count: + inclusive: + min: 2 + max: 32 + multivalue_pack_probability: 0.08 + kind_weights: + metric: 90 + event: 5 + service_check: 5 + metric_weights: + count: 100 + gauge: 10 + timer: 0 + distribution: 0 + set: 0 + histogram: 0 + bytes_per_second: "8 MiB" + block_sizes: ["256b", "512b", "1Kb", "2Kb", "3Kb", "4Kb", "5Kb", "6Kb"] + maximum_prebuild_cache_size_bytes: "500 Mb" + +blackhole: + - http: + binding_addr: "127.0.0.1:9091" + - http: + binding_addr: "127.0.0.1:9092" + +target_metrics: + - prometheus: + uri: "http://127.0.0.1:5000/telemetry"