温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

通过使用filebeat收集mysql慢查询日志详细步骤

发布时间:2020-05-13 15:14:05 来源:亿速云 阅读:1421 作者:三月 栏目:MySQL数据库

下文主要给大家带来通过使用filebeat收集mysql慢查询日志详细步骤,希望这些内容能够带给大家实际用处,这也是我编辑通过使用filebeat收集mysql慢查询日志详细步骤这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。

环境介绍:
操作系统版本:CentOS Linux release 7.3.1611 (Core) 64bit
Mysql版本: 5.6.28
Logstash版本: logstash 5.3.0
Elasticsearch版本:elasticsearch 5.3.0
Kibana版本:Kibana 5.3.0
Java版本:1.8.0_121

Mysql版本: 5.6.28及mysql慢日志

[bash]# Time: 170420 1:41:04
# User@Host: root[root] @ [192.168.1.178] Id: 2238895756
# Query_time: 3.887598 Lock_time: 0.000099 Rows_sent: 19 Rows_examined: 19
SET timestamp=1492623664;
select * from users_test;
# User@Host: root[root] @ [192.168.1.178] Id: 2238895828
# Query_time: 3.161184 Lock_time: 0.000150 Rows_sent: 28 Rows_examined: 28
SET timestamp=1492623664;
select * from users_test;
# Time: 170420 1:41:12[/bash]

filebeat及logstash配置

filebeat.yml配置文件

[bash]filebeat:
prospectors:
-
paths:
- /data/mysql/xxx-slow.log
document_type: mysqlslow
multiline:
pattern: "^# User@Host: "
negate: true
match: after
registry_file: /var/lib/filebeat/registry
output:
logstash:
hosts: ["192.168.1.63:5044"][/bash]

logstash.conf

[bash]input {
beats {
port => 5044
}
}
filter {

grok {
match => [ "message", "(?m)^# User@Host: %{USER:query_user}\[[^\]]+\] @ (?:(?<query_host>\S*) )?\[(?:%{IP:query_ip})?\]\s*Id: %{NUMBER:id:int}\s+# Query_time: %{NUMBER:query_time:float}\s+Lock_time: %{NUMBER:lock_time:float}\s+Rows_sent: %{NUMBER:rows_sent:int}\s+Rows_examined: %{NUMBER:rows_examined:int}\s*(?:use %{DATA:database};\s*)?SET timestamp=%{NUMBER:timestamp};\s*(?<query>(?<action>\w+)\s+.*)" ]
}
grok {
match => { "message" => "# Time: " }
add_tag => [ "drop" ]
tag_on_failure =>[]
}
if "drop" in [tags] {
drop {}
}
date {
match => [ "timestamp", "UNIX", "YYYY-MM-dd HH:mm:ss"]
remove_field => [ "timestamp" ]
}

}
output {
elasticsearch {
hosts => "192.168.1.63:9200"
manage_template => false
index => "%{[@metadata][beat]}-%{[type]}-%{+YYYY.MM.dd}"
document_type => "%{[@metadata][type]}"
}
}[/bash]

对于以上关于通过使用filebeat收集mysql慢查询日志详细步骤,大家是不是觉得非常有帮助。如果需要了解更多内容,请继续关注我们的行业资讯,相信你会喜欢上这些内容的。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI