Skip to content

Instantly share code, notes, and snippets.

@Dieterbe
Created April 4, 2016 22:18
Show Gist options
  • Save Dieterbe/bda3f2af50c56146e98580a03c2b6eaa to your computer and use it in GitHub Desktop.
Save Dieterbe/bda3f2af50c56146e98580a03c2b6eaa to your computer and use it in GitHub Desktop.
diff --git a/benchmark/Dockerfile b/benchmark/Dockerfile
index a6da140..2548461 100644
--- a/benchmark/Dockerfile
+++ b/benchmark/Dockerfile
@@ -10,6 +10,9 @@ RUN cd /go/src/github.com/grafana && \
RUN go get github.com/tsenart/vegeta
+RUN go get github.com/raintank/raintank-metric/inspect-es
+RUN go get github.com/raintank/raintank-metric/fake_metrics_to_nsq
+
RUN cd /opt/raintank && \
git clone https://github.com/raintank/raintank-tsdb-benchmark.git
diff --git a/fig-dev.yaml b/fig-dev.yaml
index cd88203..615e45c 100644
--- a/fig-dev.yaml
+++ b/fig-dev.yaml
@@ -135,6 +135,7 @@ grafana:
- elasticsearch:elasticsearch
- statsdaemon:statsdaemon
- nsqd:nsqd
+ - metricTank:nsqmetricstank
volumes:
- ./raintank_code/grafana:/go/src/github.com/raintank/grafana
- ./logs:/var/log/raintank
@@ -154,3 +155,8 @@ benchmark:
hostname: benchmark
volumes:
- ./results:/opt/raintank/raintank-tsdb-benchmark/results
+ links:
+ - statsdaemon:statsdaemon
+ - nsqd:nsqd
+ - elasticsearch:elasticsearch
+ - graphiteApi:graphite-api
diff --git a/grafana-dev/conf/custom.ini b/grafana-dev/conf/custom.ini
index 05460d8..67967fa 100644
--- a/grafana-dev/conf/custom.ini
+++ b/grafana-dev/conf/custom.ini
@@ -63,7 +63,7 @@ host = elasticsearch
#################################### Alerting ##########################
[alerting]
-enabled = true
+enabled = false
handler = builtin
tickqueue_size = 20
internal_jobqueue_size = 1000
diff --git a/grafana-dev/create-dev-datasource.sh b/grafana-dev/create-dev-datasource.sh
index ded63f1..33fe90b 100644
--- a/grafana-dev/create-dev-datasource.sh
+++ b/grafana-dev/create-dev-datasource.sh
@@ -23,6 +23,11 @@ curl -H "Authorization: Bearer eyJrIjoiMEVUVE52c3ZITnhpVldyOTI5cVFQcUxQWGR6V213b
-H "content-type: application/json" \
'http://localhost/api/datasources' -X POST --data-binary '{"name":"benchmarks","type":"elasticsearch","url":"http://elasticsearch:9200","access":"proxy","isDefault":false,"database":"benchmark","user":"","password":"", "jsonData": {"timeField": "timestamp"}}'
+curl -H "Authorization: Bearer eyJrIjoiMEVUVE52c3ZITnhpVldyOTI5cVFQcUxQWGR6V213bUIiLCJuIjoiZGV2c3RhY2stYWRtaW4iLCJpZCI6MX0=" \
+ -H "content-type: application/json" \
+ 'http://localhost/api/datasources' -X POST --data-binary '{"name":"mt","type":"graphite","url":"http://metricTank:6063","access":"proxy","isDefault":false}'
+
+
for file in /tmp/dashboards/*; do
echo "> adding dashboard $file"
curl -H "Authorization: Bearer eyJrIjoiMEVUVE52c3ZITnhpVldyOTI5cVFQcUxQWGR6V213bUIiLCJuIjoiZGV2c3RhY2stYWRtaW4iLCJpZCI6MX0=" \
diff --git a/screens/benchmark b/screens/benchmark
index e69de29..3b72514 100644
--- a/screens/benchmark
+++ b/screens/benchmark
@@ -0,0 +1,6 @@
+#fake_metrics_to_nsq -nsqd-tcp-address nsqd:4150 -statsd-addr statsdaemon:8125
+fake_metrics_to_nsq -nsqd-tcp-address nsqd:4150 -statsd-addr statsdaemon:8125 -orgs 100 -keys-per-org 100 -offset 1h -speedup 10 -stop-at-now
+fake_metrics_to_nsq -nsqd-tcp-address nsqd:4150 -statsd-addr statsdaemon:8125 -orgs 100 -keys-per-org 100 &
+go get github.com/raintank/raintank-metric/inspect-es
+sleep 100
+inspect-es --es-addr elasticsearch:9200 -format vegeta-graphite | sed 's#localhost#graphite#' | vegeta attack -rate 200 -duration=5m > attack.out
diff --git a/screens/graphiteWatcher b/screens/graphiteWatcher
index ba7a868..31d2a76 100644
--- a/screens/graphiteWatcher
+++ b/screens/graphiteWatcher
@@ -2,12 +2,12 @@ touch /var/log/raintank/graphite-watcher.log
cd /go/src/github.com/raintank/raintank-metric/graphite-watcher
/wait.sh elasticsearch:9200 graphitemon:2003 graphite-api:8888
-./graphite-watcher \
--env raintank-docker \
--es-addr elasticsearch:9200 \
--carbon graphitemon:2003 \
--graphite graphite-api:8888 \
--listen :6065 \
-&> /var/log/raintank/graphite-watcher.log &
+#./graphite-watcher \
+#-env raintank-docker \
+#-es-addr elasticsearch:9200 \
+#-carbon graphitemon:2003 \
+#-graphite graphite-api:8888 \
+#-listen :6065 \
+#&> /var/log/raintank/graphite-watcher.log &
-tail -f /var/log/raintank/graphite-watcher.log
+#tail -f /var/log/raintank/graphite-watcher.log
diff --git a/screens/metricTank b/screens/metricTank
index e18ee14..355535b 100644
--- a/screens/metricTank
+++ b/screens/metricTank
@@ -11,15 +11,15 @@
# TODO update chunk retentions to 1 once https://github.com/raintank/raintank-metric/issues/65 is fixed
cd /go/src/github.com/raintank/raintank-metric/metric_tank
/wait.sh cassandra:9042 elasticsearch:9200
-./metric_tank \
+GODEBUG=gctrace=1 ./metric_tank \
--chunkspan 10m \
- --numchunks 3 \
- --agg-settings 10m:6h:2:9d,2h:6h:2:74d,6h:6h:2:4y \
+ --numchunks 6 \
+ --agg-settings 1m:10m:6:1d \
--statsd-addr statsdaemon:8125 \
--nsqd-tcp-address nsqd:4150 \
--listen :6063 \
- --primary-node \
--elastic-addr elasticsearch:9200 \
--cassandra-addrs cassandra \
+ --mem-profile-rate 102400 \
&>> /var/log/raintank/nsq_metrics_tank.log &
tail -f /var/log/raintank/nsq_metrics_tank.log
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment