当前位置: 首页 > news >正文

ELK日志收集系统-filbeat

filebeat日志收集工具

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

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

filebeat可以运行在非Java环境,它可以代理logstash在非java环境上收集日志

logstash不足

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

filebeat工作流程

1、filebeat收集服务日志发送给logstash

2、logstash过滤,形成标准输出,发送到es主机上

3、es主机在发送给kibana

4、kiabana图形化界面

5、用户通过kiabana查看收集的日志

filebeat实验部署
安装filebeat
准备四台主机
把filebeat源码包拖到opt目录下vim /etc/logstash/logstash.yml
64行重启服务做时间同步
yum install ntpdate -y
ntpdate ntp.aliyun.com 安装nginx
并重启服务
给nginx的日志文件给权限
chmod 777 access.log error.log给filebeat的配置文件做个备份
cp filebeat.yml filebeat.yml.bakvim filebeat.ymlfilebeat inputs模块enabled:true
paths:- /usr/local/nginx/logs/access.log- /usr/local/nginx/logs/error.log
tags: ["nginx"]
fileds:service_name: 20.0.0.12_nginxlog_type: nginxfrom: 20.0.0.12mkdir log
vim file_nginx.conf
input {beats { port => "5044"}
}
output {if "nginx" in [tags]{elasticsearch {hosts => ["20.0.0.10:9200","20.0.0.11:9200"]index => "%{[fields][service_name]}-%{YYYY.MM.dd}"}}stdout{codec => rubydebug}
}nohup ./filebaet -e -c filebeat.yml > filebeat.out &
nohup 表示在后台纪录执行命令的过程
./filebeat 运行文件
-e 使用标准输出的同时进行syslog文件输出
-c 配置文件
执行过程输出到filebeat.out,&后台运行
:查看是否报错
tail -f /opt/filebeat/filebeat.outlogstash -f file_nginx.conf --path.data /opt/test	
本地收集

远程收集,远程收集多个日志

mysqlvim /etc/my.cnf
general_log=ON
generl_log_file=/usr/local/mysql/data/mysql_general.log重启服务
查看日志文件是否创建成功在MySQL上创建表
create table xiaobu (id int(2),name varchar(20));mysql上安装nginx,httpdvim /etc/nginx/nginx.conf
改变端口
重启服务http
vim /var/www/html/index.html
vim /usr/share/nginx/html/index.html浏览器访问
20.0.0.50:8080把filebeat拖到opt目录下
压缩
cd /filebeat
vim filebeat.ymlenabled: truepaths: - /var/log/nginx/access.log- /var/log/nginx/error.logtags: ["nginx_50"]fileds:service_name: 20.0.0.50_nginxlog_type: nginxfrom: 20.0.0.50
- type: logenabled: truepaths:- /etc/httpd/logs/access.log- /etc/httpd/logs/error.logtags: ["httpd_50"]fileds: service_name: 20.0.0.50_httpdlog_type: httpdfrom: 20.0.0.50
- type: logenabled: truepaths:- /usr/log/mysql/data/mysql_general.logtags: ["mysql_50"]fileds: service_name: 20.0.0.50_mysqllog_type: mysqlfrom: 20.0.0.50cd /opt/log
vim file_mysql.log
input {beats { port => "5045"}}
output {if "nginx_50" in [tags] {elasticsearch {hosts => ["20.0.0.10:9200","20.0.0.10:9200"]index => "%{[fileds][service_name]}-%{+YYYY.MM.dd}"}}if "httpd_50" in [tags] {elasticsearch {hosts => ["20.0.0.10:9200","20.0.0.10:9200"]index => "%{[fileds][service_name]}-%{+YYYY.MM.dd}"}}if "mysql_50" in [tags] {elasticsearch {hosts => ["20.0.0.10:9200","20.0.0.10:9200"]index => "%{[fileds][service_name]}-%{+YYYY.MM.dd}"}}stdout {codec => rubydebug}
}nohup ./filebeat -e -c filebeat.yml > filbeat.out &kibana
logstash -f file_mysql.conf --path.data /opt/test1

logstash 可以使用任意端口,只要没被占用都可以使用,推荐从1024使用

logstash 性能上的优化

logstash启动时在JVM虚拟机当中启动,启动一次至少500MB的内存

