springboot整合elk(Elasticsearch+Logstash+Kibana)

这篇具有很好参考价值的文章主要介绍了springboot整合elk(Elasticsearch+Logstash+Kibana)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

功能介绍

ELK 是软件集合Elasticsearch、Logstash、Kibana的简称,由这三个软件及其相关的组件可以打造大规模日志实时处理系统。

Elasticsearch 是一个基于 Lucene 的、支持全文索引的分布式存储和索引引擎,主要负责将日志索引并存储起来,方便业务方检索查询。

Logstash是一个日志收集、过滤、转发的中间件,主要负责将各条业务线的各类日志统一收集、过滤后,转发给 Elasticsearch 进行下一步处理。

Kibana是一个可视化工具,主要负责查询 Elasticsearch 的数据并以可视化的方式展现给业务方,比如各类饼图、直方图、区域图等。

基于对日志的实时分析,可以随时掌握服务的运行状况、统计 PV/UV、发现异常流量、分析用户行为、查看热门站内搜索关键词等。

操作手顺

一、每个单独部署

创建自定义的网络(用于连接到连接到同一网络的其他服务(例如Kibana))

docker network create somenetwork 

1、elasticsearch部署

使用docker命令

docker pull docker.elastic.co/elasticsearch/elasticsearch:6.4.2

创建并启动elasticsearch容器

docker run -p 9200:9200 -p 9300:9300  --name elasticsearch --net somenetwork -d docker.elastic.co/elasticsearch/elasticsearch:6.4.2

通过本地浏览器访问虚拟机地址的9200端口,返回如下内容,则证明elasticsearch部署成功

