添加Logstash Filter以改进集中化日志记录机制

Kimi K3 Arena全栈编码测试实战:超越GPT与Claude的AI编程助手深度评测 AI编程助手作为现代软件开发的重要工具,基于Transformer架构和大规模代码训练,能够理解编程逻辑并生成高质量代码。其核心原理是通过深度学习模型分析代码模式,提供智能补全、错误检测和架构建议。在技术价值方面,AI编程工具显著提升开发效率,降低人为错误,特别适合快速原型开发和代码重构。应用场景涵盖全栈开发、算法实现、数据库设计等多个领域,其中Kimi K3凭借128K超长上下文窗口和中文优化,在Arena全栈编码测试中展现出卓越性能。本次评测通过电商搜索系统、用户认证模块等实战案例,对比分析了Kimi 阅读详情

提供:ZStack云计算

系列教程

本教程为在Ubuntu 14.04上利用ELK堆栈(Elasticsearch、Logstash与Kibana)实现集中化日志记录系列五篇中的第三篇。

本教程为在CentOS 7上利用Logstash与Kibana实现集中化日志记录系列五篇中的第三篇。

内容简介

Logstash是一款强大的日志集中与分析工具,其能够帮助我们对环境拥有更为明确的宏观把握能力。要进一步提升ELK堆栈的实际效果,我们可以收集重要应用日志并利用filter实现日志数据结构化,从而确保数据内容的可读性与可查询性。我们将利用“grok”模式构建filter,并将日志内的数据解析为可用信息。

本教程为如何在Ubuntu 14.04上安装Elasticsearch、Logstash及Kibana 4的后续文章,主要讨论如何添加Logstash filter以处理多种常见应用日志。

先决条件

要完成今天的教程,大家请参阅如何在Ubuntu 14.04上安装Elasticsearch、Logstash与Kibana 4一文并完成相关安装及配置工作。

ELK服务器配置
  • Logstash安装于/opt/logstash
  • Logstash配置文件位于/etc/logstash/conf.d
  • 已经创建名为02-beats-input.conf的input文件
  • 已经创建名为30-elasticsearch-output.conf的output文件

大家还需要在Logstash服务器上创建模式目录,具体命令如下:

- sudo mkdir -p /opt/logstash/patterns

- sudo chown logstash: /opt/logstash/patterns
客户服务器配置

如果大家的设置有所不同,也可调查本教程的具体细节以配合自己的实际环境。

关于Grok

Grok负责解析文本模式,使用正则表达式并将其分配至标识符。

Grok模式的语法结构为%{PATTERN:IDENTIFIER}。每个Logstash filter包含多种能够与日志信息相匹配并将其分配给不同标识符的grok模式,而这也正是让日志内容转化为结构化信息的关键所在。

要了解更多与grok相关的细节,请参阅Logstash grok页面以及Logstash默认模式列表。

如何使用本教程

以下各主要部分都将包含大量配置细节,其亦是对特定应用进行日志收集与过滤的关键。对于每款目标应用,大家都需要对客户服务器(Filebeat)及Logstash服务器者配置变更。

Logstash Patterns部分

如果存在Logstash Patterns部分,其将包含能够被添加至Logstash服务器上/opt/logstash/patterns处新文件内的grok模式。通过这种方式,大家即可在Logstash filter中使用新的模式。

Logstash Filter部分

Logstash Filter部分将包含可被添加至新文件中的filter,其与input与output配置文件共同存在于Logstash服务器的/etc/logstash/conf.d当中。该filter负责会检测Logstash服务器如何解析相关日志文件。请记得在添加新filter后重启Logstash服务以应用变更。

Filebeat Prospector部分

Filebeat Prospectors用于指定哪些日志信息将被发送至Logstash。更多prospector配置信息可直接添加至/etc/filebeat/filebeat.yml文件内的prospectors部分之后:

Prospector示例

filebeat:
# List of prospectors to fetch data.
prospectors:
-
  - /var/log/secure
  - /var/log/messages
  document_type: syslog
