基于ELK的项目日志收集系统

2023-11-11

前言

Beats 是作为ELK技术栈前端数据收集平台的一个开源软件

Beats is the platform for building lightweight, open source data shippers for many types of operational data you want to enrich with Logstash, search and analyze in Elasticsearch, and visualize in Kibana.

Whether you’re interested in log files, infrastructure metrics, network packets, or any other type of data, Beats serves as the foundation for keeping a beat on your data

目前有官方支持的三个子产品:packetbeattopbeatfilebeat

  • packetbeat 侧重于收集网络包
  • topbeat 侧重于收集基础架构信息,如CPU,Memory,Progress 相关信息
  • filebeat 侧重于收集日志型信息

下面是它们之间的关系

beats-logstash.png

 

正文

1.前期准备

下载地址

elastic.co/cn/downloads/

 

 

2.filebeat

filebeat 配置文件

testfilebeat.yml

1

2

3

4

5

6

7

8

9

10

11

12

filebeat:

  inputs:

  -

      paths:

        - C:\tmp\pdm-lite-project\*.log

      fields:

         service: project_name

output:

  #elasticsearch:

  #   hosts: ["localhost:9200"]

   logstash:

    hosts: ["localhost:5044"]

启动命令 

  • bin目录下启动filebeat:./filebeat -e -c testfilebeat.yml -d “publish”

 

多个输入