{
  "name" : "o6ORX7D",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "XhSiS_axRC63-8R0_Pc26Q",
  "version" : {
    "number" : "6.4.2",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "04711c2",
    "build_date" : "2018-09-26T13:34:09.098244Z",
    "build_snapshot" : false,
    "lucene_version" : "7.4.0",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}

2、logstash部署

使用docker命令

docker pull docker.elastic.co/logstash/logstash:6.4.2

创建并启动logstash容器

docker run  -p 5044:5044 -v /mydata/logstash/pipeline/:/usr/share/logstash/pipeline/ --name=logstash --net somenetwork -d docker.elastic.co/logstash/logstash:6.4.2

注意文件pipeline的映射,在pipeline中需要创建logstash的配置文件logstash.conf,该文件内容如下:

input{
        tcp {
                mode => "server"
                port => 5044
                codec => json_lines
                tags => ["data-http"]
        }
}
output{
        elasticsearch{
                hosts=> ["elasticsearch:9200"]
                index => "data-http-%{+YYYY.MM.dd}"
                }
        stdout{codec => rubydebug}
}

3、kibana部署

使用docker命令

docker pull docker.elastic.co/kibana/kibana:6.4.2

创建并启动容器

docker run -p 5601:5601 --name=kibana --net somenetwork -d docker.elastic.co/kibana/kibana:6.4.2

二、docker-compose一起部署

 

一、第一步在docker上安装ELK

创建目录

mkdir /home/app/myelk

新建docker-compose.yml文件

复制以下内容到新建的docker-compose.yml文件,保存yml文件

version: '3'
services:  
   elasticsearch:    
      image: docker.elastic.co/elasticsearch/elasticsearch:7.1.1
      container_name: elasticsearch7.1.1
      environment:
         - "cluster.name=elasticsearch" #设置集群名称为elasticsearch
         - "discovery.type=single-node" #以单一节点模式启动
         - "ES_JAVA_OPTS=-Xms512m -Xmx512m" #设置使用jvm内存大小
         - TZ=Asia/Shanghai    
      volumes:      
         - /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins #插件文件挂载
         - /mydata/elasticsearch/data:/usr/share/elasticsearch/data #数据文件挂载
      ports:      
         - 9200:9200
         - 9300:9300
   kibana:    
      image: docker.elastic.co/kibana/kibana:7.1.1
      container_name: kibana7.1.1
      links:
         - elasticsearch:es #可以用es这个域名访问elasticsearch服务    
      depends_on:      
         - elasticsearch #kibana在elasticsearch启动之后再启动    
      environment:      
         - "elasticsearch.hosts=http://es:9200" #设置访问elasticsearch的地址
         - TZ=Asia/Shanghai    
      ports:      
         - 5601:5601
      restart: always
   logstash:    
      image: docker.elastic.co/logstash/logstash:7.1.1
      container_name: logstash7.1.1
      environment:
         - TZ=Asia/Shanghai
      volumes:
         - /mydata/logstash/logstash.conf:/usr/share/logstash/pipeline/logstash.conf #挂载logstash的配置文件
      depends_on:
         - elasticsearch  #kibana在elasticsearch启动之后再启动    
      links:      
         - elasticsearch:es #可以用es这个域名访问elasticsearch服务    
      ports:      
         - 9600:9600
         - 5044:5044
      restart: always

保证在新建的目录下,安装elk三大软件

docker-compose up -d

若logstash启动失败,则去/mydata/logstash把logstash.conf改为以下文件格式:

input{
        tcp {
                mode => "server"
                port => 5044
                codec => json_lines
                tags => ["data-http"]
        }
}
filter{
    json{
        source => "message"
        remove_field => ["message"]
    }
}
output{
        elasticsearch{
                hosts=> ["es:9200"]
                index => "data-http-%{+YYYY.MM.dd}"
                }
        stdout{codec => rubydebug}
}

重新启动

docker-compose restart

三、springboot配置

创建logback.xml文件,即可简单集成日志文章来源地址https://www.toymoban.com/news/detail-457217.html

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <include resource="org/springframework/boot/logging/logback/base.xml" />

    <appender name="LOGSTASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
        <destination>127.0.0.1:5044</destination>
        <encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder" />
    </appender>

    <root level="INFO">
        <appender-ref ref="LOGSTASH" />
        <appender-ref ref="CONSOLE" />
    </root>
</configuration>

到了这里,关于springboot整合elk(Elasticsearch+Logstash+Kibana)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ELK日志平台(elasticsearch+logstash+kibana)搭建

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 为了实现分布式日志数据统一收集,实现集中式查询和管理 故障排查 安全信息和事件管理 ELK 是三个开源项目的首字母缩写,这三个项目分别是: Elasticsearch 、 Logstash 和 Kibana 。 • Elasticsearch 是一个搜索

    2024年02月03日
    浏览(33)
  • docker安装elk(Elasticsearch+logstash+kibana)

    1. 安装Docker 如果您还没有安装Docker,请先安装Docker。您可以按照官方文档进行安装:https://docs.docker.com/engine/installation/ 安装 docker-ce [root@k8s-master ~]# yum install docker-ce -y [root@k8s-master ~]# systemctl start docker systemctl enable docker.service   配置 docker 镜像加速器和驱动 [root@k8s-master ~]#vi

    2024年01月20日
    浏览(41)
  • elk(elasticsearch+logstash+kibana)搭建日志监控平台

    目录 elk架构原理 安装部署elasticsearch 什么是elasticsearch 创建elasticserch docker容器  安装部署kibana 什么是Kinana 创建Kibana docker容器         拉取镜像         创建配置文件:D:Programsdockerkibanakibana.yml          创建并运行kibana容器         验证登录kibana 安装部署logstash 什么

    2024年02月04日
    浏览(55)
  • bitnami Docker 安装ELK(elasticsearch, logstash, kibana)

    网上想找个用bitnami的ELK镜像安装ELK环境的,找了好半天没找到,于是自己尝试着安装了一套,分享给大家。 直接上干货: 安装Elasticsearch 用浏览器查看:http://localhost:9200, 应该可以看到ES安装成功 安装Logstash 这一步要点: 1、要把elk-es这个容器映射到logstash容器里面,里面的

    2024年02月04日
    浏览(37)
  • Elasticsearch,Logstash和Kibana安装部署(ELK Stack)

    前言 当今数字化时代,信息的快速增长使得各类组织和企业面临着海量数据的处理和分析挑战。在这样的背景下,ELK Stack(Elasticsearch、Logstash 和 Kibana)作为一套强大的开源工具组合,成为了解决数据管理、搜索和可视化的首选方案。无论是监控日志、实时数据分析,还是构

    2024年02月10日
    浏览(29)
  • centos7 搭建ELK(elasticsearch、logstash、kibana)

    1、下载安装包 使用华为镜像站下载速度很快,华为镜像站: https://mirrors.huaweicloud.com/home ,下载时需要保证版本一致 2、安装elasticsearch 解压到当前目录 安装,将Elasticsearch移动到/opt目录之中 创建Elasticsearch用户 es 规定 root 用户不能启动 es,所以需要新建一个其他用户来启动

    2024年02月13日
    浏览(27)
  • Docker安装elasticsearch、kibana和logstash,实现ELK

    目录 一、 安装elasticsearch 二、安装elasticsearch-head 三、安装?kibana 四、安装 logstash 五、安装filebeat 1.拉取镜像 2.新建elasticsearch.yml 3.运行容器 -p 9200:9200 -p 9300:9300 -e “ES_JAVA_OPTS=-Xms512m -Xmx512m” -v /home/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -e “discov

    2024年02月02日
    浏览(33)
  • ELK企业级日志分析系统(elasticsearch+logstash+kibana)

    目录 一.ELK概述 1.定义 (1)ElasticSearch (2)Kiabana (3)Logstash (4)Filebeat 2.filebeat结合logstash带来好处 3.为什么要是用ELK? 4.完整日志系统基本特征 5.ELK 的工作原理 二.部署ELK 1.环境配置 2.ELK集群部署(node1、node2) 3.部署 Elasticsearch 软件 4.安装Elasticsearch-head 插件 (1)编译安

    2024年04月22日
    浏览(45)
  • ELK【elasticsearch+logstash+kibana】企业级日志分析系统

    ELK平台是一套完整的日志集中处理解决方案,将 elasticsearch、logstash 和 kiabana 三个开源工具配合使用,完成更加强大的用户对日志的查询、排序、统计需求。 ElasticSearch:是基于Lucene(一个全文检索引擎的架构)开发的分布式存储检索引擎,用来存储各类日志。 Elasticsearch 是用

    2024年02月08日
    浏览(41)
  • Linux centOS 7部署ELK(elasticSearch、logstash、kibana)

    Linux centOS 7部署ELK(elasticSearch、logstash、kibana) 目录 1【yum模式安装】 1.1【安装ElasticSearch】 1.2【安装Kibana】 1.3【安装Logstash】 1.4【安装Filebeat】 2【压缩包方式安装elk】 原文链接: How To Install Elasticsearch, Logstash, and Kibana (Elastic Stack) on Ubuntu 16.04 | DigitalOcean 十分钟搞定CentOS

    2024年02月07日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包