ELK logstash 处理mongodb日志(27th)

  • A+
所属分类:ELK
又拍云upyun

上一篇是处理MySQL的慢查询日志的,其实,ELK内容就这么多,很有规律的说,一通百通,通一反万。下面说说对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 标准输出结果

check_mongodb

logstash-mongodb-log

kibana

check_mongodb

logstash-mongodb-log-kibana

weinxin
微信公众号
扫一扫关注运维生存时间公众号,获取最新技术文章~
默北

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: