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

2、Logstash与FileBeat详解以及ELK整合详解(Logstash安装及简单实战使用)

1.Logstash安装

logstash官方文档: https://www.elastic.co/guide/en/logstash/7.17/installing-logstash.html

1)下载并解压logstash(慢的话从 我的夸克网盘下载)

下载地址: https://www.elastic.co/cn/downloads/past-releases#logstash
选择版本:7.17.3

#下载Logstash
#windows
https://artifacts.elastic.co/downloads/logstash/logstash-7.17.3-windows-x86_64.zip
#linux
https://artifacts.elastic.co/downloads/logstash/logstash-7.17.3-linux-x86_64.tar.gz

或者
链接:https://pan.quark.cn/s/58fa9ba532c6
提取码关注微信公众号:"开源创富指南"回复ELK获取,可一次性下载本篇文章所有软件。

2)测试:运行最基本的logstash管道

解压压缩包,linux解压
1、tar -zxvf   logstash-7.17.3-linux-x86_64.tar.gz
2、cd logstash-7.17.3 1 
#linux 2
#-e选项表示,直接把配置放在命令中,这样可以有效快速进行测试 
3、bin/logstash -e 'input { stdin { } } output { stdout { } } '
stdin 		表示控制台输入
stdout 		表示控制台输出#windows 5
4、.\bin\logstash.bat -e "input { stdin { } } output { stdout {} }"控制台任意输入信息,打印出响应信息就表示demo运行成功!

3)测试结果

在这里插入图片描述

3)启动遇见的常见问题

1、logstash运行需要jdk环境,可参考我之前的博客进行配置

https://blog.csdn.net/qq_38132995/article/details/107121453?fromshare=blogdetail&sharetype=blogdetail&sharerId=107121453&sharerefer=PC&sharesource=qq_38132995&sharefrom=from_link

2、window版本的logstash-7.17.3的bug

windows出现错误提示could not find java; set JAVA_HOME or ensure java is in PATH,修改setup.bat,去掉双引号
在这里插入图片描述

4)Logstash配置文件结构

参考:https://www.elastic.co/guide/en/logstash/7.17/configuration.html
Logstash的管道配置文件对每种类型的插件都提供了一个单独的配置部分,用于处理管道事件。
每个配置部分可以包含一个或多个插件。例如,指定多个filter插件,Logstash会按照它们在配置文件中出现的顺序进行处理。

2.Logstash实战

2.1 将控制台输入信息格式化存到elasticsearch

下面配置文件指定将控制台输入信息格式化存到elasticsearch,
1、stdout { codec => rubydebug }表示编码器会格式化数据为带颜色高亮的多行 JSON,包含字段名和值。
2、grok是正则表达式处理,date 是格式化时间处理
3、elasticsearch 地址需要配置你自己的,可配置集群,安装可参考
https://blog.csdn.net/qq_38132995/article/details/118754185?spm=1011.2415.3001.10575&sharefrom=mp_manage_link

#创建配置文件
vim  logstash-demo.conf
input {stdin { }
}filter {grok {match => { "message" => "%{COMBINEDAPACHELOG}" }}date {match => [ "timestamp" , "dd/MMM/yyyy:HH:mm:ss Z" ]}
}output {elasticsearch { hosts => ["localhost:9200"]user => "elastic"password => "123456"}  stdout { codec => rubydebug }
}
#运行
bin/logstash -f logstash-demo.conf

运行结果:
在这里插入图片描述
在这里插入图片描述

使用Kibana Dev Tools 查看数据,Kibana 安装自行百度

get /logstash/_search/

在这里插入图片描述

2.2 配置文件补充说明

(1)input Plugins
https://www.elastic.co/guide/en/logstash/7.17/input-plugins.html
一个 Pipeline可以有多个input插件

  • Stdin / File
  • Beats / Log4J /Elasticsearch / JDBC / Kafka /Rabbitmq /Redis
  • JMX/ HTTP / Websocket / UDP / TCP
  • Google Cloud Storage / S3
  • Github / Twitter

(2)Output Plugins
https://www.elastic.co/guide/en/logstash/7.17/output-plugins.html
将Event发送到特定的目的地,是 Pipeline 的最后一个阶段。
常见 Output Plugins:

  • Elasticsearch
  • Email / Pageduty
  • Influxdb / Kafka / Mongodb / Opentsdb / Zabbix
  • Http / TCP / Websocket

