summaryrefslogtreecommitdiffstats
path: root/tests/es-bulk-errfile-popul-erronly.sh
diff options
context:
space:
mode:
Diffstat (limited to 'tests/es-bulk-errfile-popul-erronly.sh')
-rwxr-xr-xtests/es-bulk-errfile-popul-erronly.sh55
1 files changed, 55 insertions, 0 deletions
diff --git a/tests/es-bulk-errfile-popul-erronly.sh b/tests/es-bulk-errfile-popul-erronly.sh
new file mode 100755
index 0000000..9db619f
--- /dev/null
+++ b/tests/es-bulk-errfile-popul-erronly.sh
@@ -0,0 +1,55 @@
+#!/bin/bash
+# This file is part of the rsyslog project, released under ASL 2.0
+. ${srcdir:=.}/diag.sh init
+export ES_DOWNLOAD=elasticsearch-6.0.0.tar.gz
+ensure_elasticsearch_ready
+
+init_elasticsearch
+echo '{ "name" : "foo" }
+{"name": bar"}
+{"name": "baz"}
+{"name": foz"}' > $RSYSLOG_DYNNAME.inESData.inputfile
+generate_conf
+add_conf '
+global(workDirectory="'$RSYSLOG_DYNNAME.spool'")
+# Note: we must mess up with the template, because we can not
+# instruct ES to put further constraints on the data type and
+# values. So we require integer and make sure it is none.
+template(name="tpl" type="list") {
+ constant(value="{\"")
+ property(name="$!key") constant(value="\":") property(name="$!obj")
+ constant(value="}")
+}
+
+module(load="../plugins/omelasticsearch/.libs/omelasticsearch")
+module(load="../plugins/imfile/.libs/imfile")
+ruleset(name="foo") {
+ set $!key = "my_obj";
+ set $!obj = $msg;
+ action(type="omelasticsearch"
+ template="tpl"
+ searchIndex="rsyslog_testbench"
+ searchType="test-type"
+ serverport="19200"
+ bulkmode="on"
+ errorFile="'${RSYSLOG_DYNNAME}'.errorfile"
+ erroronly="on")
+}
+
+input(type="imfile" File="'$RSYSLOG_DYNNAME.'inESData.inputfile"
+ Tag="foo"
+ Severity="info"
+ ruleset="foo")
+'
+startup
+shutdown_when_empty
+wait_shutdown
+
+$PYTHON $srcdir/elasticsearch-error-format-check.py erroronly
+
+if [ $? -ne 0 ]
+then
+ echo "error: Format for error file different! " $?
+ error_exit 1
+fi
+exit_test