Comments (2)
The short answer is that regular expressions and capturing (grok) is not cheap. It's possible that the slowdown is expected, but maybe not.
I see a lot of DATA uses in the parent ticket, and these can cause bad performance if used repeatedly throughout the pattern. The best way to achieve fast execution with grok is to as specific as possible with your patterns. DATA means .*
which matches "anything or nothing" and is the least specific possible. Recommend approaching your pattern with tighter specifics to see what can be done.
Since this is old/idle. I'm going to close it. Any future concerns I am happy to help address in a future ticket :)
from logstash-filter-grok.
As extended to this issue, I need some help to parse similar logs in best efficient way:
I am using 1.4.2 logstash
Log1:
- "-" 2ebb4b4d.51e4940e11a3d [27/Aug/2015:16:57:33 +0530] "POST /request/url HTTP/1.1" 200 399 "-" "Zend_Http_Client" "-; ssl=-" 1 1307568 "9.9.9.9" "differentdata"
Log2:
- "-" 2ebb4b4d.51e4940e11a3d [27/Aug/2015:16:57:33 +0530] "POST /request/url HTTP/1.1" 200 399 "-" "Zend_Http_Client" "-; ssl=-" 1 1307568 "9.9.9.9"
My parse grok filter is
grok {
break_on_match => false
patterns_dir => [ "/usr/local/infra/logstash/patterns" ]
match => [
"message" , "%{APACHE_ACCESS_LOG} %{QUOTEDSTRING:apache-cookie} %{NUMBER:seconds_delete} %{NUMBER:response-time-in-microsec} \"(?:%{IPORHOST:client-ip}|-)\"",
"message" , "%{APACHE_ACCESS_LOG} %{QUOTEDSTRING:apache-cookie} %{NUMBER:seconds_delete} %{NUMBER:response-time-in-microsec} \"(?:%{IPORHOST:client-ip}|-)\" %{QS:differentdata}"
]
remove_field => ["message","host","seconds_delete"]
}
I am sending output to elasticsearch and i am not seeing the "differentdata" field in elasticsearch. So there is no effect of the second pattern in grok. If I interchange the position of grok filter, Log1 output is not shown in elasticsearch.
So please help me with this.
from logstash-filter-grok.
Related Issues (20)
- Allow grok pattern to be passed in as a parameter HOT 3
- Memory leak on 5.x
- Ability to auto-sort match options by frequency of match HOT 1
- getting values as an array HOT 1
- remove_field not working HOT 2
- "Prefix" functionality for grok HOT 4
- Track number of failed matches when using multiple pattern per field
- Warn when patterns don't have anchors HOT 1
- Significant Performance Regression using Jruby Timeouts HOT 8
- Implement ECS-Compatibility Mode HOT 4
- Logstash pipeline to remove passwords from log data HOT 1
- Using event fileds in configuration options HOT 1
- pure ruby regexp <capture:int> coercion does not work
- captures with same name won't coerce properly
- Logstash for iis SMTP
- Incoherent behavior of field references with overwrite
- [Test Failure] Syslog grok tests are failing on Logstash 8.x
- Behaviour when pattern writes to same input field (without "overwrite" option) HOT 1
- Add property to limit backtracking
- Regression on grok is case of match failure HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from logstash-filter-grok.