找到logstash的配置文件
vim /etc/logstash/logstash.yml
pipeline.workers:2
定义了,logstash的工作线程,默认就是CPU数,4 1 4 8给一半即可,2核,2个
pipeline.batch.size: 125
一次性能够批量处理检索事件的大小 125条数
pipeline.batch.delay: 50
查询更新的延迟 50(毫秒),也可以自行调整 15(毫秒)

相关文章:

ELK日志收集系统-filbeat

filebeat日志收集工具 elk:filebeat日志收集工具和logstash相同 filebeat是一个轻量级的日志收集工具,所使用的系统资源比logstash部署和启动时使用的资源要小的多 filebeat可以运行在非Java环境,它可以代理logstash在非java环境上收集日志…...

Python小知识

个人学习笔记,用于记录使用过程中好用的技巧、好用的库。 1 小知识 1.1 相对路径 1.2 打包Exe文件 命令: pyinstaller -F main.py其中-F:覆盖之前打包的文件 mian.py:需要打包的Python文件 PS:使用pyinstaller 5.1…...

如何在Ubuntu系统上安装Redis

Redis的下载 Redis安装包分为windows版和Linux版当前示例中介绍的是Linux版本Linux的下载地址:Index of /releases/ (redis.io)本次下载的压缩包为:redis-6.2.14.tar.gzRedis的安装 将压缩包通过ssh远程工具上传到Linux服务器中解压压缩包 tar -zxvf red…...

Vue2问题:如何全局使用less和sass变量?

前端功能问题系列文章,点击上方合集↑ 序言 大家好,我是大澈! 本文约2400字,整篇阅读大约需要4分钟。 本文主要内容分三部分,如果您只需要解决问题,请阅读第一、二部分即可。如果您有更多时间&#xff…...

Java 基础学习(四)操作数组、软件开发管理

1 操作数组 1.1.1 System.arraycopy 方法用于数组复制 当需要将一个数组的元素复制到另一个数组中时,可以使用System.arraycopy方法。它提供了一种高效的方式来复制数组的内容,避免了逐个元素赋值的繁琐过程。相对于使用循环逐个元素赋值的方式&#x…...

git仓库如何撤销提交,恢复提交,重置版本命令

撤销提交: 要撤销最近一次提交(未推送到远程仓库),可以使用以下命令: git reset HEAD^该命令将会把最后一次提交的修改从当前主分支中移除,并将这些修改的状态保留在本地工作目录中。 如果想要取消所有的…...

Java 基础学习(三)循环流程控制与数组

1 循环流程控制 1.1 循环流程控制概述 1.1.1 什么是循环流程控制 当一个业务过程需要多次重复执行一个程序单元时,可以使用循环流程控制实现。 Java中包含3种循环结构: 1.2 for循环 1.2.1 for循环基础语法 for循环是最常用的循环流程控制&#xff…...

别太担心,人类只是把一小部分理性和感性放到了AI里

尽管人工智能(AI)在许多方面已经取得了重大进展,但它仍然无法完全复制人类的理性和感性。AI目前主要侧重于处理逻辑和分析任务,而人类则具有更复杂的思维能力和情感经验。 人类已经成功地将一些可以数据化和程序化的理性和感性特征…...

最新AIGC创作系统ChatGPT系统源码+DALL-E3文生图+图片上传对话识图/支持OpenAI-GPT全模型+国内AI全模型

一、AI创作系统 SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI…...

在centos7上源码安装nginx

1. 安装必要的编译工具和依赖项 在编译Nginx之前,你需要安装一些编译工具和依赖项。可以通过以下命令安装: yum install gcc-c pcre-devel zlib-devel make 2. 下载Nginx源代码 从Nginx官网下载最新的源代码。你可以使用wget命令来下载: …...

Html网页threejs显示obj,ply三维图像实例

程序示例精选 Html网页threejs显示obj,ply三维图像实例 如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助! 前言 这篇博客针对《Html网页threejs显示obj,ply三维图像实例》编写代码,代码整洁&#xff0…...

Windows平台下的oracle 11G-11.2.0.4补丁升级操作指南

序号 文件名称 文件说明 1 p6880880_112000_MSWIN-x86-64_OPatch 11.2.0.3.33 for DB 11.2.0.0.0 (Feb 2022) 用于升级 OPatch 2 DB_PSU_11.2.0.4.220118 (Jan 2022)_p33488457_112040_MSWIN-x86-64 主要补丁文件 注意:请用管理员权限运行文件内命令&#…...

MFC居中显示文字及其应用

