We are currently testing out logstash, elastic search, kibana and filebeat to log some IIS log files, each thing can talk to each other correctly but when processing the logs in logstash to send to elastic search we get this error
"CircuitBreaker::rescuing exceptions {:name=>"Beats input", :exception=>LogStash::Inputs::Beats::InsertingToQueueTakeTooLong, :level=>:warn}
Beats input: The circuit breaker has detected a slowdown or stall in the pipeline, the input is closing the current connection and rejecting new connection until the pipeline recover. {:exception=>LogStash::Inputs::BeatsSupport::CircuitBreaker::HalfOpenBreaker, :level=>:warn}"
"Beats input: the pipeline is blocked, temporary refusing new connection. {:reconnect_backoff_sleep=>0.5, :level=>:warn}"
Some logs are processed, but we keep getting this error.
We are using centos 6.7 on two hyper-v VM's, elastic search on one VM, with kibana and logstash on another. We have filebeat installed on the IIS 2012 r2 server.
The elastic search vm has 2 cores and 4096 RAM, logstash VM has 2048 RAM and 2 cores, the logs we are testing are only around 1MB in size with 6 log files in total.
Without a grok filter put in place there is no errors and logstash flies through the logs.
The grok filter is:
"filter{
if [message] =~ "^#" {
drop {}
}
if [type] == "filebeat iss log server name"{
grok {
match => ["message", "%{TIMESTAMP_ISO8601:log_timestamp}%{SPACE}%{IPV4:host}%{SPACE}%{WORD:method}%{SPACE}%{PATH:apppath}%{SPACE}%{NOTSPACE:query}%{SPACE}%{NUMBER:port}%{SPACE}%{NOTSPACE}%{SPACE}%{IPV4:client}%{SPACE}%{NOTSPACE:useragent}%{SPACE}%{URI:referer}%{SPACE}%{NUMBER:status}%{SPACE}%{NUMBER}%{SPACE}%{NUMBER}%{SPACE}%{NUMBER:timetaken}"]
}
date{
match => ["log_timestamp", "YYYY-MM-dd HH:mm:ss"]
timezone => ["Europe/London"]}
}
}"
Any ideas on how to improve so all the logs are processed?
Can provide yml and conf files if needed