springcloud+docker+elk搭建日志分析系统
2020-06-05 07:41
239 查看
springcloud+docker+elk搭建日志分析系统
elk架构
搭建步骤
-
创建对应配置文件(注:编排文件与logstash和kibana在同一文件夹下)
-
logstash.conf配置
input { tcp { mode => "server" #接收服务发送过来的日志端口 port => 5000 codec => json_lines } } output { elasticsearch { hosts => ["elasticsearch:9200"] action => "index" #索引 kibana创建索引时使用 index => "piclog-%{+YYYY.MM.dd}" } stdout { codec => rubydebug } }
- kibana.yml配置
## Default Kibana configuration from Kibana base image. ## https://github.com/elastic/kibana/blob/master/src/dev/build/tasks/os_packages/docker_generator/templates/kibana_yml.template.js # server.name: kibana.example.org server.host: "0" elasticsearch.hosts: [ "http://elasticsearch:9200" ] xpack.monitoring.ui.container.elasticsearch.enabled: true #配置kibana界面汉化 i18n.locale: "zh-CN"
- elk编排docker-compose.yml配置
version: '3.1' services: elasticsearch: image: elasticsearch:7.5.1 environment: discovery.type: single-node ports: - 9200:9200 - 9300:9300 networks: - elk kibana: image: kibana:7.5.1 volumes: - ./kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml ports: - 5601:5601 networks: - elk depends_on: - elasticsearch logstash: image: logstash:7.5.1 environment: XPACK_MONITORING_ENABLED: "false" XPACK_MONITORING_ELASTICSEARCH_HOSTS: http://elasticsearch:9200 volumes: - ./logstash/conf:/usr/share/logstash/pipeline ports: - 5000:5000 networks: - elk depends_on: - elasticsearch networks: elk: driver: bridge
- 进入docker-compose.yml所在包下执行docker-compose up -d 开始部署
- 服务中配置发送日志到logstash
加入logback依赖
<dependency> <groupId>net.logstash.logback</groupId> <artifactId>logstash-logback-encoder</artifactId> <version>5.1</version> </dependency>
创建logback-spring.xml (这里使用logback.xml也可以但是logback.xml加载比application的配置文件快所以无法读取配置文件的配置,这里建议使用logback-spring.xml方便读取application配置)
<?xml version="1.0" encoding="UTF-8"?> <configuration debug="false" scan="true" scanPeriod="1 seconds"> <springProperty scope="context" name="applicationName" source="spring.application.name" defaultValue=""/> <include resource="org/springframework/boot/logging/logback/base.xml" /> <appender name="stash" class="net.logstash.logback.appender.LogstashTcpSocketAppender"> <destination>logstash服务地址:5000</destination> <!-- encoder必须配置,有多种可选 --> <encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder" /> </appender> <root level="info"> <appender-ref ref="stash" /> </root> </configuration>
配置文件application.yml中加载logback-spring.xml配置(如果是logback.xml则不需要)
logging: config: classpath:logback-spring.xml
到此全部搭建完毕
使用
-
启动配置好的服务,加载日志数据到Elasticsearch中 也可以后面启动,但如果不启动kibana会找不到日志索引
-
打开kibana图形界面 kibana服务器地址:5601
-
kiana如果要查看需创建索引模式
相关文章推荐
- 基于docker 搭建elk日志分析系统
- 快速使用docker搭建ELK日志分析系统
- Docker 入门到实战教程(十二)ELK+Filebeat搭建日志分析系统
- 搭建ELK(ElasticSearch+Logstash+Kibana)日志分析系统(十五) logstash将配置写在多个文件
- 十分钟搭建和使用ELK日志分析系统
- ELK日志分析系统搭建
- ELK日志分析系统搭建
- ELK搭建日志联合分析系统
- ELK6.2.2日志分析监控系统搭建和配置
- 结合Docker快速搭建ELK日志收集分析平台
- ELK(一)ELK日志收集分析系统环境搭建
- ELK学习2_用Kibana和logstash快速搭建实时日志查询、收集与分析系统
- ELK+docker+nginx日志分析系统
- Filebeat+ELK搭建日志实时分析系统
- 在Windows系统下搭建ELK日志分析平台
- 使用Docker搭建ELK日志系统的方法示例
- 搭建ELK(ElasticSearch+Logstash+Kibana)日志分析系统(五) 通过redis扩展logstash
- ELK6.2.2日志分析监控系统搭建和配置
- 使用Docker搭建ELK日志搜集系统(二)
- elasticsearch + logstash + kibana 搭建 ELK 日志分析系统