[英]Filter syslog message with logstash grok filter
我有以下通過syslog輸入發送到logstash的日志(日志來自通過logspout發送到logstash的docker容器)
因此,在以下日志示例中, 第一行是php-fpm錯誤 , 第二行是nginx訪問日志
docker-nginx-php-composer|2015/03/17 16:31:28 [error] 9#0: *41 FastCGI sent in stderr: "PHP message: PHP Fatal error: Call to undefined function teetstst() in /var/www/index.php on line 3" while reading response header from upstream, client: 10.10.37.110, server: _, request: "GET /favicon.ico HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "turing:49213"
docker-nginx-php-composer|10.10.37.110 - - [17/Mar/2015:16:31:28 +0100] "GET /favicon.ico HTTP/1.1" 200 134 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.89 Safari/537.36"
```
好的,所以現在我想過濾所有這些混亂的東西,以便例如可以“標記” PHP-FPM日志或僅過濾PHP-FPM的警告和錯誤...
我想我必須使用grok
從logstash過濾器,但我完全不知道怎么樣?
假設我只想過濾PHP錯誤,在上面放一個“ php”標簽,還可以過濾nginx的404和500錯誤,如何用logstash / grok輕松實現呢?
有什么線索嗎? 例子 ?
謝謝 :)
我將定義兩個grok模式:
您可以根據需要在每個grok {}中添加add_tag。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.