filebeat:

  inputs:

  -

      paths:

        - /usr/local/elk/redislog/*.log

    # 相当于logstash中的type

      fields:

         service: redis

  -

      paths:

        - /usr/local/elk/log/*.log

      fields:         

         service: ecps

 

output:

  #elasticsearch:

  #   hosts: ["localhost:9200"]

   logstash:

    hosts: ["172.30.1.45:5044"]

 

 

 

3.logstash

logstash 配置文件

logstash_filebeat.conf

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

input {

  beats {

    port => 5044

  }

}

 

filter {

    multiline {

        pattern => "^\d{4}-\d{1,2}-\d{1,2}\s\d{1,2}:\d{1,2}:\d{1,2}"

        negate => true

        what => "previous"

        }

    }

 

output {

    if[fields][service] == "project_name" {

                      elasticsearch {

                            hosts => ["localhost:9200"]

                            index => "project_name-%{+YYYY.MM.dd}"

                        }

                    }

        stdout { codec => rubydebug }

}

启动命令 

  • bin目录下启动logstash:logstash -f logstash_filebeat.conf

 

 

4.Elasticsearch

 

 

5.Kibana

 

config/kibana.yml

elasticsearch.hosts: ["http://localhost:9200"]

 

 

6.grafana(进阶)

可以将数据进行实时监测,并图表展示。

 

 

 

常见问题

 

logstash-启动报错-安装multiline以及multiline使用方法

 

 

参考文章

Filebeat安装及使用

logstash匹配多行日志

Logstash+Filebeats+Elasticsearch实现数据抽取https://blog.csdn.net/fenglixiong123/article/details/108081235

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

基于ELK的项目日志收集系统 的相关文章

  • Python协程介绍【赠书活动|第五期《Python编程入门与实战》】

    文章目录 一 相关概念 1 协程 2 子程序 3 区别 4 协程的优势 二 示例 赠书活动 一 相关概念 1 协程 协程 又称微线程 纤程 英文名Coroutine 协程的概念很早就提出来了 但直到最近几年才在某些语言 如Lua 中得到广泛
  • LeetCode : Search for a Range

    Given a sorted array of integers find the starting and ending position of a given target value Your algorithm s runtime
  • Centos7安装jdk1.8

    Centos7安装jdk1 8 两种安装方式 1 检查本机是否安装了jdk 安装了就不用安装了 命令如下 root localhost java version bash java 未找到命令 root localhost 注意 说明未安装

随机推荐

  • 视频解码学习备忘

    媒体文件知识 日常都是播放器直接播 其实这里面还有不少内容的 首先是视频容器 就是所谓的 mp4 mkv 这类文件 其目的主要就是用来存放音频视频字幕等内容 所以叫做容器 这些都有一定规范 比如mp4 叫ISO 14496 12 也即是mp
  • 7-1 图的先深搜索+7-2 图的先广搜索

    由于本人用指针 链表实现数据结构算法时经常有使用堆叠字节的警告以及栈溢出报错 于是就都用数组或者C stl模拟了 输出无向图的给定起点的先广序列 输入格式 输入第一行给出三个正整数 分别表示无向图的节点数N 1
  • C语言-按照单词反转字符串(完整代码)

    编程实现以单词 为单位的字符串逆序 例如 HELLO WORLD WORLD HELLO 目录 实现逻辑 实现代码如下 完整备注 执行结果如下 实现逻辑 当前的实现逻辑 是通过两个指针变量 一个指针
  • 第十二讲:强化学习(Reinforcement Learning)和控制(Control)

    这一章我们就要学习强化学习 reinforcement learning 和适应性控制 adaptive control 了 在监督学习 supervised learning 中 我们已经见过的一些算法 输出的标签类 y y y 都是在训
  • 【Linux】对Linux操作系统中进程的理解

    需要云服务器等云产品来学习Linux的同学可以移步 gt 腾讯云 lt gt 阿里云 lt gt 华为云 lt 官网 轻量型云服务器低至112元 年 新用户首次下单享超低折扣 目录 一 冯 诺依曼体系结构 硬件方面 举个例子加深理解 二 操
  • 如何使定时器1ms进入中断一次?

    STM32F103中APB1最大时钟频率72Mhz APB2最大时钟频率36Mhz 所以 1 把定时器设置自动重装载寄存器 ARR 的值为 1000 2 设置时钟预分频器为 71 3 则驱动计数器的时钟 CK CNT CK INT 71 1
  • SpringBoot实现RESTful服务接口

    在实际使用SpringBoot开发项目的过程中 后端服务经常会遇到跨模块访问的需求 这就需要我们的服务接口有同一的开发规范 这样在跨模块调用时才能更方便 高效 而Spring Boot也为我们创建Web服务提供了非常强大的组件化支持 简单而
  • 华为OD机试 - 拔河比赛(Python)

    题目描述 公司最近准备进行拔河比赛 需要在全部员工中进行挑选 选拔的规则如下 按照身高优先 体重次优先的方式准备比赛阵容 规定参赛的队伍派出10名选手 请实现一个选拔队员的小程序 输入为一个数组 记录了部门人员的身高 体重信息 如 身高 体
  • Javaweb

    1 Cookie对象 cookie是一种会话技术 它用于将会话过程中的数据保存到用户的浏览器中 从而使浏览器和服务器可以更好的地进行数据交互 实现获取Cookie信息并将当前时间发送给客户端 代码如下 protected void doGe
  • MultipartFile文件上传报错

    MultipartFile文件上传报错 Postman上传文件访问接口 直接报错了 报错如下 Failed to parse multipart servlet request nested exception is java io IOE
  • SonarQube SonarLint 安装使用教程

    目录 SonarQube 概念 什么是 SonarQube SonarQube 架构 SonaQuge 是如何工作的 现有问题 如何判断代码好坏 为什么要使用 SonarQube 代码可靠性 应用安全 技术债务 SonarQube 安装及配
  • sigmoid和softmax总结

    sigmoid函数 也叫逻辑斯谛函数 引用wiki百科的定义 A logistic function or logistic curve is a common S shape sigmoid curve 其实逻辑斯谛函数也就是经常说的si
  • Spring三级缓存解决循环依赖

    有两个Bean对象 A对象中有一个属性的B对象 B对象中有一个属性的A对象 他们都需要依赖注入 但是map单例池中都没有这个对象 正常情况下在进行注入时 如果map单例池中没有需要的Bean对象B就会去创建这个Bean对象B 但如果需要创建
  • onnxruntime和pytorch时间对比

    https github com microsoft onnxruntime issues 2404 https github com microsoft onnxruntime issues 1621 https github com m
  • ASCII、Unicode和UTF-8编码的区别

    归纳 编码 大小 支持语言 ASCII 1个字节 英文 Unicode 2个字节 生僻字4个 所有语言 UTF 8 1 6个字节 英文字母1个字节 汉字3个字节 生僻字4 6个字节 所有语言 具体解释 最早只有127个字母被编码到计算机里
  • jar包源码修改

    jar包源码修改 我相信大家在做项目的时候有时候看源码 或者想改源码代码的时候 一定是修改不了滴 今天在这里就告诉大家如何修改源码里面的代码并且从新打成jar包 一 反编译首先是要下个反编译工具 网上有很多啊Jadclipse XJad J
  • 精美博客源码

    这是一个精美的博客源码 原作者找不到了 因为现在跑路了 话不多说 上源码 https qsnb lanzouq com b020llczc 密码 0000 注意 本人非作者 发生一切法律问题不要找我 搭建教程 1 上传源码至文件管理器 2
  • Spring Boot + Vue的网上商城之商品管理

    Spring Boot Vue的网上商城之商品管理 在网上商城中 商品管理是一个非常重要的功能 它涉及到商品的添加 编辑 删除和展示等操作 本文将介绍如何使用Spring Boot和Vue来实现一个简单的商品管理系统 下面是一个实现Spri
  • 实战项目心得

    项目一 电商页面整站开发 HTML css整站开发 编写一个满足电商需求的各个页面 一 用div附以一些dd dt dl ul li的应用布局 整合css 二 用margin padding text indent border等距离进行计
  • 基于ELK的项目日志收集系统

    前言 Beats 是作为ELK技术栈前端数据收集平台的一个开源软件 Beats is the platform for building lightweight open source data shippers for many type