Skip to content

Commit 5ef0634

Browse files
committed
experiment(dev): introduce new OTLP load generator for scenario-based workloads
1 parent b42f539 commit 5ef0634

File tree

30 files changed

+2864
-0
lines changed

30 files changed

+2864
-0
lines changed

Cargo.lock

Lines changed: 21 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ members = [
77
"bin/correctness/millstone",
88
"bin/correctness/panoramic",
99
"bin/correctness/stele",
10+
"bin/generators/dreamweaver",
1011
"lib/ddsketch",
1112
"lib/memory-accounting",
1213
"lib/process-memory",
@@ -209,6 +210,7 @@ argh = { version = "0.1", default-features = false }
209210
rmp-serde = { version = "1.3", default-features = false }
210211
serde_bytes = { version = "0.11.19", default-features = false }
211212
num-traits = { version = "0.2", default-features = false }
213+
tokio-stream = "0.1"
212214

213215
[patch.crates-io]
214216
# Forked version of `hyper-http-proxy` that removes an unused dependency on `rustls-native-certs`, which transitively depends

Makefile

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -311,6 +311,20 @@ run-adp-standalone-release: ## Runs ADP locally in standalone mode (release)
311311
DD_DATA_PLANE_TELEMETRY_ENABLED=true DD_DATA_PLANE_TELEMETRY_LISTEN_ADDR=tcp://127.0.0.1:5102 \
312312
target/release/agent-data-plane --config /tmp/adp-empty-config.yaml run
313313

314+
.PHONY: build-dreamweaver
315+
build-dreamweaver: check-rust-build-tools
316+
build-dreamweaver: ## Builds the dreamweaver binary
317+
@echo "[*] Building dreamweaver locally..."
318+
@cargo build --profile release --package dreamweaver
319+
320+
export DREAMWEAVER_CONFIG ?= $(shell pwd)/test/dreamweaver/ecommerce.yaml
321+
322+
.PHONY: run-dreamweaver
323+
run-dreamweaver: build-dreamweaver
324+
run-dreamweaver: ## Runs dreamweaver with config (set DREAMWEAVER_CONFIG to override)
325+
@echo "[*] Running dreamweaver with config: $(DREAMWEAVER_CONFIG)"
326+
@target/release/dreamweaver $(DREAMWEAVER_CONFIG)
327+
314328
.PHONY: run-dsd-basic-udp
315329
run-dsd-basic-udp: build-dsd-client ## Runs a basic set of metrics via the Dogstatsd client (UDP)
316330
@echo "[*] Sending basic metrics via Dogstatsd (UDP, 127.0.0.1:9191)..."
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
[package]
2+
name = "dreamweaver"
3+
version = "0.1.0"
4+
edition = { workspace = true }
5+
license = { workspace = true }
6+
repository = { workspace = true }
7+
8+
[lints]
9+
workspace = true
10+
11+
[dependencies]
12+
bytes = { workspace = true }
13+
indexmap = { workspace = true, features = ["serde"] }
14+
otlp-protos = { workspace = true }
15+
prost = { workspace = true }
16+
rand = { workspace = true, features = ["std", "std_rng"] }
17+
saluki-error = { workspace = true }
18+
serde = { workspace = true }
19+
serde_yaml = { workspace = true }
20+
sha3 = { workspace = true }
21+
tokio = { workspace = true, features = ["rt-multi-thread", "time", "sync", "macros"] }
22+
tokio-stream = { workspace = true }
23+
tokio-util = { workspace = true, features = ["time"] }
24+
tonic = { workspace = true, features = ["transport"] }
25+
tracing = { workspace = true }
26+
tracing-subscriber = { workspace = true, features = ["ansi", "env-filter", "fmt"] }

0 commit comments

Comments
 (0)