ELK系统搭建并与spring boot集成
一、ELK含义及其作用:
我们知道如果一旦使用spring boo启动jar包的话,启动时一般会使用nohup方式启动,而这种方式通常会将日志放到.out文件中,而当.out文件过大时,查看日志就非常麻烦了,那么一般我们会使用ELK系统将日志存储在Elasticsearch中,ELK为以下三者单词首字母,除了有ELK还有EFK。这里主要介绍ELK日志系统的搭建
- Elasticsearch:用于存储收集到的日志信息;
- Logstash:用于收集日志,SpringBoot应用整合了Logstash以后会把日志发送给ogstash,Logstash再把日志转发给Elasticsearch;
- Kibana:通过Web端的可视化界面来查看日志。
二、开始搭建:
-
使用liunx,创建目录
mkdir /usr/local/docker/elk -
创建
docker-compose.yml文件 -
编辑docker-compose.yml文件
version: '3' services: elasticsearch: image: elasticsearch:7.7.0 container_name: elasticsearch environment: - "cluster.name=elasticsearch" #设置集群名称为elasticsearch - "discovery.type=single-node" #以单一节点模式启动 - "ES_JAVA_OPTS=-Xms512m -Xmx512m" #设置使用jvm内存大小 volumes: - /usr/local/docker/elk/elasticsearch/plugins:/usr/share/elasticsearch/plugins #插件文件挂载 - /usr/local/docker/elk/elasticsearch/data:/usr/share/elasticsearch/data #数据文件挂载 ports: - 9200:9200 kibana: image: kibana:7.7.0 container_name: kibana depends_on: - elasticsearch #kibana在elasticsearch启动之后再启动 environment: - ELASTICSEARCH_URL=http://elasticsearch:9200 #设置访问elasticsearch的地址 ports: - 5601:5601 logstash: image: logstash:7.7.0 container_name: logstash volumes: - /usr/local/docker/elk/logstash/logstash

浙公网安备 33010602011771号