0

0

Linux日志收集项目教程_FilebeatLogstashELK整合实践

舞夢輝影

舞夢輝影

发布时间:2026-01-02 10:13:03

|

608人浏览过

|

来源于php中文网

原创

Filebeat+Logstash+ELK是生产常用日志方案,Filebeat采集日志,Logstash解析过滤,Elasticsearch存储,Kibana可视化;需校验权限、端口、索引模式及时区,建议启用队列与告警提升稳定性。

linux日志收集项目教程_filebeatlogstashelk整合实践

Filebeat + Logstash + ELK(Elasticsearch + Kibana)是生产环境中最常用的日志收集与分析方案之一。它轻量、可扩展、支持结构化处理,适合从服务器、应用、容器等多源采集日志并统一可视化分析。

一、明确各组件角色与数据流向

理解分工是搭建前提:

  • Filebeat:轻量级日志采集器,部署在日志产生端(如Web服务器),负责读取文件、监控新增内容、发送至Logstash或直连Elasticsearch
  • Logstash:日志“加工中心”,接收Filebeat数据,做解析(如grok提取字段)、过滤(丢弃调试日志)、丰富(添加host、环境标签)后转发
  • Elasticsearch:分布式搜索引擎,存储结构化日志,支撑快速检索与聚合
  • Kibana前端可视化平台,通过索引模式关联ES数据,构建仪表板、告警、发现页

典型流程:Filebeat → Logstash → Elasticsearch → Kibana

二、快速部署关键配置(以Nginx访问日志为例)

假设目标:采集/var/log/nginx/access.log,提取status、response_time、uri等字段,在Kibana中按状态码统计请求量。

1. Filebeat配置(/etc/filebeat/filebeat.yml)

filebeat.inputs:
- type: filestream
  enabled: true
  paths:
    - /var/log/nginx/access.log
  fields:
    app: nginx
    env: prod

output.logstash: hosts: ["localhost:5044"]

2. Logstash配置(/etc/logstash/conf.d/nginx-pipeline.conf)

10Web
10Web

AI驱动的WordPress网站自动构建器,托管和页面速度助推器

下载
input {
  beats {
    port => 5044
  }
}

filter { if [fields][app] == "nginx" { grok { match => { "message" => "%{IPORHOST:clientip} %{USER:ident} %{USER:auth} [%{HTTPDATE:timestamp}] \"%{WORD:verb} %{DATA:request} HTTP/%{NUMBER:httpversion}\" %{NUMBER:status} (?:%{NUMBER:bytes}|-) %{QS:referrer} %{QS:agent} \"%{NUMBER:response_time}\"" } } mutate { convert => { "status" => "integer" } convert => { "response_time" => "float" } } } }

output { elasticsearch { hosts => ["https://www.php.cn/link/fb7850115a917d3ab720269da3e667de"] index => "nginx-access-%{+YYYY.MM.dd}" } }

注意:确保Logstash有对应grok pattern(如IPORHOSTHTTPDATE),可用dissect替代复杂grok提升性能;时间戳需用@timestamp字段对齐ES时序能力。

三、验证与排错要点

常见问题不是配置写错,而是权限、路径、网络或时区没对齐:

  • Filebeat无法读日志?检查filebeat用户是否有/var/log/nginx/目录及文件读取权限(ls -l /var/log/nginx/access.log
  • Logstash收不到数据?确认systemctl status logstash运行正常,并用telnet localhost 5044测试端口连通性
  • ES里没数据?查看Logstash日志(/var/log/logstash/logstash-plain.log),搜索errorpipeline关键字;同时确认ES是否健康(curl -X GET "localhost:9200/_cluster/health?pretty"
  • Kibana看不到新索引?进入Stack Management → Index Patterns,创建匹配nginx-access-*的索引模式,并设@timestamp为时间字段

四、进阶建议:提升稳定性与可观测性

生产环境不只求通,更要稳和可维护:

  • 启用Filebeat持久化队列(queue.mem.events: 4096)或磁盘队列,避免Logstash短暂不可用导致日志丢失
  • Logstash使用dead_letter_queue捕获解析失败事件,便于后续人工排查格式异常日志
  • 为不同服务定义独立pipeline(如nginx、springboot、docker),用if [fields][app] == "xxx"分流,避免单点故障影响全局
  • 在Kibana中配置Alerting规则,例如:5分钟内5xx错误率超5%,自动邮件通知运维群

整个链路无需重写代码,靠配置驱动,但每层都需主动验证输出,而非仅看服务是否启动。

相关专题

更多
nginx 重启
nginx 重启

nginx重启对于网站的运维来说是非常重要的,根据不同的需求,可以选择简单重启、平滑重启或定时重启等方式。本专题为大家提供nginx重启的相关的文章、下载、课程内容,供大家免费下载体验。

227

2023.07.27

nginx 配置详解
nginx 配置详解

Nginx的配置是指设置和调整Nginx服务器的行为和功能的过程。通过配置文件,可以定义虚拟主机、HTTP请求处理、反向代理、缓存和负载均衡等功能。Nginx的配置语法简洁而强大,允许管理员根据自己的需要进行灵活的调整。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

491

2023.08.04

nginx配置详解
nginx配置详解

NGINX与其他服务类似,因为它具有以特定格式编写的基于文本的配置文件。本专题为大家提供nginx配置相关的文章,大家可以免费学习。

496

2023.08.04

tomcat和nginx有哪些区别
tomcat和nginx有哪些区别

tomcat和nginx的区别:1、应用领域;2、性能;3、功能;4、配置;5、安全性;6、扩展性;7、部署复杂性;8、社区支持;9、成本;10、日志管理。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

223

2024.02.23

nginx报404怎么解决
nginx报404怎么解决

当访问 nginx 网页服务器时遇到 404 错误,表明服务器无法找到请求资源,可以通过以下步骤解决:1. 检查文件是否存在且路径正确;2. 检查文件权限并更改为 644 或 755;3. 检查 nginx 配置,确保根目录设置正确、没有冲突配置等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

329

2024.07.09

Nginx报404错误解决方法
Nginx报404错误解决方法

解决方法:只需要加上这段配置:try_files $uri $uri/ /index.html;即可。想了解更多Nginx的相关内容,可以阅读本专题下面的文章。

3505

2024.08.07

什么是分布式
什么是分布式

分布式是一种计算和数据处理的方式,将计算任务或数据分散到多个计算机或节点中进行处理。本专题为大家提供分布式相关的文章、下载、课程内容,供大家免费下载体验。

319

2023.08.11

分布式和微服务的区别
分布式和微服务的区别

分布式和微服务的区别在定义和概念、设计思想、粒度和复杂性、服务边界和自治性、技术栈和部署方式等。本专题为大家提供分布式和微服务相关的文章、下载、课程内容,供大家免费下载体验。

229

2023.10.07

php源码安装教程大全
php源码安装教程大全

本专题整合了php源码安装教程,阅读专题下面的文章了解更多详细内容。

74

2025.12.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 6.4万人学习

Git 教程
Git 教程

共21课时 | 2.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号