- wget https://artifacts.elastic.co/downloads/logstash/logstash-6.4.1.tar.gz
- tar -xzvf logstash-6.4.1.tar.gz
- cp logstash-sample.conf syslog.conf
- vi syslog.conf
# 定义日志源
input {
syslog {
type => "system-syslog" # 定义类型
port => 10514 # 定义监听端口
}
}
# 定义日志输出
output {
stdout {
codec => rubydebug # 将日志输出到当前的终端上显示
}
}
- 验证配置文件
./logstash --path.settings /opt/logstash6.4.1/logstash-6.4.1/config/ -f /opt/logstash6.4.1/logstash-6.4.1/config/syslog.conf --config.test_and_exit
看到Configuration OK则无问题
6. 配置服务器的ip以及配置的监听端口
vim /etc/rsyslog.conf
添加下面内容
#### RULES ####
*.* @@192.168.1.10:10514
- 重启rsyslog,让配置生效
systemctl restart rsyslog - 指定配置文件,启动logstash
./logstash --path.settings /opt/logstash6.4.1/logstash-6.4.1/config/ -f /opt/logstash6.4.1/logstash-6.4.1/config/syslog.conf
- 打开新终端检查一下10514端口是否已被监听
netstat -lntp |grep 10514 - 然后在别的机器ssh登录到这台机器上,测试一下有没有日志输出
输出日志到 Elasticsearch
- vi config/syslog.conf
- 修改输出源
input {
syslog {
type => "system-syslog"
port => 10514
}
}
output {
elasticsearch {
hosts => ["192.168.0.514:9200"] # 定义es服务器的ip
index => "system-syslog-%{+YYYY.MM}" # 定义索引
}
}
- 验证配置,如上第5步。
- 启动,如上第8步。
- vi config/logstash.yml
修改 http.host: “192.168.1.10” - 重启logstash
- curl ‘192.168.1.10:9200/_cat/indices?v’
- curl -XGET ‘192.168.1.10:9200/system-syslog-2020.09?pretty’