前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Logstash 处理 Mongod Log6

Logstash 处理 Mongod Log6

作者头像
franket
发布2022-01-19 11:27:47
4990
发布2022-01-19 11:27:47
举报
文章被收录于专栏:技术杂记

output

代码语言:javascript
复制
output {
  elasticsearch { 
  	hosts => ["localhost:9200"] 
        index=>"mongodb-slow-log-%{+YYYY.MM.dd}"
	}
  stdout { codec => rubydebug }
}

Item

Comment

output {

框定出口的定义范围

elasticsearch {

定义了一个出口,使用 elasticsearch 插件来进行输出,将结果输出到ES中

hosts => ["localhost:9200"]

指定es的目标地址为 localhost:9200

index=>"mongodb-slow-log-%{+YYYY.MM.dd}"

指定存到哪个index,如不指定,默认为logstash-%{+YYYY.MM.dd}

stdout { codec => rubydebug }

定义了一个出口,使用 stdout 插件将信息输出到标准输,也就是终端,并且使用 rubydebug 插件处理过后进行展示,也就是行成jason格式 (生产不会这样配置,一般用来进行交互调试)


正则

%{TIMESTAMP_ISO8601:timestamp}\s+%{MONGO3_SEVERITY:severity}\s+%{MONGO3_COMPONENT:component}%{SPACE}(?:\[%{DATA:context}\])?\s+%{GREEDYDATA:body}

Item

Comment

%{TIMESTAMP_ISO8601:timestamp}

将匹配 TIMESTAMP_ISO8601 模式的结果放到 timestamp 中

\s+

匹配一个或多个空字符

(?:\[%{DATA:context}\])?

内容可能有,也可能无,如果有,以 [ 开头,且以 ] 结尾,中间的任何内容放到 context 中

Tip: 可以参考 mongodb patterns 中的匹配设置 ,MONGO3_LOG %{TIMESTAMP_ISO8601:timestamp} %{MONGO3_SEVERITY:severity} %{MONGO3_COMPONENT:component}%{SPACE}(?:\[%{DATA:context}\])? %{GREEDYDATA:message} ,我将最后的部分存入了body,不然会存到原来的 message 字段中, 使message变成一个列表,内容变成 message中的第二个元素,然后将空格替换成了 \s+ ,这样会更消耗计算资源,但是更严谨

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • output
  • 正则
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档