summaryrefslogtreecommitdiffstats
path: root/fluent-bit/examples/kafka_filter/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'fluent-bit/examples/kafka_filter/scripts')
-rw-r--r--fluent-bit/examples/kafka_filter/scripts/common.sh17
-rwxr-xr-xfluent-bit/examples/kafka_filter/scripts/create-topics.sh9
-rwxr-xr-xfluent-bit/examples/kafka_filter/scripts/flb-start.sh8
-rwxr-xr-xfluent-bit/examples/kafka_filter/scripts/kafka-consume.sh9
-rwxr-xr-xfluent-bit/examples/kafka_filter/scripts/kafka-produce.sh13
5 files changed, 56 insertions, 0 deletions
diff --git a/fluent-bit/examples/kafka_filter/scripts/common.sh b/fluent-bit/examples/kafka_filter/scripts/common.sh
new file mode 100644
index 000000000..d9a2bc6f4
--- /dev/null
+++ b/fluent-bit/examples/kafka_filter/scripts/common.sh
@@ -0,0 +1,17 @@
+#!/bin/bash -ue
+
+wait_kafka() {
+ while ! nc -z "$KAFKA_HOST" "$KAFKA_PORT"; do
+ sleep 0.1
+ done
+}
+
+wait_topic() {
+ wait_kafka
+ local topic=$1
+ [ -z "$topic" ] && return 1
+ while true; do
+ kafka-topics --list --bootstrap-server "$KAFKA_HOST:$KAFKA_PORT" | grep -q "^$topic$" && break
+ sleep 0.1
+ done
+}
diff --git a/fluent-bit/examples/kafka_filter/scripts/create-topics.sh b/fluent-bit/examples/kafka_filter/scripts/create-topics.sh
new file mode 100755
index 000000000..a7adbddf1
--- /dev/null
+++ b/fluent-bit/examples/kafka_filter/scripts/create-topics.sh
@@ -0,0 +1,9 @@
+#!/bin/bash -ue
+
+# shellcheck disable=SC1091
+. /scripts/common.sh
+
+wait_kafka
+
+kafka-topics --create --partitions 1 --replication-factor 1 --topic fb-source --bootstrap-server "$KAFKA_HOST:$KAFKA_PORT"
+kafka-topics --create --partitions 1 --replication-factor 1 --topic fb-sink --bootstrap-server "$KAFKA_HOST:$KAFKA_PORT"
diff --git a/fluent-bit/examples/kafka_filter/scripts/flb-start.sh b/fluent-bit/examples/kafka_filter/scripts/flb-start.sh
new file mode 100755
index 000000000..56e5ee0d6
--- /dev/null
+++ b/fluent-bit/examples/kafka_filter/scripts/flb-start.sh
@@ -0,0 +1,8 @@
+#!/bin/bash -ue
+
+# shellcheck disable=SC1091
+. /scripts/common.sh
+
+wait_topic fb-sink
+
+exec /usr/local/bin/fluent-bit -c /etc/kafka.conf
diff --git a/fluent-bit/examples/kafka_filter/scripts/kafka-consume.sh b/fluent-bit/examples/kafka_filter/scripts/kafka-consume.sh
new file mode 100755
index 000000000..729c4876d
--- /dev/null
+++ b/fluent-bit/examples/kafka_filter/scripts/kafka-consume.sh
@@ -0,0 +1,9 @@
+#!/bin/bash -ue
+
+# shellcheck disable=SC1091
+. /scripts/common.sh
+
+wait_topic fb-sink
+
+kafka-console-consumer --topic fb-sink --bootstrap-server \
+ "$KAFKA_HOST:$KAFKA_PORT"
diff --git a/fluent-bit/examples/kafka_filter/scripts/kafka-produce.sh b/fluent-bit/examples/kafka_filter/scripts/kafka-produce.sh
new file mode 100755
index 000000000..eea99ca27
--- /dev/null
+++ b/fluent-bit/examples/kafka_filter/scripts/kafka-produce.sh
@@ -0,0 +1,13 @@
+#!/bin/bash -ue
+
+# shellcheck disable=SC1091
+. /scripts/common.sh
+
+wait_topic fb-sink
+
+for i in $(seq 1 100); do
+ sleep 1
+ echo "{ \"name\": \"object-$i\" }" | \
+ kafka-console-producer --topic fb-source \
+ --broker-list "$KAFKA_HOST:$KAFKA_PORT"
+done