logstash概诉:
是一个数据采集、加工处理、以及传输的工具
特点:
所有类型的数据集中处理、不同模式和格式的数据的正常化、自定义日志格式的迅速扩展、为自定义数据源轻松添加插件
软件使用前注意:logstash使用Java开发、logstash没有默认配置文件需要手动配置、*需要在/usr/share/logstash目录下创建一个指向/etc/logstash的软链接。
- 手册地址:[https://www.elastic.co/guide/en/logstash/current/index.html] --插件手册地址!!
[root@logstash ~]# /usr/share/logstash/bin/logstash -----
[root@logstash ~]# dnf install -y logstash
[root@logstash ~]# ln -s /etc/logstash /usr/share/logstash/config
1)最简单,最基本的配置(3模块必须有)
[root@logstash ~]# vim /etc/logstash/conf.d/my.conf
input {
stdin {}
}
filter{
}
output{
stdout{}
}
[root@logstash ~]# /usr/share/logstash/bin/logstash
2)插件与调试格式
[root@logstash ~]# vim /etc/logstash/conf.d/my.conf
input {
stdin { codec => "json" }
}
filter{
}
output{
stdout{ codec => "rubydebug" }
}
[root@logstash ~]# /usr/share/logstash/bin/logstash
3)file插件应用 --指定书签文件(保存已读信息,第二次不会输出已读信息)
input {
file {
path => ["/tmp/a.log", "/tmp/b.log"]
}
}
。。。。。。。省略
----------------------------------------
input {
file {
path => ["/tmp/c.log"]
start_position => "beginning"
sincedb_path => "/var/lib/logstash/sincedb"
}
}
省略。。。。。。。
4)准备测试数据 ==》grok 插件(过滤信息)
正则表达式分组匹配格式: (?<名字>正则表达式) 正则表达式宏调用格式: %{宏名称:名字} 宏文件路径 : /usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-patterns-core-4.3.4/patterns
# 调试技巧:设置路径为 /dev/null 可以多次反复测试
[root@logstash ~]# vim /etc/logstash/conf.d/my.conf
input {
file {
path => ["/tmp/c.log"]
start_position => "beginning"
sincedb_path => "/dev/null"
}
}
使用宏格式化日志
filter{
grok {
match => { "message" => "%{HTTPD_COMBINEDLOG}" }
remove_field => ["message"]
}
}
5)elasticsearch 插件(用于连接elasticsearch数据库)
[root@logstash ~]# vim /etc/logstash/conf.d/my.conf
# input { 不做任何修改 }
# filter { 不做任何修改 }
output{
stdout{ codec => "rubydebug" }
elasticsearch {
hosts => ["es-0002:9200","es-0003:9200"]
index => "weblog-%{+YYYY.MM.dd}"
}
}
[root@logstash ~]# /usr/share/logstash/bin/logstash
访问页面,查看 Head 插件,验证数据写入 Elasticsearch 成功
标签:插件,部署,配置,share,logstash,usr,conf,root,Logstash
From: https://blog.51cto.com/u_16975976/11877910