vector 0.11.0 (g68a5c43 x86_64-unknown-linux-gnu 2020-09-11)
[sources.kafka]
type = "kafka"
bootstrap_servers = "logging-kafka-bootstrap.logging-kafka:9092"
group_id = "test-vector"
topics = ["test-vector"]
[transforms.kafka_parser]
type = "json_parser"
inputs = ["kafka"]
field = "message"
drop_invalid = true
[transforms.splitting_gerrys]
inputs = [ "kafka_parser" ]
type = "swimlanes"
[transforms.splitting_gerrys.lanes.only_gerrys]
type = "check_fields"
"host.eq" = "gerry"
[transforms.splitting_gerrys.lanes.no_gerrys]
type = "check_fields"
"host.neq" = "gerry"
[sinks.only_loves_gerry]
inputs = [ "splitting_gerrys.only_gerrys" ]
type = "console"
encoding.codec = "json"
[sinks.hates_gerry]
inputs = [ "splitting_gerrys.no_gerrys" ]
type = "console"
encoding.codec = "json"
Properly load configuration, vector validate passes the config locally (v0.10.0)
Sep 15 15:23:00.036 INFO vector: Log level "info" is enabled.
Sep 15 15:23:00.037 TRACE mio::poll: registering with poller
Sep 15 15:23:00.040 INFO vector: Loading configs. path=["/etc/vector/vector.toml"]
Sep 15 15:23:00.043 WARN vector::config::compiler: Transform "splitting_gerrys" has no consumers
Sep 15 15:23:00.043 ERROR vector: Configuration error: Input "splitting_gerrys.only_gerrys" for sink "only_loves_gerry" doesn't exist.
Sep 15 15:23:00.043 ERROR vector: Configuration error: Input "splitting_gerrys.no_gerrys" for sink "hates_gerry" doesn't exist.
I think the problem might be the name itself. Changing splitting_gerrys.only_gerrys -> only_gerrys and splitting_gerrys.no_gerrys -> no_gerrys should resolve that.
[sources.kafka]
type = "kafka"
bootstrap_servers = "logging-kafka-bootstrap.logging-kafka:9092"
group_id = "test-vector"
topics = ["test-vector"]
[transforms.kafka_parser]
type = "json_parser"
inputs = ["kafka"]
field = "message"
drop_invalid = true
[transforms.splitting_gerrys]
inputs = [ "kafka_parser" ]
type = "swimlanes"
[transforms.splitting_gerrys.lanes.only_gerrys]
type = "check_fields"
"host.eq" = "gerry"
[transforms.splitting_gerrys.lanes.no_gerrys]
type = "check_fields"
"host.neq" = "gerry"
[sinks.only_loves_gerry]
inputs = [ "only_gerrys" ]
type = "console"
encoding.codec = "json"
[sinks.hates_gerry]
inputs = [ "no_gerrys" ]
type = "console"
encoding.codec = "json"
Gets the same error unfortunately:
Sep 15 16:06:52.591 INFO vector: Log level "info" is enabled.
Sep 15 16:06:52.592 TRACE mio::poll: registering with poller
Sep 15 16:06:52.593 INFO vector: Loading configs. path=["/etc/vector/vector.toml"]
Sep 15 16:06:52.596 WARN vector::config::compiler: Transform "splitting_gerrys" has no consumers
Sep 15 16:06:52.597 ERROR vector: Configuration error: Input "only_gerrys" for sink "only_loves_gerry" doesn't exist.
Sep 15 16:06:52.597 ERROR vector: Configuration error: Input "no_gerrys" for sink "hates_gerry" doesn't exist.
The original transform.lane naming was correct, but this was broken somewhat recently in the config loading refactor. I've pushed a fix in #3894.
Thanks @lukesteensen!