loadgen/cmd/otelbench/config.yaml (44 lines of code) (raw):
receivers:
loadgen:
nop: # required as nop is used to disable pipelines that are not relevant to the bench, e.g. disabling metrics pipeline in logs bench
exporters:
otlp:
endpoint: "http://localhost:8200"
tls:
# As otlpexporter ignores the protocol in `endpoint`,
# `tls::insecure` needs to be explicitly set to true if target server does not use TLS
insecure: false
insecure_skip_verify: false
sending_queue:
enabled: false
timeout: 60s
otlphttp:
endpoint: "http://localhost:8200"
tls:
# As long as the endpoint contains the correct protocol, `tls::insecure` does not matter.
insecure: false
insecure_skip_verify: false
sending_queue:
enabled: false
timeout: 60s
nop: # required as nop is used to disable pipelines that are not relevant to the bench, e.g. disabling metrics pipeline in logs bench
processors:
transform/rewrite: # Rewrite telemetry to increase cardinality
trace_statements:
- context: span
statements:
# The worst way to generate a random ID, but is the simplest in OTTL
# Only randomize trace ID such that span relationships are still maintained
- set(trace_id.string, Substring(MD5(UUID()), 0, 32))
service:
pipelines:
logs:
receivers: [loadgen]
processors: [transform/rewrite]
exporters: [otlp] # this will be set dynamically to otlp or otlphttp depending on config
metrics:
receivers: [loadgen]
processors: [transform/rewrite]
exporters: [otlp] # this will be set dynamically to otlp or otlphttp depending on config
traces:
receivers: [loadgen]
processors: [transform/rewrite]
exporters: [otlp] # this will be set dynamically to otlp or otlphttp depending on config
telemetry:
logs:
level: ERROR