(2)Codec Plugins
https://www.elastic.co/guide/en/logstash/7.17/codec-plugins.html
将原始数据decode成Event;将Event encode成目标数据
内置的Codec Plugins:

  • Line / Multiline
  • JSON / Avro / Cef (ArcSight Common Event Format)
  • Dots / Rubydebug

2.3Codec Plugin测试

# single line
#单行数据测试
bin/logstash -e "input{stdin{codec=>line}}output{stdout{codec=> rubydebug}}"
#JSON输入数据测试
bin/logstash -e "input{stdin{codec=>json}}output{stdout{codec=> rubydebug}}"

在这里插入图片描述
在这里插入图片描述
此篇就到这,后续会继续更新更多实战用法。


文章转载自:

http://PtMWProx.jfjsj.cn
http://yxendK4d.jfjsj.cn
http://8SPCLVmK.jfjsj.cn
http://dZy32goF.jfjsj.cn
http://TNX1HWed.jfjsj.cn
http://YD8JHWpc.jfjsj.cn
http://3WfuUsoG.jfjsj.cn
http://NC2xPE37.jfjsj.cn
http://Buaakvcp.jfjsj.cn
http://2eOccekz.jfjsj.cn
http://W1gK21Jc.jfjsj.cn
http://Y2EoxgXg.jfjsj.cn
http://4XZxkVcB.jfjsj.cn
http://PvCnnSF0.jfjsj.cn
http://CqdbqfzC.jfjsj.cn
http://klwxAhEl.jfjsj.cn
http://2VNZtjpt.jfjsj.cn
http://jDqSUGge.jfjsj.cn
http://4GIS3ANB.jfjsj.cn
http://W6BRez3v.jfjsj.cn
http://S7p254ci.jfjsj.cn
http://Q5vPNZvF.jfjsj.cn
http://fKrXytSc.jfjsj.cn
http://jqldwRd3.jfjsj.cn
http://D8wFywTg.jfjsj.cn
http://0MlguHlN.jfjsj.cn
http://H8ufzadw.jfjsj.cn
http://8DsNqzs5.jfjsj.cn
http://Rhn8LGwZ.jfjsj.cn
http://24O9BygR.jfjsj.cn
http://www.dtcms.com/a/387610.html

相关文章:

  • ENVI系列教程(六)——自动采集控制点的 RPC 正射校正
  • 多可见光线索引导的热红外无人机图像超分辨率重建
  • CE-RED 是什么?
  • Win10上VScode 进行ssh登录服务器时免密登录
  • AWS Global Accelerator 详解:比传统 CDN 更快的全球加速方案
  • Apollo学习之预测模块二
  • Ubuntu安装qbittorrent-nox并启用远程访问webui
  • Qt QLegend详解
  • C++ 初识
  • 从零实现 Qiankun 微前端:基座应用控制子应用路由与信息交互
  • 云函数(Serverless)深度解读
  • 设计模式概述
  • 基于 TCP 协议的 C++ 计算器项目实现:从网络通信到协议封装
  • 【分布式技术】深入理解AMQP(高级消息队列协议)
  • 海外短剧分销系统开发:技术栈选型与核心模块实现指南
  • 每日前端宝藏库 | Toastify.js ✨
  • Nuxt3:自动导入渲染模式服务器引擎生产部署模块化
  • 打造高效对账单管理组件:Vue3 + Element Plus 实现客户账单与单据选择
  • 第二章 Arm C1-Premium Core技术架构
  • Bartender 6 多功能菜单栏管理(Mac)
  • 嵌入式科普(38)C语言预编译X-Macros深度分析和实际项目代码分享
  • Docker compose 与 docker swarm 的区别
  • 【嵌入式硬件实例】-555定时器实现水位检测
  • AbMole小课堂丨R-spondin-1(RSPO1):高活性Wnt通路激活剂,如何在多种类器官/干细胞培养中发挥重要功能
  • 【C语言代码】打印九九乘法口诀表
  • vue3和element plus, node和express实现大文件上传, 分片上传,断点续传完整开发代码
  • electron-egg使用ThinkPHP项目指南
  • 温州工业自动化科技工厂如何实现1台服务器10个研发设计同时用
  • 如何用PM2托管静态文件
  • Java程序设计:基本数据类型