首先获取窗口客户区矩形,然后使用DrawText输出,设置DT_CENTER 和 DT_VCENTER标志; 输出如上图;没有实现垂直居中; 最终的代码如下; void CcenterView::OnDraw(CDC* pDC) {CcenterDoc* pDoc = GetDocument();ASSERT_VALID(pDoc);if (!pDoc)return;// TODO: 在此处为…...

50-75GHz大功率六倍频源设计

摘 要 本文介绍了毫米波的特点,根据构成毫米波倍频器的不同器件,介绍了不同毫米波倍频器的实现方法,综述了毫米波倍频器这一领域的研究水平及其发展动态,重点研究频段全波导带宽倍频器的设计方法,从而将波段信号扩展到…...

Qt 软件调试(一) Log日志调试

终于这段时间闲下来了,可以系统的编写Qt软件调试的整个系列。前面零零星星的也有部分输出,但终究没有形成体系。借此机会,做一下系统的总结。慎独、精进~ 日志是有效帮助我们快速定位,找到程序异常点的实用方法。但是好的日志才能…...

docker network容器网络通信

Docker 网络主要有以下两个作用: 容器间的互联和通信以及端口映射容器IP变动时候可以通过服务名直接网络通信而不受到影响 只要是处于同一个Docker 网络下的容器就可以使用服务名直接访问,而无需担心重启。 docker容器网络模式 bridge网络模式&#…...

CVE-2022-4886 ingress命令注入复现与分析

安装 安装ingress-nginx wget https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.8.4/deploy/static/provider/cloud/deploy.yamlk apply -f deploy.yaml 原理 nginx.ingress.kubernetes.io/rewrite-target标签会在nginx配置进行插入字符串&#…...

Oracle整体架构

4. Oracle整体架构 所谓整体架构,这里是指保证Oracle数据库系统正常工作和运行所必须的组件及其实现。从大的方面讲,这主要包括实例和数据库。在此基础上细分,实例由相关内存区域和服务进程组成,数据库包括各种相关文件,而这些相关内存区域、服务进程及相关文件又可再进一…...

webpack具体实现--未完

1、前端模块打包工具webpack webpack 是 Webpack 的核心模块,webpack-cli 是 Webpack 的 CLI 程序,用来在命令行中调用 Webpack。webpack-cli 所提供的 CLI 程序就会出现在 node_modules/.bin 目录当中,我们可以通过 npx 快速找到 CLI 并运行…...

【Git】修改提交信息(单次、批量)

文章目录 修改最近一次 commit 的提交信息修改某次 commit 的提交信息方法总结 修改最近一次 commit 的提交信息 git commit --amend -m "new message"修改某次 commit 的提交信息 git log --oneline 运行结果如下2f80f1b commit 4 9ee990a 第三次提交 40f2f03 comm…...

零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?

一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...

synchronized 学习

学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...

线程同步:确保多线程程序的安全与高效!

全文目录: 开篇语前序前言第一部分:线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分:synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分&#xff…...

【git】把本地更改提交远程新分支feature_g

创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...

vue3+vite项目中使用.env文件环境变量方法

vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...

html css js网页制作成品——HTML+CSS榴莲商城网页设计(4页)附源码

目录 一、👨‍🎓网站题目 二、✍️网站描述 三、📚网站介绍 四、🌐网站效果 五、🪓 代码实现 🧱HTML 六、🥇 如何让学习不再盲目 七、🎁更多干货 一、👨‍&#x1f…...

技术栈RabbitMq的介绍和使用

目录 1. 什么是消息队列?2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...

【Go语言基础【12】】指针:声明、取地址、解引用

文章目录 零、概述:指针 vs. 引用(类比其他语言)一、指针基础概念二、指针声明与初始化三、指针操作符1. &:取地址(拿到内存地址)2. *:解引用(拿到值) 四、空指针&am…...

Bean 作用域有哪些?如何答出技术深度?

导语: Spring 面试绕不开 Bean 的作用域问题,这是面试官考察候选人对 Spring 框架理解深度的常见方式。本文将围绕“Spring 中的 Bean 作用域”展开,结合典型面试题及实战场景,帮你厘清重点,打破模板式回答&#xff0c…...

根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的----NTFS源代码分析--重要

根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的 第一部分: 0: kd> g Breakpoint 9 hit Ntfs!ReadIndexBuffer: f7173886 55 push ebp 0: kd> kc # 00 Ntfs!ReadIndexBuffer 01 Ntfs!FindFirstIndexEntry 02 Ntfs!NtfsUpda…...