diff --git a/dockerfiles/logstash/configs/bwi.conf b/dockerfiles/logstash/configs/bwi.conf index 6d6d733..bc14a7e 100644 --- a/dockerfiles/logstash/configs/bwi.conf +++ b/dockerfiles/logstash/configs/bwi.conf @@ -9,7 +9,7 @@ input { # } file{ type => syslog - path => "/data/*" + path => "/config/*" start_position => "beginning" } } @@ -70,25 +70,35 @@ filter { } geoip { source => "mwg[dst]" - target => "mwg[dst_geo]" } - # geoip { - # source => "mwg[src]" - # target => "mwg[src_geo]" - # } - #url aufteilen nach subdomain.domain.tld + grok { - match => { "mwg[url]" => "%{URIPROTO:mwg[urlparsed][proto]}://(?[^/]+)\.(?[^/.]+)\.(?[^/.]+)" } + match => { "mwg[url]" => "%{URIPROTO:mwg[parsedurl][protocol]}://(?[^/]+)(/(?[^?]+)(\?%{GREEDYDATA:mwg[parsedurl][parameters]})?)?" } + } + grok { + match => { "mwg[parsedurl][host]" => "((?[^/]+)\.)?(?[^/.]+)\.(?[^/.]+)" } } + if [mwg.parsedurl.domain] == "google"{ + grok { + match => { "mwg[parsedurl][parameters]" => "(?q=[^&]+)" } + } + } + + # parsing von allen url parameter macht probleme weil zu viele + # kv { + # source => "mwg[parsedurl][parameters]" + # field_split => "&" + # target => "mwg[parsedurl][parsedparameters]" + # } - # mutate { - # split => { "syslog_message" => "|" } - # } } } output { - elasticsearch { hosts => ["elasticsearch:9200"] } - # stdout { codec => rubydebug } +# elasticsearch { +# hosts => ["elasticsearch:9200"] +# index => "logstash-bwi-casenr" +# } + stdout { codec => rubydebug } }