简单ELK框架搭建

news2025/4/3 1:21:31

简介

        ELK 框架是一套开源的日志管理和分析工具,由 Elasticsearch、Logstash 和 Kibana 三个主要组件组成,现在新增了Filebeat组件,可以更高效的收集数据。

  • Elasticsearch:是一个分布式、高可扩展的开源搜索引擎,能快速准确地从大量日志数据中检索出所需信息。
  • Logstash:是一个数据收集和处理引擎,用于从各种数据源收集日志数据,如文件、网络接口、数据库等,然后对数据进行过滤、转换和格式化等处理。
  • Kibana:是一个开源的数据分析和可视化平台,可视化方式对 Elasticsearch 中的数据进行分析和展示,无需编写复杂的查询语句,即可快速了解数据的分布、趋势和关联关系。
  • Filebeat :Filebeat 是一个轻量级的日志文件收集器,专为转发和集中日志数据而设计,用于监控指定的日志文件或目录,一旦有新的日志产生,Filebeat 就会读取并将其发送。

        ELK 框架的工作流程是,Filebeat收集各种来源的日志数据,发送到Logstash处理过滤后将其发送到 Elasticsearch 进行存储和索引,然后 Kibana 从 Elasticsearch 中获取数据并进行可视化展示,为用户提供直观的日志分析结果。

ELK运行流程图

(我搭建的只是一个简易版本的,如需专业版的请查找其他文件或视频资料)

我是在虚拟机的Docker中搭建的ES和Kabana,首先需要新建一个网络用于ELK

docker network create elk

docker安装elasticsearch

docker run -d \
--name=elasticsearch \
-v es-data:/usr/share/elasticsearch/data \
-e ES_JAVA_OPTS="-Xms256m -Xmx512m" \
-e "discovery.type=single-node" \
-e "xpack.security.enabled=false" \
--net elk \
-p 9200:9200 -p 9300:9300 \
docker.elastic.co/elasticsearch/elasticsearch:8.6.2

安装kibana

docker run -d \
--name=kibana \
-e ELASTICSEARCH_HOSTS=http://elasticsearch:9200 \
-e I18N_LOCALE=zh-CN \
--net elk \
-p 5601:5601 \
docker.elastic.co/kibana/kibana:8.6.2

测试ES

curl 1ocalhost:9200/_cat/health

测试Kabana,直接访问5601端口就可以,http://192.168.178.78:5601/app/home#/,记得把ip换成自己的。

然后我的Logstash和Filebeat 是安装在客户端的,直接安装在了Windows上。需要再官网下载https://www.elastic.co/,进入后可以先改成中文

然后往下滑,就可以看到下载本地部署的链接了

进去后选择应用和版本

选择需要下载的软件和版本 ,我下载的8.6.2的

进去之后记得下载Windows版本的。 安装Logstash和Filebeat

        Filebeat: 解压前面下载好的filebeat压缩包,打开filebeat.yml文件

打开之后把里边原本的文件注销了 ,然后输入以下配置

filebeat.inputs:      #这个是获取日志
  - type: filestream
    id: your_unique_input_id # 在这里添加一个唯一的 ID
    enabled: true
    paths:
      - D:\IDER\project\a\vehicle\logs\vehicle-system\*.log # 请替换为实际的日志路径

setup.ilim.enabled: false
setup.template.name: "logstash"
setup.template.pattern: "logstash-*"
output.logstash:                     #这个是把日志发送到logstash
  hosts: ["127.0.0.1:5044"]          #这个logstash的ip以及接口,设置成自己的
  index: "logstash-%{+yyyy.MM.dd}"   #发送过去的数据名字,前缀加时间戳

保存后在当前文件夹路径哪里输入cmd,打开黑窗口,然后输入启动命令

.\filebeat.exe -c filebeat.yml -e

        如果一切配置正确,Filebeat将开始读取配置文件中指定的日志文件,并根据你的输出配置将日志数据发送到目标位置(比如Logstash)。你应该能在命令提示符窗口看到Filebeat的运行日志,显示数据正在被处理和发送。 

        Logstash:解压Logstash压缩包文件,在config文件夹下有一个文件:logstash-sample.conf,复制一份,并重命名为logstash.conf,输入以下配置。

input {
  beats {
    port => 5044    #这个监测端口
  }
}

