可以到es中文官方下载:logstash-7.14.0-linux-x86_64.tar.gz
转:https://blog.csdn.net/codepeter/article/details/108126725
Logstash Hello world
第一个示例Logstash将采用标准输入和标准输出作为input和output,并且不指定filter
(1)下载Logstash并解压(需要预先安装JDK8)
tar xzvf logstash.5.2.2.tar.gz
(2)cd到Logstash的根目录,并执行启动命令如下:
cd logstash-5.2.2
bin/logstash -e 'input { stdin { } } output { stdout {} }'
(3)此时Logstash已经启动成功,-e表示在启动时直接指定pipeline配置,当然也可以将该配置写入一个配置文件中,然后通过指定配置文件来启动
(4)在控制台输入:hello world,可以看到如下输出:
Logstash会自动为数据添加@version, host, @timestamp等字段
在这个示例中Logstash从标准输入中获得数据,仅在数据中添加一些简单字段后将其输出到标准输出。
logstash连接kafka和es
cd logstash-5.2.2
mkdir conf
vi conf/kafka-es.conf
input{kafka {bootstrap_servers => ["192.168.2.176:9092"]group_id => "hhpleasant" topics => ["test1"]consumer_threads => 5 decorate_events => truecodec => "json"auto_offset_reset => "latest"
}}
filter {ruby {code => "event.timestamp.time.localtime" //修正时间}
}
output{elasticsearch{action=> "index"index => "%{[type]}"hosts => "192.168.2.176:9200"}stdout{codec => rubydebug}
}
标准输入可以:
input{stdin { } }
filter {ruby {code => "event.timestamp.time.localtime" //修正时间}
}
output{elasticsearch{action=> "index"index => "%{[type]}"hosts => "192.168.2.176:9200"}stdout{codec => rubydebug}
}
启动logstash
bin/logstash -f conf/kafka-es.conf