diff --git a/logstash-core/src/main/java/org/logstash/config/ir/compiler/OutputStrategyExt.java b/logstash-core/src/main/java/org/logstash/config/ir/compiler/OutputStrategyExt.java index e247552949..a65ab315ca 100644 --- a/logstash-core/src/main/java/org/logstash/config/ir/compiler/OutputStrategyExt.java +++ b/logstash-core/src/main/java/org/logstash/config/ir/compiler/OutputStrategyExt.java @@ -40,6 +40,7 @@ import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.BlockingQueue; import java.util.stream.Collectors; +import java.util.stream.Stream; public final class OutputStrategyExt { @@ -101,10 +102,12 @@ public RubyClass classFor(final ThreadContext context, final IRubyObject type) { if (!klass.isTrue()) { throw new IllegalArgumentException( String.format( - "Could not find output delegator strategy of type '%s'. Value strategies: %s", - type.asJavaString(), - map.values(context).stream().map(v -> ((IRubyObject) v).asJavaString()) - .collect(Collectors.joining(", ")) + "Could not find output delegator strategy of type '%s'. Supported strategies: %s", + type.inspect().asJavaString(), + ((Stream)map.keys(context).stream()) + .map(IRubyObject::inspect) + .map(IRubyObject::asString) + .collect(Collectors.joining(", ")) ) ); }