Filebeat內置了很多的模塊,能夠直接使用他們對日誌進行收集,支持的模塊以下:html
[root@ELK-chaofeng07 logstash]# filebeat modules list Enabled: mysql Disabled: apache2 auditd elasticsearch haproxy icinga iis kafka kibana logstash mongodb nginx osquery postgresql redis suricata system traefik
只要是上面出現的filebeat都是支持的,可是使用它以前須要設置一下才可使用,好比:mysql
filebeat modules enable mysql
那此次咱們來看看如何使用mysql模塊收集mysql的慢查詢日誌和錯誤日誌nginx
一、首先是使filebeat支持mysql模塊redis
filebeat modules enable mysql
二、在配置文件/etc/filebeat/filebeat.yml啓用輸出到elasticsearch和kibana的功能。sql
設置完成後保存就能夠了。此外,你的kibana和elasticsearch集羣須要正常運行才能進行下一步。mongodb
三、開始準備預約義環境apache
filebeat setup -e
若是最後報錯了,那麼須要根據狀況進行修復。elasticsearch
四、在配置文件/etc/filebeat/modules.d/mysql.yml進行設置。ide
五、上面的完成後基本就差很少了,此時咱們能夠啓動filebeat服務了。post
若是說你啓動的時候報以下錯誤,說明你的filebeat.yml配置文件中有多個output輸出源,此時你須要把其餘的output都註釋掉才行,只留一個源輸出到elasticsearch便可。
Exiting: Template loading requested but the Elasticsearch output is not configured/enabled
六、此後你會在elasticsearch集羣中看到這個索引:
七、接下來就是到kibana界面,在這裏,你不須要事先建立索引等等操做,直接點擊dashboard界面選擇mysql便可,好比:
最後你使用幾個慢查詢語句以及插入一些錯誤日誌到執行的日誌文件中看一下效果:
就這樣子就完成了。
本篇實踐是我參考官網的文檔來作的,詳情連接是:https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-module-mysql.html#mysql-settings
總結:我以爲上面的這種方式並不能普及使用,由於這缺乏logstash過濾的一步,這樣子咱們就不能很好的使用聚合等圖形。此外沒有broker,會形成大量輸出到elasticsearch致使阻塞。個人方案是使用logstash過濾加上內置的自定義模塊比較好。