ELK----filebeat日志收集工具

news2024/11/27 8:47:23

ELK:filebeat日志收集工具和logstash相同

filebeat是一个轻量级的日志收集工具,所使用的系统资源比logstash部署和启动时使用的资源要小的多。

filebeat可以运行在非java环境。他可以代理logstash在非java环境上收集日志

filebeat无法实现数据的过滤,一般是结合logstash的数据过滤功能一块使用

filebeat收集的数据可以发往多个主机。远程收集。

数据流程图:

实验:

20.0.0.10:logstash+kibana+filebeat
20.0.0.20:es1
20.0.0.30:es2
20.0.0.75:mysql
 
 
vim /etc/logstash/logstash.yml
64行
path.data: /opt/log
重启服务即可
 
yum -y install ntpdate
#时间同步
ntpdate ntp.aliyun.com 
 
yum -y install nginx
#安装nginx
开启nginx
vim /usr/local/nginx/html/index.html
this is nginx
 
到浏览器页面访问测试一下
20.0.0.10:8080
 
回到10主机
cd filebeat
cp filebeat.yml filebeat.yml.bck
vim filebeat.yml
Logstash output部分
output.logstash:解除注释
hosts: ["20.0.0.10:5044"]解除注释
 15 filebeat.inputs:
 16 - type: log
 17   enabled: true
 18   paths:
 19     - /usr/local/nginx/logs/access.log
 20     - /usr/local/nginx/logs/error.log
 21   tags: ["nginx"]
 22   fields:
 23     service_name: 20.0.0.10_nginx
 24     log_type: nginx
 25     from: 20.0.0.10
 
  cd /opt/log
  vim nginx.conf
  input {
   beats { prot => "5044"}
  }
  
  output {
    if "nginx" in [tags] {
      elasticsearch {
        hosts => ["20.0.0.20:9200","20.0.0.30:9200"]
        index => "%{[fields][service_name]}"-%{+YYYY.MM.dd}
      }
    }
    stdout {
      codec => rubydebug
    }
  }
nohup ./filebeat -e -c filebeat.yml > filebeat.out &
  #nohup表示在后台记录执行命令的过程
  #./filebeat运行文件
  #-e使用标准输出同时禁用syslog文件输出
  #-c指定配置文件
  cd /opt/log
  logstash -f file_nginx.conf --path.data /opt/ng3 &

到浏览器测试一下

logstash收集日志的过程:

input(从哪收集)

filter(过滤)

output(发送es实例)
 

远程收集多个日志

MySQL主机
vim /etc/my.conf
general_log=ON
general_log_file=/usr/local/mysql/data/mysql_general.log
#开启日志功能和指定日志位置
systemctl restart mysqld.service
#重启MySQL服务
打开MySQL进入创建一个库和一个表给日志创造一点信息
 
yum -y install httpd
#安装httpd服务
yum -y install nginx
#安装nginx服务
修改nginx的端口号为8080
 
到浏览器访问测试一下httpd和nginx
20.0.0.75:80
20.0.0.75:8080
 
在MySQL主机上安装filebeat
cd filebeat
cp filebeat.yml filebeat.yml.bak
vim filebeat.yml
打开optput
hosts: [20.0.0.10]
filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /usr/local/nginx/logs/access.log
    - /usr/local/nginx/logs/error.log
  type: ["nginx_75"]
  fields:
    service_name: 20.0.0.75_nginx
    log_type: nginx
    from: 20.0.0.75
 
- type: log
  enabled: true
  paths:
    - /var/log/httpd/access.log
    - /var/log/httpd/error.log
  type: ["httpd_75"]
  fields:
    service_name: 20.0.0.75_httpd
    log_type: httpd
    from: 20.0.0.75
 
- type: log
  enabled: true
  paths:
    - /usr/local/mysql/data/mysql_general.log
  type: ["mysql_75"]
  fields:
    service_name: 20.0.0.75_mysql
    log_type: mysql
    from: 20.0.0.75
 
回到elk主机
cd /opt/log
vim nhm_75.conf
input {
 beats { port => "5045"}
}
 
