Thank you for that - after reviewing your configuration file I couldn't find any obvious problems.
I performed a test on my test server using the following per-instance config:
Code: Select all
file {
path => [
"/tmp/apache/*"
]
type => "apache"
tags => "Apache-DMZ"
}
if [type] == "apache" {
grok {
match => [ 'message', '%{IP:src_IP}, %{COMBINEDAPACHELOG}',
'message', '%{COMBINEDAPACHELOG}' ]
}
date {
match => [ 'timestamp', 'dd/MMM/yyyy:HH:mm:ss Z' ]
}
}
This worked perfectly. I then added another path:
Code: Select all
file {
path => [
"/tmp/apache/*",
"/tmp/apache2/*"
]
type => "apache"
tags => "Apache-DMZ"
}
if [type] == "apache" {
grok {
match => [ 'message', '%{IP:src_IP}, %{COMBINEDAPACHELOG}',
'message', '%{COMBINEDAPACHELOG}' ]
}
date {
match => [ 'timestamp', 'dd/MMM/yyyy:HH:mm:ss Z' ]
}
}
This also worked well, this implies to me that the configuration itself is working, but there's something with your system in particular that's preventing the filter from being parsed.
Are you certain that the contents of the log files weren't dumped _before_ the filter was in place?
I would like to see a small portion of one of the log files you are processing.
{:timestamp=>"2015-12-18T08:11:49.867000-0800", :message=>"Got error to send bulk of actions: None of the configured nodes are available: []", :level=>:error}
I do not think that this is related.