ELK logstash 处理mongodb日志

不同mongodb版本的日志格式不同,这个需要看mongodb官方对日志格式的定义,在处理前自己去做好这方面的功课。还有就是,要抓取自己感兴趣的内容,这个根据各自的需求来做,没有千篇一律的,全凭各自喜好。

grok预定义的正则匹配规则可以参考 https://github.com/logstash-plugins/logstash-patterns-core/tree/master/patterns  可以把这些文件全部下载下来放到patterns目录下,随时调用。同时,你如果安装了logstash会在这个目录下有一系列自带的正则/opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-patterns-core-2.0.2/patterns,不同安装方式可能目录有别。

我这里使用版本信息如下:

  • elasticsearch 2.2.0
  • logstash 2.2.2
  • kibana 4.4.0
  • mongodb 3.2.0
  • filebeat 1.1.1

mongodb 日志格式

详细请参考 https://docs.mongodb.org/manual/reference/log-messages/#log-message-components

从3.0版本开始,mongodb日志内容包含severity level和component。

如:

 

timestamp

时间戳默认使用iso8601-local

severity level

Level Description
F Fatal
E Error
W Warning
I Informational, for Verbosity Level of 0
D Debug, for All Verbosity Levels > 0

compoent

Item Description
ACCESS 消息涉及到访问控制相关的,如验证。
COMMAND 消息涉及到数据库命令相关的,如count。
CONTROL 消息涉及到活动控制相关的,如 initialization。
GEO 消息涉及到空间地理解析相关的,如 verifying the GeoJSON shapes。
INDEX 消息涉及到索引操作相关的,如创建索引。
NETWORK 消息涉及到网络活动相关的,如接收连接。
QUERY 消息涉及到查询相关的,包含查询规划活动状况。
REPL 消息涉及到复制集相关的,如 initial sync and heartbeats。
SHARDING 消息涉及到分片活动相关的,如 the startup of the mongos。
STORAGE 消息涉及到存储活动相关的,如processes involved in the fsync command。
JOURNAL 消息涉及到具体journaling 活动相关的。
WRITE 消息涉及到写操作,如update命令。
- 消息不与命名组件相关的。

filebeat配置

 

 

logstash配置

1. input配置

参见上一篇。

2. filter配置

 

 

3. output配置

 

 

logstash 标准输出结果

ELK logstash 处理mongodb日志_第1张图片

logstash-mongodb-log

kibana

ELK logstash 处理mongodb日志_第2张图片

logstash-mongodb-log-kibana<div class="iteye-blog-content-contain" style="font-size: 14px"></div>

 

你可能感兴趣的:(mongodb,ELK,ELK)