output {
 if "nginx_75" in [tags] {
  elasticsearch {
   hosts => ["20.0.0.20:9200","20.0.0.30:9200"]
   index => "%{[fields][service_name]}-%{+YYYY.MM.dd}"
  }
 }
 if "httpd_75" in [tags] {
  elasticsearch {
   hosts => ["20.0.0.20:9200","20.0.0.30:9200"]
   index => "%{[fields][service_name]}-%{+YYYY.MM.dd}"
  }
 }
 if "mysql_75" in [tags] {
  elasticsearch {
   hosts => ["20.0.0.20:9200","20.0.0.30:9200"]
   index => "%{[fields][service_name]}-%{+YYYY.MM.dd}"
  }
 }
   stdout {
    codec => rubydebug
  }
}
 
回到MySQL主机
nohup ./filebeat -e -c filebeat.yml > filebeat.out &
 
回到elk主机
logstash -f nhm_75.conf --path.data /opt/nhm
 
回到MySQL主机修改端口号
hosts: ["20.0.0.75:5045"]
nohup ./filebeat -e -c filebeat.yml > filebeat.out &
 
到elk主机
logstash -f nhm.conf --path.data /opt/nhm2 &
 
到浏览器查看一下es索引是否创建成功
再到kibana上创建索引查看是否有日志记录

logstash性能优化:

logstash启动是在jvm虚拟机当中其中,启动一次至少500M内存。

vim /etc/logstash/logstash.yml
41行
pipeline.workers: 2
#定义了logstash的工作线程,默认值就是cpu数。4核最好给2,8核给2,给一半即可
pipline.batch.size: 125
#一次性批量处理检索时间的大小
#125是条数。可以根据自行修改
50行
pipeline.batch.delay: 50
#查询更新的延迟
#50是50毫秒,也可也自行调整
#生产中一般10-15毫秒。也要看机器性能

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

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

相关文章

查看IOS游戏FPS

摘要 本篇技术博客将介绍如何使用克魔助手工具来查看iOS游戏的帧率(FPS)。通过克魔助手,开发者可以轻松监测游戏性能,以提升用户体验和游戏质量。 引言 在iOS游戏开发过程中,了解游戏的帧率对于优化游戏性能至关重要…

顶配版SAM:由分割一切迈向感知一切

文章目录 0. 前言1. 论文地址1.1 项目&代码1.2 模型地址1.3 Demo 2. 模型介绍2.1 亮点2.2 方法 3. 量化结果、可视化展示Reference 0. 前言 现有的视觉分割基础模型,如 SAM 及其变体,集中优势在形状、边缘等初级定位感知,或依赖外部模型…

MR实战:实现数据去重

文章目录 一、实战概述二、提出任务三、完成任务(一)准备数据文件1、在虚拟机上创建文本文件2、上传文件到HDFS指定目录 (二)实现步骤1、Map阶段实现(1)创建Maven项目(2)添加相关依赖…

红警1源代码下载,编译,单步调试操作步骤

注意视频无声音: 红警1代码单步调试操作步骤_哔哩哔哩_bilibili红警1,源代码下载,编译,单步调试操作步骤。1、下载代码:https://gitee.com/r77683962/CnC_Remastered_Collection/repository/archive/master.zip这里边…

Jackson ImmunoResearch纳米二抗(Nano Secondary Antibodies)

驼科,如羊驼和美洲驼,会产生一类独特的仅由重链组成的抗体。而抗原结合片段(Fab),也称为仅可变重链片段抗体(Variable Heavy-Chain only fragment antibodies,VHH片段),或纳米抗体,是一种新型抗体形式。凭借…

【MCAL】TC397+EB-tresos之MCU配置实战 - 芯片时钟

本篇文章介绍了在TC397平台使用EB-treso对MCU驱动模块进行配置的实战过程,主要介绍了后续基本每个外设模块都要涉及的芯片时钟部分,帮助读者了解TC397芯片的时钟树结构,在后续计算配置不同外设模块诸如通信速率,定时器周期等&…

rabbitmq使用总结

1、进入rabbitmq的sbin目录,进入CMD 2、输入./rabbitmq-plugins enable rabbitmq_management启用管理服务。 3、输入./rabbitmqctl start_app启动服务。 查看是否启动成功 1、浏览器访问http://localhost:15672/ 下载erlang 地址如下: http://erla…

三张表看懂POE POE+ POE++ 三个协议的相关参数

Hqst华强盛(盈盛电子)导读:三张表看懂POE POE POE 三个协议的相关参数。 一 ̖ POE协议区分: 802.3af(PoE) 百兆网络变压器H81621S 二 ̖ POE协议与受电设备(PD)工作功率分级 802.3at&#xf…