-      paths:        - /var/log/app/*.log      document_type: app-access
...

在以上示例中,红色高亮部分代表一个prosepctor,其将/var/log/app/内的所有app-access类型.log文件发送至Logstash。在做出变更后,必须重启Filebeat以应用变更。

现在大家已经了解如何使用这篇教程了,接下来的部分将说明如何收集并过滤应用日志!

应用: Nginx

Logstash Patterns: Nginx

Nginx日志模式并非Logstash的默认模式之一,因此我们需要手动添加Nginx模式。

在ELK服务器上创建一个名为nginx的新模式文件:

- sudo vi /opt/logstash/patterns/nginx

而后插入以下行:

Nginx Grok Pattern

NGUSERNAME [a-zA-Z\.\@\-\+_%]+
NGUSER %{NGUSERNAME}
NGINXACCESS %{IPORHOST:clientip} %{NGUSER:ident} %{NGUSER:auth} \[%{HTTPDATE:timestamp}\] "%{WORD:verb} %{URIPATHPARAM:request} HTTP/%{NUMBER:httpversion}" %{NUMBER:response} (?:%{NUMBER:bytes}|-) (?:"(?:%{URI:referrer}|-)"|%{QS:referrer}) %{QS:agent}

保存并退出。NGINXACCESS模式将解析数据并将其分配至多个标识符(例如clientip、ident以及auth等)。

接下来,将模式文件提交至logstash:

- sudo chown logstash: /opt/logstash/patterns/nginx
Logstash Filter: Nginx

在ELK服务器上创建一个新的filter配置文件,名为11-nginx-filter.conf:

- sudo vi /etc/logstash/conf.d/11-nginx-filter.conf

而后添加以下filter:

Nginx Filter

filter {
if [type] == "nginx-access" {
grok {
  match => { "message" => "%{NGINXACCESS}" }
}
}
}

保存并退出。请注意,此filter将试图利用NGINXACCESS模式匹配nginx-access类信息。

现在重启Logstash以重载此配置:

- sudo service logstash restart
Filebeat Prospector: Nginx

在Nginx服务器上打开filebeat.yml配置文件:

- sudo vi /etc/filebeat/filebeat.yml

在filebeat部分添加以下Prospector以将nginx-access类Nginx访问日志发送至Logstash服务器:

Nginx Prospector

-
  paths:
    - /var/log/nginx/access.log
  document_type: nginx-access

保存并退出。重载Filebeat以应用变更:

- sudo service filebeat restart

现在我们的Nginx日志已经能够正确进行收集与过滤了!

应用: Apache HTTP Web服务器

Apache的日志模式属于Logstash默认模式之一,因此我们可以轻松为其设置filter。

请注意:如果大家使用红帽Linux版本,例如CentOS,那么日志将位于/var/log/httpd而非/var/log/apache2。

Logstash Filter: Apache

在ELK服务器上创建名为12-apache.conf的新filter配置文件:

- sudo vi /etc/logstash/conf.d/12-apache.conf

而后添加以下filter:

Apache Filter

filter {
if [type] == "apache-access" {
grok {
  match => { "message" => "%{COMBINEDAPACHELOG}" }
}
}
}

保存并退出。请注意,此filter将尝试利用COMBINEDAPACHELOG模式(Logstash默认模式之一)匹配apache-access类信息。

现在重启Logstash以重载配置:

- sudo service logstash restart
Filebeat Prospector: Apache

在Apache服务器上打开filebeat.yml配置文件:

- sudo vi /etc/filebeat/filebeat.yml

在filebeat部分添加以下Prospector,从而将Apache日志作为apache-access类型发送至Logstash服务器:

Apache Prospector

-
  paths:
    - /var/log/apache2/access.log
  document_type: apache-access

保存并退出。重载Filebeat以应用变更:

- sudo service filebeat restart

现在我们的Apache日志将得到收集与过滤!

总结

大家可以对各种类型的日志者收集与解析,各位不妨针对其它日志文件编写自己的filter与pattern。

如果大家还不太清楚如何使用Kibana,请参阅如何使用Kibana可视化机制与仪表板一文。

本文来源自DigitalOcean Community。英文原文:Adding Logstash Filters To Improve Centralized Logging By Mitchell Anicas

翻译:diradw

大语言模型应用安全开发实战:从OWASP LLM Top 10到架构防御 大语言模型(LLM)的集成应用开发,在带来强大能力的同时,也引入了全新的安全挑战。其安全原理与传统Web安全有显著区别,攻击面从代码层扩展到了语义层,例如通过精心构造的自然语言输入即可实施的提示词注入(Prompt Injection)。理解并应对这些风险,对于保障AI应用稳定、可信至关重要。其技术价值在于,能够将安全能力内建于AI应用的架构与开发流程中,而非事后补救,从而构建用户信任并满足合规要求。在实际应用场景中,无论是智能客服、代码助手还是内容生成平台,开发者都需要一套体系化的方法来应对训练数据泄露、 阅读详情

相关推荐

Java项目等保三级合规实战:密码、日志与访问控制核心技术解析

在信息安全领域,身份鉴别、访问控制和安全审计是构建系统安全基石的三大核心支柱。身份鉴别通过密码学技术确保用户身份的真实性,其原理涉及哈希加盐、密钥派生等密码学基础,防止凭证泄露与破解。访问控制基于RBAC(基于角色的访问控制)模型,遵循最小权限原则,通过权限标识与策略引擎实现细粒度的资源管控,确保操作授权精确到功能与数据层面。安全审计则通过日志采集、结构化存储与防篡改机制,构建完整的操作追溯链条,满足事件可重现、行为可追溯的合规要求。这些技术的工程价值在于为系统提供纵深防御能力,在金融、政务、医疗等高合规要

weixin_34216107的博客 480

centOS中linux安装logstash

一、准备工作 logstash官网下载logstash 二、安装 解压 tar -zxvf logstash-2.4.1.tar.gz 修改文件夹名字 mv logstash-2.4.1 logstash 三、配置logstash 编辑 /usr/local/logstash/config/logstash.yml配置文件修改如下内容: node.name: cpy04.dev.xjh.com #设置节点名称,一般写主机名 path.data: /usr/local/logstash/plugin

IT界的一只菜鸟 2029

【信息科学与工程学】【数据科学】数据科学领域 第十二篇 大数据主要算法07 任务工序(2)

工序类别工序名称工序描述处理时序输入输出控制点质量指标异常处理数据接入工序​流数据源连接连接到外部流数据源初始阶段流数据源配置流数据连接连接参数配置连接成功率重连机制,失败告警数据拉取从数据源拉取数据持续实时数据源连接原始数据流拉取频率,批大小数据延迟,吞吐量超时重试,流量控制反序列化将二进制数据反序列化数据到达时二进制数据结构化数据记录序列化格式反序列化成功率格式异常处理数据预处理工序​数据验证验证数据完整性和格式反序列化后原始数据记录验证后数据验证规则数据质量合格率丢弃无效数据,异常记录数据清洗清洗脏数

weixin_49199313的博客 783

logstash config filter 配置(grok、date、ruby):日志拆分转换并展示在kibana中

概要:ELK部署成功后,需要kibana图形展示某应用的性能。初步通过统计分析日志的形式来模拟。日志中有sendTime :消息发出时间,recvTime:处理完毕后打印的日志时间。通过logstash对日志进行拆分并计算recvTime和sendTime的差值即处理时间(本文标记为responseTime)。并将responseTime展示在kibana中 1、logstash配置文件 logstash的配置文件input是来自filebeat端口5044 (filebeat用于收集ou...

baidu_41614347的博客 1745

logstash的filter日期插件

logstash的filter日期插件,解压,在logstash的Gemfile中添加一行(以logstash-output-webhdfs为例): [ec2-user@ip-xxx-xxx-xxx-xxx logstash-2.3.0]$ vim Gemfile ...... gem "logstash-output-webhdfs", :path => "/home/ec2-user/logstash-output-webhdfs" 执行 bin/logstash-plugin install --no-verify

AUTO-DL平台快速部署BEVFormer:Nuscenes数据集完整训练避坑指南

本文详细介绍了在AUTO-DL平台高效部署BEVFormer模型并利用Nuscenes数据集进行完整训练的实战指南。重点解析了平台数据管理、环境配置、数据集迁移解压、预处理及训练启动等全流程中的关键步骤与常见避坑技巧,帮助研究者和工程师快速复现这一前沿视觉感知模型,节省云端训练时间与成本。

weixin_29188043的博客 335

logstash安装使用及使用filter处理日志示例

下载logstash(最好下载与es相同的版本,这里为了测试下载的低版本) wget https://download.elastic.co/logstash/logstash/logstash-2.3.4.tar.gz 解压 tar -zxvf logstash-2.3.4.tar.gz 运行测试 # 使用标准输入输出 ./logstash-2.3.4/bin/logstash -e 'in...

wkNote 3159

Windows系统下Mamba环境配置实战:从零到编译成功

本文详细记录了在Windows系统下从零开始配置Mamba深度学习环境的完整实战过程。针对官方不直接支持Windows的难点,文章提供了关键解决方案,包括安装特定版本的Python、PyTorch与第三方Triton,以及修改源码以解决Windows编译器的兼容性问题,最终成功编译并运行Mamba-SSM。

weixin_28842269的博客 500

logstash配置文件中filter方法介绍

logstash配置文件中filter方法介绍

qq_37647812的博客 1575

105. replace( )函数

【目录】

weixin_63986098的博客 1万+

双翌视觉系统配合机械手大视野定位案例(单目标带角度抓取)

一、定位原理概述 1.系统构架 视觉定位系统采用正向打光方式,光源在机械手上方,CCD从上往下拍摄,进行图像分析定位。相机将计算出的像素坐标转换为机械手的物理坐标,视觉软件与机械手进行网口通讯,将视野内物料的物理坐标发送给机械手,机械手抓取物料放在指定工位。 2.相机标定概述 系统采用宫格标定确定像素坐标和物理坐标一一对应关系,同时利用3点或者多点旋转标定求出旋转中心 系统采用宫格标定,自定义行列数和间距及旋转角度,通过机械手发送的当...

weixin_51554164的博客 2173

开源日志监控采集平台ELKF

filter中的四个插件:date 、grok 、multiline 、mutate

R1chArd_TvT 的 Blog 2127

5、OpenClaw(龙虾助手)飞书机器人完整对接指南(2026最新版)

OpenClaw v2026.2.2+ 版本,防火墙内也能正常工作,是目前最稳定、最简单的企业内部AI助手部署方案。

欢迎光临~知1而N的博客 457

5.Logstash插件—过滤器插件(Filter)

5.1 Grok 正则捕获 5.1.1 正则表达式语法 可以在 grok 里写标准的正则: \s+(?<request_time>\d+(?:\.\d+)?)\s+ 给配置文件添加第一个过滤器区段配置 配置要添加在输入和输出区段之间: 运行 logstash 进程然后输入 “begin 123.456 end”: 5.1.2 Grok 表达式语法 示例: 第一行,用普通的正则表达式来定义一个 grok 表达式 第二行,通过打印赋值格式,用前面定义好的 grok 表达式

大勇若怯任卷舒 937

基于大模型的重度膝关节骨关节炎全流程预测与治疗方案研究

本研究基于大模型构建了重度膝关节骨关节炎(KOA)预测体系,涵盖术前风险预测、手术方案优化、术中监测和术后康复指导全流程。通过分析临床和影像数据,模型在手术风险预测准确率(85%)、并发症预警(血栓预测准确率88%)等方面显著优于传统方法。研究实现了临床数据与AI技术的深度融合,术前预测指导麻醉选择(如高危患者推荐椎管内麻醉),术中实时监测生命体征,术后个性化康复方案使患者HSS评分平均提升45分。

嵌入式毕设/课设资料清单(速查手册·文档模板·题库,持续更新)→ 见最新文章 1390

基于Dify实现对Excel的数据分析

在dify部署完成后,大家就可以基于此进行各种应用场景建设,目前dify支持聊天助手(包括对话工作流)、工作流、agent等模式的场景建设,我们在日常工作中经常会遇到各种各样的数据清洗、格式转换处理、数据统计成图等数据分析工作,本次主要基于对话工作流模式对Excel文件、csv文件进行解析处理,并进行成图等数据分析工作。主要用到的插件有LLM节点,文档提取器、参数提取器、自定义代码节点、echart插件等。实现解析Excel数据,经过上述不同节点的处理分析流程,最终实现数据统计图展示。

hhue2007的专栏 1万+

Elastic:开发者上手指南

你们好,我是Elastic的刘晓国。如果大家想开始学习Elastic的话,那么这里将是你理想的学习园地。在我的博客几乎涵盖了你想学习的许多方面。在这里,我来讲述一下作为一个菜鸟该如何阅读我的这些博客文章。 我们可以按照如下的步骤来学习: 1)Elasticsearch简介:对Elasticsearch做了一个简单的介绍 2)Elasticsearch中的一些重要概念:cluster,n..........................................................

Elastic 中国社区官方博客 17万+

【零基础入门unity游戏开发——2D篇】大大简化了地形创建流程,减少Rule Tile的使用 —— AutoTile自动平铺瓦片的使用介绍

Unity 2D游戏开发中的AutoTile技术详解 摘要:本文详细介绍了Unity 2D游戏开发中的AutoTile技术,这是一种智能瓦片系统,能够自动处理地形和场景拼接。文章首先讲解了AutoTile的基本概念和优势,然后分步骤指导读者如何安装2D Tilemap Extras包、创建AutoTile、设置参数和绘制遮罩。通过实际案例演示了AutoTile的使用方法,并比较了AutoTile与Rule Tile的适用场景。最后指出AutoTile虽然使用方便,但对素材要求较高,开发者应根据项目需求选择合

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 732

Filebeat的架构分析、配置解释与示例

写在前边的话在看filebeat之前我们先来看下Beats,Beats 平台是 Elastic.co 从 packetbeat 发展出来的数据收集器系统。beat 收集器可以直接写入 Elasticsearch,也可以传输给 Logstash。其中抽象出来的 libbeat,提供了统一的数据发送方法,输入配置解析,日志记录框架等功能。也就是说,所有的 beat 工具,在配置上,除了 ...

weixin_30301449的博客 121

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

构建企业级AI代理日志监控系统:分布式架构与智能分析完整指南

在AI代理系统快速发展的今天,企业面临着海量交互日志管理的严峻挑战。Hermes Agent作为一款可扩展的AI代理框架,其日志监控系统设计展示了现代分布式监控架构的最佳实践。本文将深入解析如何构建一个完整的企业级AI代理日志监控解决方案,涵盖从日志收集到智能分析的完整技术栈。 ## 行业背景与痛点分析 🎯 随着AI代理在企业生产环境中的广泛应用,日志管理已成为系统运维的核心挑战。传统日志系

gitblog_00304的博客 991

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Golang重构后台管理系统:权限变更日志与AI风险检测实践

在微服务架构与高并发场景下,操作日志系统是保障系统安全与可观测性的核心组件。其原理在于通过结构化记录用户操作行为,形成完整的审计追踪链路。该技术的核心价值在于实现精准的操作追溯、权限变更监控与异常行为预警,是满足合规审计与安全运维的基石。典型的应用场景包括后台管理系统的权限分配、数据变更审计以及安全事件调查。本文聚焦于管理员操作日志的深度优化,详细阐述了如何利用Golang的高并发特性构建异步高效的日志写入管道,并创新性地集成AI能力进行实时风险分析。通过设计包含变更前后值、差异对比及AI注解字段的增强型日

weixin_30598225的博客 396

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

AI Agent进阶:构建具备记忆与审计能力的智能体架构

在人工智能领域,智能体(AI Agent)正从简单的指令执行工具向具备持续学习和自主决策能力的战略伙伴演进。其核心原理在于通过大语言模型(LLM)赋予其理解与生成能力,而要实现真正的“智能”,关键在于突破上下文限制并确保行为可控。这带来了显著的技术价值:使Agent能够处理复杂、长期的任务,成为开发者的得力助手。在应用场景上,这类智能体广泛用于代码审查、自动化工作流和智能客服等。本文聚焦于实现这一跃迁的两大关键技术支柱:记忆系统与审计机制。记忆系统借鉴人类记忆模型,通过向量数据库等技术构建分层记忆,解决长期

weixin_33834075的博客 414

Immich日志调试终极指南:从零构建完整监控体系

Immich作为高性能自托管照片和视频管理解决方案,其日志系统设计体现了专业级应用的技术深度。本文将深入解析Immich的日志架构,提供从基础配置到高级监控的完整解决方案,帮助中级技术用户快速定位和解决90%的系统问题。 ## 日志系统架构深度解析 Immich采用模块化日志设计,不同服务组件拥有独立的日志处理机制。核心架构分为三个层次:机器学习服务的JSON结构化日志、后端服务的环境变量控制

gitblog_00613的博客 404

基于NIST AI RMF框架构建LLM应用七层安全验证链与审计实践

人工智能风险管理是确保AI系统安全、可靠、公平部署的核心议题。NIST AI RMF框架为此提供了结构化的治理思路,强调贯穿系统全生命周期的风险映射、测量、管理与治理。在工程实践中,尤其对于大型语言模型(LLM)应用,将宏观框架落地为具体、可验证的技术控制点至关重要,这直接关系到模型在金融、医疗等高合规要求场景中的技术价值与可用性。通过构建从数据输入、模型调用、上下文管理到业务集成的纵深防御体系,并结合持续监控与审计日志,可以有效应对LLM特有的‘黑盒’困境与动态演化挑战。其中,可观测性与审计机制的建立是当

weixin_34242331的博客 529

Java+Vue音乐网站开发实战:前后端分离架构解析

现代Web应用开发中,前后端分离架构已成为主流技术方案,它通过清晰的职责划分提升了开发效率和系统可维护性。Java作为后端开发语言,凭借其强大的生态系统和并发处理能力,结合Spring Boot框架可以快速构建RESTful API服务。前端采用Vue.js框架,利用其响应式特性和组件化开发模式,能够高效实现复杂的音乐播放交互界面。这种技术组合特别适合音乐类网站的开发,需要处理音乐文件存储、用户权限管理、播放状态同步等典型场景。项目中通过MyBatis实现灵活的数据访问,使用Vuex管理全局播放状态,并采用

weixin_33778544的博客 381

goalng开发_开发篇

Go 面试,基础知识

qq_46640341的博客 1161
上一篇: 如何在Ubuntu 14.04上利用Topbeat与ELK收集基础设施指标
下一篇: 如何使用Kibana的仪表板与可视化功能
普通网友
博客等级 码龄10年 769粉丝 269原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值