diff options
Diffstat (limited to 'fluent-bit/examples/kafka_filter/scripts')
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 |