springcloud+docker+elk搭建日志分析系统

2023-11-16

springcloud+docker+elk搭建日志分析系统

elk架构

在这里插入图片描述

搭建步骤

  1. 创建对应配置文件(注:编排文件与logstash和kibana在同一文件夹下)
    在这里插入图片描述

在这里插入图片描述

  1. 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
	}
}

  1. 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"

  1. elk编排docker-compose.yml配置
version: '3.1'

services:
  elasticsearch:
    image: elasticsearch:7.5.1
    environment:
      discovery.type: single-node
    volumes:
      - ./elasticsearch:/usr/share/elasticsearch
    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/config:/usr/share/logstash/pipeline
    ports:
      - 5000:5000
    networks:
      - elk
    depends_on:
      - elasticsearch

networks:
  elk:
    driver: bridge



注:因为需要挂载elasticsearch数据则先默认配置启动将/usr/share/elasticsearch拷贝到宿主机
docker pull elasticsearch:7.5.1
docker run -d --name elasticsearch elasticsearch:7.5.1
docker cp elasticsearch:/usr/share/elasticsearch /data/elk
删除默认配置的容器
docker stop elasticsearch
docker rm elasticsearch

  1. 进入docker-compose.yml所在包下执行docker-compose up -d 开始部署
    在这里插入图片描述
  2. 服务中配置发送日志到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

到此全部搭建完毕

使用

  1. 启动配置好的服务,加载日志数据到Elasticsearch中 也可以后面启动,但如果不启动kibana会找不到日志索引

  2. 打开kibana图形界面 kibana服务器地址:5601
    在这里插入图片描述

  3. kiana如果要查看需创建索引模式
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

springcloud+docker+elk搭建日志分析系统 的相关文章