output {
  elasticsearch {
    hosts => ["http://192.168.178.78:9200"]   #输出到ES中
    index => "task-service-%{+YYYY.MM.dd}"
    #user => "elastic"
    #password => "changeme"
  }
}

然后进入到bin目录,然后地址栏cmd打开黑窗口,输入启动命令

logstash.bat  -f D:\tools\logstash-7.15.2\config\logstash.conf

启动之后打开Kibana,滑到最后点击Stack Management

然后点击索引,就可以看到,如果没有看到,可以在数据流那里看看有没有。

有了索引或者数据流后,点击 数据视图,然后创建数据视图

创建时名称可以随便填,但是索引模式一般都是前缀加上*号做通配符

创建保存视图后在左上角点击,然后点击Discover

然后显示出来日志记录 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2326140.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue2和Vue3响应式的基本实现

目录 简介Vue2 响应式Vue2 响应式的局限性 Vue3 响应式Vue3 响应式的优点 Vue2 和 Vue3 响应式对比 简介 在 Vue 框架中,数据的响应式是其核心特性之一。当页面数据发生变化时,我们希望界面能自动更新,而不是手动操作 DOM。这就需要对数据进…

RCE(自增、取反、异或)

自增: 也就是说,a > b,b > c... 所以,我们只要能拿到一个变量,其值为a,通过自增操作即可获得a-z中所有字符。 无字母数字构造: 所有敏感字符串(ASSERT、_POST)通过自增动态生…

【深度学习新浪潮】图像修复(Image Inpainting)技术综述:定义、进展与应用展望

本文为精简版,完整技术细节与参考文献可与作者讨论。 1. 图像修复的定义与核心目标 图像修复(Image Inpainting)是一种通过算法手段填补图像中缺失区域或移除不需要对象的技术,其核心目标是利用图像上下文信息生成与周围像素一致且视觉自然的内容。该技术通过计算机视觉和…

计算机视觉——传统数字图像处理中图像去噪原理与代码实现细节

1. 概述 在现实世界中捕获的图像常常受到噪声的影响,这些噪声可能来源于环境因素、信号不稳定、相机传感器问题、照明条件差、电损失等多种因素。为了进一步处理这些图像并对结果进行准确解释,拥有尽可能低噪声的图像至关重要。图像去噪是数字图像处理中…

【STM32】最后一刷-江科大Flash闪存-学习笔记

