<aside> 💡 这里使用docker部署
</aside>
docker pull logstash:6.5.0
创建映射目录
mkdir /Users/huajiejun/projects/logstash/config
mkdir /Users/huajiejun/projects/logstash/pipeline
config下创建配置文件 logstash.yml和piplelines.yml
config:
reload:
**** automatic: true
interval: 3s
xpack:
management.enabled: false
monitoring.enabled: false

- pipeline.id: logstash_dev
path.config: "/usr/share/logstash/pipeline/logstash_dev.conf"
pipeline下创建配置logstash_dev.conf
input {
tcp {
mode => "server"
host => "0.0.0.0"
port => 5047
codec => json_lines
}
}
filter{
}
output {
elasticsearch {
hosts => ["192.168.150.130:9200"]
index => "logstash-dev-%{+YYYY.MM.dd}"
}
stdout { codec => rubydebug }
}

docker run -d -it --privileged=true --name=logstash -p 5047:5047 -p 9600:9600 -v /home/software/logstash/pipeline:/usr/share/logstash/pipeline -v /home/software/logstash/config:/usr/share/logstash/config logstash:6.5.0
<!-- logstash -->
<dependency>
<groupId>net.logstash.logback</groupId>
<artifactId>logstash-logback-encoder</artifactId>
</dependency>
<appender name="LOG_STASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
<destination>127.0.0.1:5047</destination>
<queueSize>1048576</queueSize>
<encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder" />
</appender>
<!--指定最基础的日志输出级别-->
<root level="INFO">
<!--appender将会添加到这个loger-->
<appender-ref ref="fileLog"/>
<appender-ref ref="STDOUT"/>
<appender-ref ref="LOG_STASH"/>
</root>