随机推荐

  • java倒叙遍历list

    for int i list size 1 i gt 0 i System out println list get i
  • MIDI 音乐程序设计 (可以自己编曲的快乐)

    乐器数字接口 MIDI 简介 乐器数字接口 Musical Instrument Digital Interface MIDI 是20世纪80年代初为解决电声乐器之间的通信问题而提出的 是电子乐器制造商们建立的通信标准 是电子乐器之间以及电
  • linux网站重启命令res,linux

    服务进程 实时观察cpu 进程 内存 top q键退出 load average 0 05 0 11 0 08 1分钟 5分钟 15分钟 平均负载 Cpu s 0 7 us 1 4 sy 0 0 ni 97 8 id 0 0 wa 0 0
  • unity 之 Particle 内置粒子系统二

    Emission module 这个模块影响发射速率和发射的时间 Properties Property Function Rate over Time 单位时间内发射的粒子数 Rate over Distance 每移动一单位距离所发射的
  • SpringBoot八种bean的加载方式

    目录 第一种bean的加载方式 配置文件 第二种加载bean方式 注解和扫描 创建第三方的bean对象 第三种加载bean方式 不使用配置文件 扩展 bean的加载方式扩展FactoryBean lt gt 扩展 ImportResourc
  • 华为云服务器,新用户福利!!0元免费体验云产品最长可达一年

    华为云官网最新活动 新用户完成个人实名认证 参与问卷调研后即可免费试用 云产品0元试用 最长可达一年 华为云服务立足于互联网领域 依托于华为公司雄厚的资本和强大的云计算研发实力 面向互联网增值服务运营商 大中小型企业 政府 科研院所等广大企
  • global::System.Runtime.Versioning.TargetFrameworkAttribute 特性重复问题处理

    今天编译程序遇到global System Runtime Versioning TargetFrameworkAttribute 特性重复错误 原因是编译时生成的 NETFramework Version v4 6 1 AssemblyA
  • 记一次MySql还原导致的无法连接

    问题 昨天同事使用服务器的MySql数据库还原了一个5GB 的备份 结果一直卡住 他就将数据库强行关闭 没再执行任何其他操作 结果今天客户反馈登录异常 逐步排查 定位到是数据库无法访问 于是远程查看服务器 发现 MySql服务是正在运行的
  • RTKlib软件源码学习(观测文件与星历文件读取)

    本文基于本人对rtklib源码的学习进行顺序汇总 为记录个人的学习与理解 并根据个人需要对部分代码对其进行注释 如有错误或者不完善的地方烦请提出建议或改正方法 目录 1 execses函数 2 readobsnav函数 3 readrnxt
  • 【JS逆向】之HOOK代码怎么写

    声明 本文只作学习研究 禁止用于非法用途 否则后果自负 如有侵权 请告知删除 谢谢 前言 我解释一下hook是什么玩意 hook的原意是钩子 我理解替换或者拦截原有方法去修改和处理 1 怎么去替换原来的方法 这里我自己写一个方法去替换 实例
  • 中关村归国留学人员联创中心揭牌仪式,Jina AI 受邀出席活动

    2022 年 9 月 25 日上午 中关村归国留学人员联创中心揭牌仪式在中关村创业大街顺利举行 Jina AI 联合创始人兼 COO 何烜彬现场进行企业项目分享 并面向现场各海外高校校友代表发出人才招募邀请 活动背景 为更好地服务国际化人才
  • matlab入门基础:矩阵操作(一)

    系列笔记目录 第二节 矩阵操作 一 创建特殊矩阵 矩阵的运算 文章目录 系列笔记目录 前言 一 创建特殊矩阵 二 矩阵运算 1 矩阵元素的修改 2 矩阵的变维 3 矩阵的变向 4 矩阵的抽取 练习 三 矩阵的数学运算 总结 前言 MATLA
  • C++ - Vector 计算 均值(mean) 和 方差(variance)

    C Vector 计算 均值 mean 和 方差 variance 代码 double sum std accumulate std begin resultSet std end resultSet 0 0 double mean sum
  • C++通讯录管理系统(简单版)

    这个通讯录管理系统是我听课后做的笔记 都是很基础的逻辑实现 第一次动手写了一个小案例感觉找到了一点方向 也希望能帮到一点忙 1 系统需求 通讯录是一个可以记录亲人 好友信息的工具 本教程主要利用C 来实现一个通讯录管理系统 系统中需要实现的
  • PowerDesigner将PDM导出生成WORD文档--温习老知识

    今天的温习老知识 是如何将一个PD设计的PDM来导出WORD文档 这是一个非常实用的功能 可以在软件过程的数据库设计文档编写中节省N多时间 那不废话了 我们就开始今天的讲解吧 第一步 点击Report Temlates 制作模板 第二步 时
  • 1. 创建和生成

    文章目录 创建和生成 从 python 列表或元组创建 使用 arange 生成 使用 linspace logspace 生成 np linspace 使用 ones zeros 创建 使用 random 生成 从文件读取 本教程内容旨在
  • Python:实现多个txt文本的简单合并,亲测简单好用,保姆教程

    声明 非原创 我是python废废 原博客连接为 Python批量合并多个txt文件 自由的小白的博客 CSDN博客 python 合并多个txt 我在这里只做分享 好博客要更多人看到嘛 一 成果展示 我希望实现简单的txt文本合并 合并前
  • APP的接口版本管理 实现多版本共存

    思路 用户请求url gt 拦截器拦截 gt 转发到真正处理类和方法 gt 返回结果 url注解类 package com jc app util apiVersion import java lang annotation 需要拦截的AP
  • platform 设备驱动实验

    目录 Linux 驱动的分离与分层 驱动的分隔与分离 驱动的分层 platform 平台驱动模型简介 platform 总线 platform 驱动 platform 设备 硬件原理图分析 试验程序编写 platform 设备与驱动程序编写
  • springcloud+docker+elk搭建日志分析系统

    springcloud docker elk搭建日志分析系统 elk架构 搭建步骤 创建对应配置文件 注 编排文件与logstash和kibana在同一文件夹下 logstash conf配置 input tcp mode gt serve