摘要: 原创出处 https://peijie-sh.github.io 欢迎转载,保留摘要,谢谢!
日志分析组件3件套:
- E:
Elasticsearch是一个搜索引擎,基于Lucene,天然分布式,很容易水平扩展,屏蔽了复杂的分布式概念,对外提供RESTfulAPI。 - L:
Logstash用于收集日志,写入Elasticsearch。 - K:
Kibana是一个展示层,基于NodeJS,可以图标形式展示数据,界面简洁。
这3大组件,都可以在 这里 直接下载。
搭建安装步骤:
-
下载elasticsearch,解压后,运行
bin/elasticsearch -d,以守护进程形式启动,打开localhost:9200会返回json信息如下,说明启动成功。 -
下载Logstash,解压,在/bin/config下创建一个配置文件
vi logstash.conf。
input {
tcp {
host => "192.168.1.91" # 要监听的日志来源地址
port => 4567
mode => "server"
}
}
output {
stdout{ codec => rubydebug }
elasticsearch {
hosts => ["192.168.1.91:9200"] # elasticsearch中配置的host地址
}
}
- 指定配置文件并后台启动:
bin/logstash -f logstash.conf &。 - 在你的应用程序中配置日志输出到
Logstash,比如Logback.xml- 引入logstash-logback-encoder:
compile group: 'net.logstash.logback', name: 'logstash-logback-encoder', version: '4.11' - 配置logback.xml
- 引入logstash-logback-encoder:
<appender name="stash" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
<destination>192.168.1.91:4567</destination>
<!-- encoder is required -->
<encoder class="net.logstash.logback.encoder.LogstashEncoder"/>
</appender>
<root level="DEBUG">
<appender-ref ref="stdout"/>
<appender-ref ref="fileout"/>
<appender-ref ref="stash"/>
</root>
- 下载Kibana,解压后启动:
bin/kibana &,打开localhost:5601即可。
注意事项
- 在安装Elasticsearch的时候,配置文件中我们把network.host改为0.0.0.0允许远程访问后,启动会报错,请按照 如下操作,放开linux的系统限制。
- Elasticsearch入门参考手册