On Feb 5, 2013, at 12:00 AM, Jordan Sissel wrote:

> In lib/logstash/agent.rb:
> 
> > @@ -400,10 +406,10 @@ def run_with_config(config)
> >          end
> >  
> >          # If no inputs are specified, use stdin by default.
> > -        @inputs = [LogStash::Inputs::Stdin.new("type" => [ "stdin" ])] if @inputs.length == 0
> > +        @inputs = [LogStash::Inputs::Stdin.new("type" => [ "stdin" ])] if (@inputs.length == 0 or @configtest)
> is this necessary? The 'if @inputs.length == 0' is really just a hack for the '-e' flag which isn't meant for deployed use.
> 

If I leave the inputs and outputs set and they are started, they process log entries for a few moments before the threads are stopped.   It is usually only a handful of log entries right at the end of the filter loads, but I wanted to avoid that.  Resetting the input and output to stdin/stdout solves that problem and catches syntax errors in input and output.  
I saw you reset inputs and outputs with the '-e' flag and took advantage of it there, otherwise I would have created a conditional to do the same thing outside that block.

Does that make sense, or am I missing something?

Thanks,
-darren