Here is a snippet from my pipeline.yml
- pipeline.id: my_csv
config.string: "input { generator {} } filter { sleep { time => 1 } } output { stdout { codec => dots } }"
path.config: "D:\ELK\logstash-6.4.2\config*.conf" 
[2018-11-13T21:28:01,304][ERROR][logstash.agent           ] Failed to execute action {:action=>LogStash::PipelineAction::Create/pipeline_id:main, :exception=>"LogStash::ConfigurationError", :message=>"Expected one of #, input, filter, output at line 17, column 1 (byte 617) after # List of pipelines to be loaded by Logstash\n#\n# This document must be a list of dictionaries/hashes, where the keys/values are pipeline settings.\n# Default values for ommitted settings are read from the logstash.yml file.\n# When declaring multiple pipelines, each MUST have its own pipeline.id.\n#\n# Example of two pipelines:\n#\n# - pipeline.id: test\n#   pipeline.workers: 1\n#   pipeline.batch.size: 1\n#   config.string: "input { generator {} } filter { sleep { time => 1 } } output { stdout { codec => dots } }"\n# - pipeline.id: another_test\n#   queue.type: persisted\n#   path.config: "/tmp/logstash/*.config"\n#\n", :backtrace=>["D:/ELK/logstash-6.4.2/logstash-core/lib/logstash/compiler.rb:41:in compile_imperative'", "D:/ELK/logstash-6.4.2/logstash-core/lib/logstash/compiler.rb:49:incompile_graph'", "D:/ELK/logstash-6.4.2/logstash-core/lib/logstash/compiler.rb:11:in block in compile_sources'", "org/jruby/RubyArray.java:2486:inmap'", "D:/ELK/logstash-6.4.2/logstash-core/lib/logstash/compiler.rb:10:in compile_sources'", "org/logstash/execution/AbstractPipelineExt.java:149:ininitialize'", "D:/ELK/logstash-6.4.2/logstash-core/lib/logstash/pipeline.rb:22:in initialize'", "D:/ELK/logstash-6.4.2/logstash-core/lib/logstash/pipeline.rb:90:ininitialize'", "D:/ELK/logstash-6.4.2/logstash-core/lib/logstash/pipeline_action/create.rb:38:in execute'", "D:/ELK/logstash-6.4.2/logstash-core/lib/logstash/agent.rb:309:inblock in converge_state'"]}