返回
filebeat使用module收集mysql慢查询日志(十一)
后端
2023-10-03 09:04:21
简介
filebeat是一个轻量级的日志收集工具,可以将日志从各种来源收集到Elasticsearch或Logstash中。filebeat的mysql module可以收集mysql的慢查询日志,并将它们发送到Elasticsearch或Logstash中。
配置filebeat的mysql module
要配置filebeat的mysql module,您需要在filebeat的配置文件中添加以下内容:
- type: mysql
enabled: true
hosts: ["localhost:3306"]
username: "root"
password: "password"
database: "mysql"
query: "SELECT * FROM mysql.slow_log WHERE time_ms > 1000"
period: 10s
type
:指定日志的类型,这里是mysql
。enabled
:是否启用该模块,这里设置为true
。hosts
:要连接的mysql服务器的地址,这里设置为localhost:3306
。username
:要连接mysql服务器的用户名,这里设置为root
。password
:要连接mysql服务器的密码,这里设置为password
。database
:要收集慢查询日志的数据库,这里设置为mysql
。query
:要执行的查询,这里设置为SELECT * FROM mysql.slow_log WHERE time_ms > 1000
,该查询将收集所有执行时间超过1秒的慢查询日志。period
:查询的时间间隔,这里设置为10s
,表示每10秒执行一次查询。
将收集到的日志发送到Elasticsearch或Logstash
要将收集到的日志发送到Elasticsearch或Logstash,您需要在filebeat的配置文件中添加以下内容:
output.elasticsearch:
hosts: ["localhost:9200"]
output.logstash:
hosts: ["localhost:5044"]
output.elasticsearch.hosts
:Elasticsearch的地址,这里设置为localhost:9200
。output.logstash.hosts
:Logstash的地址,这里设置为localhost:5044
。
启动filebeat
配置好filebeat的配置文件后,就可以启动filebeat了。您可以使用以下命令来启动filebeat:
sudo service filebeat start
验证
启动filebeat后,您就可以在Elasticsearch或Logstash中看到收集到的mysql慢查询日志了。
总结
在本文中,我们学习了如何使用filebeat的mysql module来收集mysql的慢查询日志。我们介绍了如何配置filebeat的mysql module,以及如何将收集到的日志发送到Elasticsearch或Logstash。希望本文对您有所帮助。