File input - Windows style paths not supported

Description

When using the file and trying to get all files in C:\myfolder, the following setup will not work.

input {
file {
...
path => "C:\\myfolder
*.log"
...
}
}

The issue seems to come from the use of Dir#glob - https://github.com/jordansissel/ruby-filewatch/blob/master/lib/filewatch/watch.rb#L115

When using Dir.glob, \ is treated as a special character for escaping - http://en.wikipedia.org/wiki/Glob_(programming)#Syntax. The path entered into Logstash appears to be handed in unadultered to FileWatch::Watch, so the Dir.glob call fails to find any results.

The easy fix is to change all paths to unix style, so instead of C:\\myfolder
.log it becomes C:/myfolder/.log (which I like more anyway ). However for a Windows user this would be pretty confusing and there is no indication that the file path is wrong.

Environment

None

Status

Assignee

Logstash Developers

Reporter

JP Camara

Labels

Fix versions

Affects versions

Priority

Configure