ELK系列六:Logstash的Filter模块
Date过滤
input {
stdin{
codec => plain
}
}
filter {
date {
match => ["message", "yyyy-MM-dd HH:mm:ss"]
target => "@timestamp"
}
}
output{
stdout{
codec => rubydebug{
}
}
}
# target是覆盖写那个目标字段
# match 是匹配什么样子的
# 注意时区的时差
正在表达式grok
input {
stdin{
codec => plain
}
}
filter {
grok {
match => {"message" => "\d\d\d\d\d\d"}
}
}
output{
stdout{
codec => rubydebug{
}
}
}
# 输出的数据类型转换(Number目前只支持float和int):
filter {
grok {
match => {
"message => "%{WORD} %{NUMBER:newdata:float} %{WORD}"
}
}
}
# 重写字段:
overwrite => ["message"]
input {
stdin{
codec => plain
}
}
filter {
grok {
match => {"message" => "%{WORD:message:text} %{NUMBER:data:float}"}
overwrite => ["message"]
}
}
output{
stdout{
codec => rubydebug{
}
}
}
GeoIP地址查询
filter {
geoip {
source => "message"
}
}
JSON编码
filter{
json {
source => "message"
target => "jsoncontent"
}
}
key-value切分
input {
stdin{
codec => plain
}
}
filter {
kv {
source => "message"
include_keys => ["name","ip","level"]
target => warnning
}
}
output{
stdout{
codec => rubydebug{
}
}
}
数据修改
#总格式
filter {
mutate {
...
}
}
#1、字符串处理
mudate {
gsub => ["xxx", "yyy","zzz"] #替换xxx字段中的yyy为zzz
split => ["xxx","yyy"] #把xxx字段按照yyy字符分割
join => ["xxx","yyy"] #把xxx字段按照yyy组装,之前分割的东西,用yyy作为分隔符,组装到一起
merge => ["xxx","yyy"] #合并xxx和yyy字段
strip => ["xxx"] #去掉xxx字段的前后空格
lowercase/uppercase => xxx #小写/大写
rename => ["xxx","yyy"] #xxx字段的名字换成yyy
update => ["xxx","xxx"] #更新字段,字段不存在不新建
replace => ["xxx","yyy"] #更新字段,字段不存在则新建
}
ELK系列六:Logstash的Filter模块的更多相关文章
- elk系列5之syslog的模块使用【转】
preface rsyslog是CentOs系统自带的的一个日志工具,那么我们就配置logstash来接受rsyslog的日志. logstash的syslog模块 linux-node2上操作log ...
- elk系列5之syslog的模块使用
preface rsyslog是CentOs系统自带的的一个日志工具,那么我们就配置logstash来接受rsyslog的日志. logstash的syslog模块 linux-node2上操作 lo ...
- ELK系列(5) - Logstash怎么分割字符串并添加新的字段到Elasticsearch
问题 有时候我们想要在Logstash里对收集到的日志等信息进行分割,并且将分割后的字符作为新的字符来index到Elasticsearch里.假定需求如下: Logstash收集到的日志字段mess ...
- ElasticSearch实战系列六: Logstash快速入门和实战
前言 本文主要介绍的是ELK日志系统中的Logstash快速入门和实战 ELK介绍 ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是 ...
- ElasticSearch实战系列七: Logstash实战使用-图文讲解
前言 在上一篇中我们介绍了Logstash快速入门,本文主要介绍的是ELK日志系统中的Logstash的实战使用.实战使用我打算从以下的几个场景来进行讲解. 时区问题解决方案 在我们使用logstas ...
- elk系列8之logstash+redis+es的架构来收集apache的日志【转】
preface logstash--> redis --> logstash --> es这套架构在讲究松耦合关系里面是最简单的,架构图如下: 解释下这个架构图的流程 首先前端log ...
- elk系列6之tcp模块的使用【转】
preface tcp模块的使用场景如下: 有一台服务器A只需要收集一个日志,那么我们就可以不需要在这服务器上安装logstash,我们通过在其他logstash上启用tcp模块,监听某个端口,然后我 ...
- elk系列2之multiline模块的使用【转】
preface 上回说道了elk的安装以及kibana的简单搜索语法,还有logstash的input,output的语法,但是我们在使用中发现了一个问题,我们知道,elk是每一行为一个事件,像Jav ...
- elk系列8之logstash+redis+es的架构来收集apache的日志
preface logstash--> redis --> logstash --> es这套架构在讲究松耦合关系里面是最简单的, 架构图如下: 解释下这个架构图的流程 首先前端lo ...
随机推荐
- @Mock与@InjectMocks的区别
@Mock: 创建一个Mock. @InjectMocks: 创建一个实例,简单的说是这个Mock可以调用真实代码的方法,其余用@Mock(或@Spy)注解创建的mock将被注入到用该实例中. 注意: ...
- C# WORD操作实现代码(转载)
在当前项目开发过程中,客户有根据数据库数据生成WORD文档的需求,在和同事沟通的过程中,找到了两个解决方案 1.先通过程序生成报表样式的HTML页面,然后修改HTML页面的后缀名为DOC. 2.定制W ...
- 2 go语言的基础
include 内置关键字 注释方法 代码结构(常量,变量,接口,函数的定义) 导入包以及包别名 可见性规则 小练习 内置关键字(25个均为小写) break case chan const cont ...
- 企业IT管理说:全自动就一定是最好的吗?
现如今,企业基础设施变得越来越网络化.虚拟化并且愈加复杂,人们更愿意寻求自动化以期优化信息管理过程.毕竟,有谁不想要一个更为有效且迅速的法子来管控数据的安全.存储.应用性能监控以及IT的经济性?这不用 ...
- 解决webStorm没有cesium代码自动提示的方法
Webstorm中默认是没有cesium代码提示的,但是可以通过设置让它有智能提示 File -> Settings -> Languages&Frameworks -> J ...
- CDbConnection failed to open the DB connection: could not find driver错误的处理
在PHP.INI文件中extension=php_pdo_mysql.dll 去掉注释
- linux环境中iostat命令的安装,解决-bash: iostat: command not found问题
需求说明: 今天在测试环境的主机上,准备通过iostat来查看系统的io情况,发现没有该命令 [root@testvm Packages]# iostat -bash: iostat: command ...
- MySQL数据库辅助类
/** *创建人:CalvinR *说明:数据库辅助类 **/ namespace Study.Utilities.MySql_Connect { /// <summary> /// My ...
- AngularJS------命令行
如下:(‘$’符号不需要输入哦) $ ng build --发布项目
- php 自定义 分页函数
<?php /** * 分页函数 * @param type $num 数据总数 * @param type $perpage 每页总数 * @param type $curpage 当前分页 ...