## ELK日志分析平台-logstash搭建
本文住要讲解logstash搭建和配置的过程,文章采用的win平台,Linux搭建过程可以百度,基本跟win是一样的。
*****
1. 准备
:-: 首先需要下载ELK的三大套件,Elasticsearch、kibana、logstash[官方地址](https://www.elastic.co/cn/downloads/)。但是由于官方地址下载太慢,所以可以使用国内的镜像去下载。[华为镜像](https://mirrors.huaweicloud.com/)
2. 搭建
本文作者的版本选择的7.6.0版本,太高版本的变的太复杂,所以就没选择高版本的。
![](https://img.kancloud.cn/94/82/948246808ade7a7dd3f4731a309b0617_676x326.png)
* 解压elasticsearch、kibana、logstash的zip。
* 修改Kibana的配置(config/Kibana.yml)
![](https://img.kancloud.cn/28/9f/289f5d881da517d90e197bf776b4004f_899x633.png)
配置自己的elasticsearch IP地址。
* logstash添加elasticsearch和索引配置(config/logstash.conf)
解压出来的是没有这个logstash.conf文件的。需要自己去添加。
粘贴下边的代码:
```
input {
tcp {
mode => "server"
host => "localhost"
port => 4560
codec => json_lines
}
}
output {
elasticsearch {
hosts => "localhost:9200"
index => "spark-logstash-%{+YYYY.MM.dd}"
}
}
```
* 启动elasticsearch
![](https://img.kancloud.cn/d0/45/d04529e03e3a3500a185137da5c97313_698x444.png)
* 启动kibana
![](https://img.kancloud.cn/c6/ee/c6ee2624d1d3a6d3d11c63f4fe76e9dd_620x346.png)
* 启动logstash 使用命令启动
.\logstash.bat -f ..\config\logstash.conf
![](https://img.kancloud.cn/93/8c/938c7492181ac387049dcd635e2370f0_691x115.png)
3. 配置
* 项目中配置
在bootstrap.yml 添加 logstash 服务器地址
![](https://img.kancloud.cn/04/cc/04cc1ae986229f10f2403ac147e42e99_552x523.png)
在日志logback-spring.xml 中添加logstash配置
![](https://img.kancloud.cn/4e/f4/4ef4a2505d863c89a569e90db368b989_777x474.png)
![](https://img.kancloud.cn/79/5d/795d4fa87d3ff21298730bf1009dae42_782x622.png)
代码如下
```
~~~
<!-- logstash日志收集系统 -->
<appender name="LOGSTASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
<!--配置logStash 服务地址-->
<destination>${logstashService}</destination>
<!-- 日志输出编码 -->
<encoder charset="UTF-8" class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
<providers>
<timestamp>
<timeZone>UTC</timeZone>
</timestamp>
<pattern>
<pattern>
{
"logLevel": "%level",
"serviceName": "${spring.application.name:-}",
"pid": "${PID:-}",
"thread": "%thread",
"class": "%logger{40}",
"rest": "%message"
}
</pattern>
</pattern>
</providers>
</encoder>
</appender>
~~~
```
![](https://img.kancloud.cn/8e/96/8e9673e4cd3de3835360962bccd7edc6_668x460.png)
* kibana中配置
![](https://img.kancloud.cn/22/c9/22c9f733c1bfa69dec67ebe337f34405_1920x895.png)
![](https://img.kancloud.cn/d7/6b/d76b6ffdb74376467fb6c065a2574d62_1740x791.png)
如果输入没有这个索引,就是你的logstash 服务器搭建的有问题,自行检查配置。
![](https://img.kancloud.cn/d4/62/d4626e8c7ee707322a901512db1ba700_1909x909.png)
**如果是Linux一定要注意ip地址不能错误。如果你有其他的需求,请自定百度找conf中的配置**