FLASH简介 STM32F1系列的FLASH包含程序存储器、系统存储器和选项字节三个部分,通过闪存存储器接口(外设)可以对程序存储器和选项字节进行擦除和编程,(系统存储器用于存储原厂写入的BootLoader程序,用于串口…

JS实现动态点图酷炫效果

实现目标 分析问题 整个图主要是用canvas实现,其中难点是将线的长度控制在一定范围内、并且透明度随长度变化。 前置知识 canvas绘制点、线、三角形、弧形 // 点ctx.moveTo(this.x, this.y);ctx.arc(this.x, this.y, this.r,0, 2 * Math.PI, false);ctx.fillStyle …

【第十三届“泰迪杯”数据挖掘挑战赛】【2025泰迪杯】【思路篇】A题解题全流程(持续更新)

【第十三届“泰迪杯”数据挖掘挑战赛】【2025泰迪杯】A题解题全流程-思路(持续更新) 写在前面: 1、A题、C题将会持续更新,陆续更新发布文章 2、赛题交流咨询Q群:1037590285 3、全家桶依旧包含: 代码、…

爱普生晶体单元FC2012AN在5G RedCap中的应用

在 5G 技术向物联网领域深度渗透的今天,RedCap(5G 轻量化)作为衔接中高速物联网场景的关键技术,正加速推动工业、医疗、可穿戴等领域的智能化升级。爱普生 FC2012AN 低 ESR 晶体单元凭借其突破性的小尺寸、低功耗与高稳定性设计&a…

vue 两种路由模式

一、两种模式比较 在vue.js中,路由模式分为两种:hash 模式和 history 模式。这两种模式决定了URL的结构和浏览器历史记录的管理方式。 1. hash 模式带 #,#后面的地址变化不会引起页面的刷新。换句话说,hash模式不会将#后面的地址…

Java-servlet(十)使用过滤器,请求调度程序和Servlet线程(附带图谱表格更好对比理解)

Java-servlet(十)使用过滤器,请求调度程序和Servlet线程 前言一、Servlet 间通信(了解即可)二、Servlet 请求处理:getAttribute 和 getParameter 的区别与应用1.getAttribute 方法2.getParameter 方法 三、…

ue5 学习笔记 FPS游戏制作35 GameMode与GameInstance

文章目录 相似GameMode介绍声明设置生效调用 GameInstance介绍声明设置生效调用 相似 两者都用来保存公共的数据和方法 数据都在内存里,关闭程序后数据消失 GameMode 介绍 生命周期跟随关卡,关卡销毁GameMode也跟随销毁 内部可以定义属性和方法 声明…

山洪预警秒级响应-AI本地化部署在极端降雨短临预测中的技术突破。AI智能体开发与大语言模型的本地化部署、优化技术

极端降雨预测的技术痛点与边缘破局 ‌1. 传统预警系统的三重瓶颈‌ ‌延迟致命‌:WRF模式在1km分辨率下3小时预报耗时>45分钟,错过山洪黄金响应期 ‌地形干扰大‌:复杂地形区(如横断山脉)降水预测误差超50% ‌数…

矿山自动化监测解决方案

1.行业现状 为贯彻落实《中共中央国务院关于推进安全生产领域改革发展的意见》《“十四五”矿山安全生产规划》(应急〔2022〕64号)、《国务院安委会办公室关于加强矿山安全生产工作的紧急通知》(安委办〔2021〕3号)等有关工作部署…

pytorch学习(b站小土堆学习)

1 环境配置 参考链接 2. dir 和 help函数 dir():用于查看某一模块函数的方法 help(): 用于查看某方法的使用方法 3. dataset类实战 利用Image对象打开图片,利用os模块的地址拼接组成图片路径 当我们用方括号访问元素对象时,…

【最新】探索CFD的未来:从OpenFOAM到深度学习,全面解析计算流体力学的顶级资源与前沿技术

计算流体力学(CFD)作为现代工程与科学研究的核心工具,正以前所未有的速度迈向智能化与多物理场耦合的新时代。本文全面梳理了在线学习CFD的顶级资源,涵盖了从传统数值模拟到深度学习驱动的物理信息模型的广泛领域,旨在为研究者、工程师和学生提供一站式参考指南。内容分为…

算法专题一:双指针算法(下)

书接上回 5.有效三角形个数 力扣&#xff1a; 有效三角形的个数 在做这道题前我们先讲一个数学知识&#xff1a;已知 a < b < c ,此时 ab>c 可以得出 有效三角形。 所以&#xff0c;我们做这道题时&#xff0c;可以不使用暴力算法。 可以优化为先排序&#xff…

咪咕MG101_晨星MSO9380芯片_安卓5.1.1_免拆卡刷固件包

咪咕MG101_晨星MSO9380芯片_安卓5.1.1_免拆卡刷固件包&#xff08;内有教程&#xff09; 刷机教程简单说明&#xff1a; 1、把下载好的刷机包&#xff0c;U盘里建立一个upgrade文件夹&#xff0c;固件放入此文件夹里&#xff0c;放入U盘中&#xff0c;注意升级包为压缩包不要对…

T11 TensorFlow入门实战——优化器对比实验

&#x1f368; 本文為&#x1f517;365天深度學習訓練營 中的學習紀錄博客&#x1f356; 原作者&#xff1a;K同学啊 | 接輔導、項目定制 一、前期准备 1. 导入数据 # Import the required libraries import pathlib import matplotlib.pyplot as plt import tensorflow as t…

2023年3月全国计算机等级考试真题(二级C语言)

&#x1f600; 第1题 下列叙述中错误的是 A. 向量是线性结构 B. 非空线性结构中只有一个结点没有前件 C. 非空线性结构中只有一个结点没有后件 D. 只有一个根结点和一个叶子结点的结构必定是线性结构 概念澄清 首先&#xff0c;我们需要明确几个关键概念&#xf…

在MFC中使用Qt(四):使用属性表(Property Sheet)实现自动化Qt编译流程

前言 首先回顾下前面文章介绍的&#xff1a; 在MFC中使用Qt&#xff08;一&#xff09;&#xff1a;玩腻了MFC&#xff0c;试试在MFC中使用Qt&#xff01;&#xff08;手动配置编译Qt&#xff09; 在MFC中使用Qt&#xff08;二&#xff09;&#xff1a;实现Qt文件的自动编译流…