ELK---filebeat日志收集工具

filebeat日志收集工具

filebeat日志收集工具和logstash相同

filebeat的优点:

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

filebeat可以运行在非Java环境。它可以代替logstash在非Java环境上收集日志

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

filebeat的缺点:

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

filebeat无法实现标准化输出

filebeat的数据流向和架构图:

1、filebeat收集数据发送到logstash

2、 logstash过滤数据并形成标准输出

3、 logstash发送到es主机上

4、 es主机发送给kibana形成视图方便客户端查看

logstash可以使用任意端口,只要没被占用,都可以使用,推荐:1024之后开始

filebeat部署

准备四台主机

20.0.0.10:logstash+kibana+filebeat
20.0.0.20:es1
20.0.0.30:es2
20.0.0.75:mysqlvim /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: log17   enabled: true18   paths:19     - /usr/local/nginx/logs/access.log20     - /usr/local/nginx/logs/error.log21   tags: ["nginx"]22   fields:23     service_name: 20.0.0.10_nginx24     log_type: nginx25     from: 20.0.0.10cd /opt/logvim nginx.confinput {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/loglogstash -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: logenabled: truepaths:- /usr/local/nginx/logs/access.log- /usr/local/nginx/logs/error.logtype: ["nginx_75"]fields:service_name: 20.0.0.75_nginxlog_type: nginxfrom: 20.0.0.75- type: logenabled: truepaths:- /var/log/httpd/access.log- /var/log/httpd/error.logtype: ["httpd_75"]fields:service_name: 20.0.0.75_httpdlog_type: httpdfrom: 20.0.0.75- type: logenabled: truepaths:- /usr/local/mysql/data/mysql_general.logtype: ["mysql_75"]fields:service_name: 20.0.0.75_mysqllog_type: mysqlfrom: 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虚拟机当中启动。启动一次至少占用500MBs

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毫秒。也要看机器性能

工作中一般看时间戳和message信息

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

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

相关文章

初刷leetcode题目(8)——数据结构与算法

😶‍🌫️😶‍🌫️😶‍🌫️😶‍🌫️Take your time ! 😶‍🌫️😶‍🌫️😶‍🌫️😶‍🌫️…

VM安装Centos

文章目录 第2章 VM与Linux的安装2.1 VMWare安装2.2 CentOS安装 第3章 Linux文件与目录结构3.1 Linux文件3.2 Linux目录结构 第4章 VI/VIM编辑器4.1 是什么4.2 测试数据准备4.3 一般模式4.4 编辑模式4.5 命令模式4.6 模式间转换 第5章 网络配置和系统管理操作5.1 查看网络IP和网…

Java根据指定端口关闭进程(端口占用 Web server failed to start. Port 6061 was already in use.)

查询指定端口的pid netstat -ano | findstr 6063杀掉进程 taskkill /f /pid 36804

40.0/jdbc/Java数据连接/jar包运用增删改

目录 40.1. 回顾 40.2. 正文 40.1 为什么需要jdbc 40.2 如何连接mysql数据库 40 .3 jdbc容易出现的错误 40.4 完成删除 40.5 完成修改 40.1. 回顾 1. 自联查询: 自己连接自己的表。注意:一定要为表起别名。 2. 嵌套查询: 把一个查询的结果作为另一个查询的条件值。 3. 组…

mysql处理40w数据脚本执行慢问题

需求背景: 2张表 SS_ZYXX 1w数据,WD_GZPZ 50w数据 SS_ZYXX.id WD_GZPZ.zyxx_id 找到SS_ZYXX表有数据,关联表WD_GZPZ没有数据的SS_ZYXX表的id 处理方案 方案一: 联合查询: 下面sql,在mysql执行时间3…

[带余除法寻找公共节点]二叉树

二叉树 题目描述 如上图所示,由正整数1, 2, 3, ...组成了一棵无限大的二叉树。从某一个结点到根结点(编号是1的结点)都有一条唯一的路径,比如从10到根结点的路径是(10, 5, 2, 1),从4到根结点的路径是(4, 2, 1)&#x…

DBeaver连接MySQL提示“Public Key Retrieval is not allowed“问题解决方式

更新时间:2023年10月31日 11:37:53 作者:产品人小柒 dbeaver数据库连接工具,可以支持几乎所有的主流数据库.mysql,oracle.sqlserver,db2 等等,这篇文章主要给大家介绍了关于DBeaver连接MySQL提示"Public Key Retrieval is not allowed"问…

yolov5检测(前向)输入视频输出(不在图上画标签形式的原)图片的方法,及设置每隔几帧保存的方式(不每帧保存减少重复)

这些天我忽然有个需求,要更新迭代一个场景的检测模型,甲方爸爸提供的新数据集是监控视频形式的(因为拍视频确实更加的方便),而我训练模型确实要标注好的图片形式。 根据这些条件的话,思路应该是要这样的:首先使用现有的…

大数据平台/大数据技术与原理-实验报告--实战HDFS

实验名称 实战HDFS 实验性质 (必修、选修) 必修 实验类型(验证、设计、创新、综合) 综合 实验课时 2 实验日期 2023.10.23-2023.10.27 实验仪器设备以及实验软硬件要求 专业实验室(配有centos7.5系统的linu…

文章解读与仿真程序复现思路——电力自动化设备EI\CSCD\北大核心《考虑碳排放分摊的综合能源服务商交易策略》

这篇文章的标题表明它将讨论一个关于综合能源服务商交易策略的主题,而在这个策略中,特别考虑了碳排放分摊的因素。以下是对标题中各关键词的解读: 综合能源服务商: 这指的是在能源领域提供多种服务的企业或组织,可能涵…

蓝桥杯day01——负二进制数相加

题目描述 给出基数为 -2 的两个数 arr1 和 arr2,返回两数相加的结果。 数字以 数组形式 给出:数组由若干 0 和 1 组成,按最高有效位到最低有效位的顺序排列。例如,arr [1,1,0,1] 表示数字 (-2)^3 (-2)^2 (-2)^0 -3。数组形式…

「江鸟中原」有关HarmonyOS-ArkTS的Http通信请求

一、Http简介 HTTP(Hypertext Transfer Protocol)是一种用于在Web应用程序之间进行通信的协议,通过运输层的TCP协议建立连接、传输数据。Http通信数据以报文的形式进行传输。Http的一次事务包括一个请求和一个响应。 Http通信是基于客户端-服…

C++之哈希

unordered系列容器的效率之所以比较高(尤其是查找),是因为它底层使用了哈希结构,即哈希表. 哈希概念 前言: 顺序结构以及平衡树中, 元素关键码与其存储位置之间没有对应的关系, 因此在查找一个元素 时, 必须要经过关键码的多次比较. 顺序查找时间复杂度为O(N), 平衡树中为树的…

ESP32-Web-Server编程- JS 基础 4

ESP32-Web-Server编程- JS 基础 4 概述 HTML 内联事件处理器,你永远不应该使用 HTML 事件处理器属性——因为那些已经过时了,使用它们是不好的做法。 在前端编程中,除了将期望发生的事件写为 JS 文件外,还可以使用一些组件自带…

java编程:⼀个⽂件中存储了本站点下各路径被访问的次数,请编程找出被访问次数最多的10个路径

题目 编程题:⼀个⽂件(url_path_statistics.txt)中存储了本站点下各路径被访问的次数 请编程找出被访问次数最多的10个路径时间复杂是多少,是否可以优化(假设路径数量为n)如果路径访问次数⽂件很⼤&#x…

Unity中Shader的BRDF解析(二)

文章目录 前言一、回顾一下上一篇的结尾在这里插入图片描述 二、我们来解析一下 UNITY_PBS_USE_BRDF1(高配)1、迪士尼BRDF原则2、迪士尼的漫反射函数3、参数:perceptualRoughness(感性的粗糙度)4、参数:hal…

Docker-简介、基本操作

目录 Docker理解 1、Docker本质 2、Docker与虚拟机的区别 3、Docker和JVM虚拟化的区别 4、容器、镜像的理解 5、Docker架构 Docker客户端 Docker服务器 Docker镜像 Docker容器 镜像仓库 Docker基本操作 1、Docker镜像仓库 镜像仓库分类 镜像仓库命令 docker lo…

完整版本会声会影2024新功能介绍

会声会影视频编辑软件,是视频制作初学者的法宝。其友好的操作界面,让视频制作小白也能轻松上手,丰富的媒体库资源,只需一拖一放就能快速导入编辑轨道。多轨道式的编辑功能,让各种素材的搭配使用更加得心应手。 会声会影…

管网/黑臭水/污水水质监测系统

随着城市化进程的加快,城市水务管理面临着越来越多的挑战。其中,管网、黑臭水、污水等水质监测问题尤为突出。为了解决这些问题,越来越多的城市开始应用先进的水质监测系统。 一、系统概述 管网/黑臭水/污水水质监测系统是一款集成了在线监测…

npm-工具包

npm-工具包 npm 介绍 npm&#xff08;Node Package Manager&#xff09;是用于管理和共享Node.js包&#xff08;包括代码、工具和资源&#xff09;的包管理工具 常用命令 局部安装包 npm install <package-name>: 安装指定的包 npm install <package-name> --save…