使用MySQL进行数据库表的基本操作

参考文章 http://www.ksqn.cn/news/1325.html 1. 创建表 语法: CREATE TABLE table_name ( field1 datatype, field2 datatype, field3 datatype ) character set 字符集 collate 校验规则 engine 存储引擎;说明: field 表示列名datatype 表示列的类…

图片水印怎么去除?推荐三个去水印的方法

在我们搜集和整理图片素材的过程中,总会遇到一个让人头疼的问题——水印。这些水印不仅破坏了图片的整体美感,还极大地限制了图片的使用范围。然而,好消息是,我们并非束手无策,有多种方法可以帮助我们去除这些水印&…

Android 理解Context

文章目录 Android 理解ContextContext是什么Activity能直接new吗? Context结构和源码一个程序有几个ContextContext的作用Context作用域获取ContextgetApplication()和getApplicationContext()区别Context引起的内存泄露错误的单例模式View持有Activity应用正确使用…

OpenCV-Python(29):图像特征

目录 目标 背景介绍 常用特征 应用场景 目标 理解什么是图像特征 为什么图像特征很重要 为什么角点很重要 背景介绍 相信大多数人都玩过拼图游戏吧。首先你们拿到一张图片的一堆碎片,你要做的就是把这些碎片以正确的方式排列起来从而重建这幅图像。问题是&…

模拟电路基础知识笔记,你想知道的都有,建议收藏!

大家总说模电知识总是学不会,IC修真院为大家整理了模拟电子基础知识,看看你掌握了多少,文末可以获取全部哦。 文末可领全部文档 1、PN结是晶体二极管的基本结构,也是一般半导体器件的核心。 2、 射极输出器没有电压放大能力&am…

SD NAND 异常上下电测试

SD NAND 异常上下电测试的作用 SD NAND 异常上下电测试是一项关键的测试步骤,对确保SD NAND在不同电源条件下的稳定性和可靠性至关重要。 通过模拟正常和异常电源情况,测试可以验证设备的电源管理功能、检测潜在错误和异常行为,并评估设备在…

怎么快速去除图片水印?这些快速去除的工具赶紧码住

在数字时代的大潮中,图片与视频中的水印如同微小的瑕疵,虽然旨在维护原创者的权益,却往往损害了内容的观感,降低了他人的分享欲望。那些恼人的水印,常常让人们束手无策。但别担心,接下来我将为你揭秘几种快…

数字化时代背景下服装表演创新研究

服装表演是一门独具魅力的艺术,它既高于生活,又来源于生活。这一艺术形式通过舞台上的服装、音乐、舞蹈和表演艺术家的表现力,将时尚与创意融为一体,向观众传递着独特的美感和情感。然而,如今,我们生活在一个飞速发展的数字化时代,这为服装表演的教育带来了前所未有的机遇和挑战…

英文建筑图纸翻译工程图纸翻译

建筑图纸是以图形和文字为语言,详细描绘了工程建筑、机械、设备等结构、形状、尺寸及其他要求。对于建筑图纸翻译,表达必须清楚准确。那么,如何确保英文建筑图纸翻译工程图纸翻译的准确性? 首先,我们需要深入了解建筑图…

使用 pytest 相关特性重构 appium_helloworld

一、前置说明 在 pytest 基础讲解 章节,介绍了 pytest 的特性和基本用法,现在我们可以使用 pytest 的一些机制,来重构 appium_helloworld 。 appium_helloworld 链接: 编写第一个APP自动化脚本 appium_helloworld ,将脚本跑起来 代码目录结构: pytest.ini 设置: [pyt…

【C语言】程序练习(三)

大家好,这里是争做图书馆扫地僧的小白。非常感谢各位的支持,也期待着您的关注。 目前博主有着C语言、C、linux以及数据结构的专栏,内容正在逐步的更新。 希望对各位朋友有所帮助同时也期望可以得到各位的支持,有任何问题欢迎私信与…

【Leetcode 39】组合总和 —— 回溯法

39. 组合总和 给你一个无重复元素的整数数组candidates和一个目标整数target ,找出candidates中可以使数字和为目标数target的 所有不同组合,并以列表形式返回。你可以按**任意顺序 **返回这些组合。 candidates中的同一个数字可以 无限制重复被选取 。…