Logstash 安装与部署(无坑版)

news2024/12/24 0:05:42

下载

版本对照关系:ElasticSearch 7.9.2 和 Logstash 7.9.2 ;

官方下载地址

选择ElasticSearch版本一致的Logstash版本

https://www.elastic.co/cn/downloads/logstash

下载链接:https://artifacts.elastic.co/downloads/logstash/logstash-7.9.2-linux-x86_64.tar.gz

解压文件

下载完成后,将文件拷贝到自己喜欢的目录!!!

tar -zxvf logstash-7.9.2-linux-x86_64.tar.gz
cd /usr/local/app/logstash-7.9.2

或者

cd /你自己的安装目录/logstash-7.9.2

新建配置文件

切换到config目录,可以按照logstash-sample.conf示例文件,添加连接的配置文件;

  • logstash-sample.conf示例

请在此添加图片描述

  • 解释

配置示例是一个 Logstash 配置文件,用于从 Beats 输入数据并将其发送到 Elasticsearch。

这个配置文件包含两部分:

  1. Input 部分:该部分定义了输入插件,指定 Logstash 应该从哪个来源接收数据。在这里,使用的是 Beats 输入插件,它监听端口 5044,以接收从 Beats 发送的数据。Beats 是一组轻量级数据采集器,通常用于收集服务器日志和监控数据。
  2. Output 部分:该部分定义了输出插件,指定 Logstash 应该将接收到的数据发送到哪个目标。在这里,使用的是 Elasticsearch 输出插件,它将数据发送到 Elasticsearch 集群。你可以看到以下配置选项:

hosts:指定了 Elasticsearch 集群的主机地址和端口。在这里,数据将被发送到本地主机的 Elasticsearch 服务,端口为 9200。
index:定义了数据在 Elasticsearch 中的索引名称。这里使用了 Logstash 的动态索引命名,基于数据的 metadata 信息和日期来生成索引名称。
userpassword:这两行是被注释掉的,通常用于指定连接 Elasticsearch 集群所需的用户名和密码。如果 Elasticsearch 集群需要身份验证,你可以取消注释并提供正确的用户名和密码。

这个配置文件的作用是接收来自 Beats 的日志数据,并将其索引到 Elasticsearch 中,以便进行检索和分析。确保 Logstash 和 Elasticsearch 服务正在运行,并监听相应的端口(例如,5044 和 9200),以使这个配置文件正常工作。


以上只是示例,下面我们新建logstash-springboot.conf文件,这种类型的文件可以有多个。

  • 新建配置logstash-springboot.conf
input {
  tcp {
    mode => "server"
    host => "0.0.0.0"
    port => 5670
    codec => json_lines
  }
}
filter {

}
output {
  elasticsearch {
    hosts => ["http://127.0.0.1:9200"]
    index => "log-goboy-dev-%{+yyyy.MM.dd}" 
  }
}
  • 解释

这是 Logstash 配置文件,用于接收来自 TCP 输入的 JSON 格式日志数据,并将其发送到 Elasticsearch 中。

让我解释每个部分的配置:

Input 部分
tcp 插件被用作输入插件,它监听端口 5670并接受传入的 TCP 连接。
mode => "server" 表示 Logstash 将以服务器模式运行,等待来自客户端的连接。
host => "0.0.0.0" 指定 Logstash 应该接受所有网络接口上的连接,因此可以从任何 IP 地址连接到 Logstash。
port => 5670 指定监听的端口号为 5670。
codec => json_lines 表示接收到的数据将被解析为 JSON 格式的行。
Filter 部分:在你的配置中,过滤器部分是空的。这意味着 Logstash 不会对接收的数据进行进一步的处理或筛选。你可以在这部分添加过滤器插件,以根据需要对数据进行处理、转换或过滤。
Output 部分
elasticsearch 输出插件用于将数据发送到 Elasticsearch。
hosts => ["http://127.0.0.1:9200"] 指定了 Elasticsearch 集群的主机地址和端口。
index => "log-goboy-dev-%{+yyyy.MM.dd}" 定义了数据在 Elasticsearch 中的索引名称。这里使用 Logstash 的动态索引命名,基于日期来生成索引名称。

这个配置文件的作用是将通过 TCP 连接接收到的 JSON 格式的日志数据发送到 Elasticsearch 中,每天都会创建一个新的索引以便于日志的时间分割。确保 Logstash 和 Elasticsearch 服务正在运行,并监听相应的端口(例如,5044 和 9200),以使这个配置文件正常工作。如果需要对数据进行更多的处理,可以在过滤器部分添加适当的过滤器插件。


指定配置

编辑config/pipelines.yml文件

  • pipeline.id指定该管道id
  • path.config指定ES和logstash连接的配置文件,就是上一步新建的conf文件的绝对路径
- pipeline.id: log_dev
  path.config: "/usr/local/app/logstash-7.9.2/config/logstash-springboot.conf"
  • 切换到bin目录,执行
./logstash

完成

打印如下内容,则代表启动成功

请在此添加图片描述

注意

在安装和部署的过程中,注意版本之间的差异化。特别要主要安全组端口的开发情况!!!

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

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

相关文章

一、XML与Tomcat

文章目录 1. XML简介1.1 什么是XML1.2 XML的作用 2. XML语法2.1 文档声明2.2 xml 注释2.3 元素(标签)2.4 xml 属性2.5 语法规则2.5.1 所有XML元素都须有关闭标签(也就是闭合)2.5.2 XML 标签对大小写敏感2.5.3 XML 必须正确地嵌套2…

# windows 运行框输入mrt提示错误:Windows 找不到文件‘mrt‘。请确定文件名是否正确后,再试一次

windows 运行框输入mrt提示错误:Windows 找不到文件’mrt’。请确定文件名是否正确后,再试一次 一、错误描述: 当您在 windows 运行框中输入mrt并收到错误提示“Windows 找不到文件’mrt’。请确定文件名是否正确后,再试”时,这…

【无人机设计与控制】四旋翼无人机轨迹跟踪及避障Matlab代码

摘要 本文主要研究了四旋翼无人机在复杂环境中的轨迹跟踪与避障控制策略。通过Matlab/Simulink对四旋翼无人机进行了建模与仿真。系统集成了避障算法,使得无人机在执行任务时能够有效避开障碍物,保证飞行的安全性与稳定性。 理论 无人机飞行控制通常涉…

着色器 简介

着色器(Shader)是运行在 GPU 上的小程序。这些小程序为图形渲染管线的某个特定部分而运行。从基本意义上来说,着色器只是一种把输入转化为输出的程序。着色器也是一种非常独立的程序,因为它们之间不能相互通信;它们之间…

【JavaSE】--数组的定义与使用

文章目录 1. 数组的基本概念1.1 什么是数组1.2 数组的创建及初始化1.2.1 数组的创建1.2.2 数组的初始化 1.3 数组的使用1.3.1 数组中元素访问1.3.2 遍历数组 2. 数组是引用类型2.1 初识JVM的内存分布2.2 基本类型变量与引用类型变量的区别2.3 再谈引用变量2.4 认识null 3. 数组…

es的封装

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、类和接口介绍0.封装思想1.es的操作分类 二、创建索引1.成员变量2.构造函数2.添加字段3.发送请求4.创建索引总体代码 三.插入数据四.删除数据五.查询数据 前…

公共建筑能耗监测系统解决方案

jianzhunenghao 建筑节能监测系统公共建筑能耗监测系统建筑能耗监测系统节能监测系统能耗监测建筑能耗监测能耗分析能耗管理能耗预测能耗监控能耗监测平台建筑能耗 介绍 能耗监控系统是为耗电量、耗水量、耗气量(天然气量或者煤气量)、集中供热耗热量…

STHS34PF80高灵敏度红外感应器(2)----InfraredPD存在感应检测

STHS34PF80人体存在传感器.2--InfraredPD存在感应检测 概述视频教学样品申请完整代码下载硬件准备开启CRC串口设置开启X-CUBE-MEMS1InfraredPD文件InfraredPD算法库注意事项对应DEMOMX_MEMS_InitMX_MEMS_Processt_obj_comp(补偿后的物体温度)t_obj_chang…

清理C盘缓存,电脑缓存清理怎么一键删除,操作简单的教程

清理C盘缓存是维护电脑性能、释放磁盘空间的重要步骤。以下是一个详细且操作简单的教程,旨在帮助用户通过一键或几步操作完成C盘缓存的清理。 1.使用Windows系统自带工具 磁盘清理 1.打开磁盘清理工具: -按下“WinE”打开文件资源管理器…

数据结构与算法——Java实现 5.链表

目录 一、定义 链表的分类 二、性能 随机访问 插入或删除 三、单向链表 链表内部节点类 ① 增加(插入) 1.头插法 2.寻找最后一个节点位置 3.尾插法 4.根据索引位置插入 ② 删除 1.删除首个结点 2.获取链表的指定索引节点 3.删除链表指定索引元素节点 4.删…

【Java】【力扣】83.删除排序链表中的重复元素

题目 给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。 示例 1: 输入:head [1,1,2] 输出:[1,2]示例 2: 输入:head [1,1,2,3,3] 输出&#…

js 控制台自动 debugger

在全局文件中加入以下代码,即可打开控制台自动调试 setInterval(function() {check() }, 1000); var check function() {function doCheck() {(function() {}["constructor"]("debugger")())doCheck()}try {doCheck()} catch (err) {} }; che…

Flask-WTF的使用

组织一个 Flask 项目通常需要遵循一定的结构,以便代码清晰、可维护。下面是一个典型的 Flask 项目结构: my_flask_app/ │ ├── app/ │ ├── __init__.py │ ├── models.py │ ├── views.py │ ├── forms.py │ ├── templat…

T3打卡-天气识别

🍨 本文为🔗365天深度学习训练营中的学习记录博客🍖 原作者:K同学啊 1.导入数据: #设置GPU import tensorflow as tf gpustf.config.list_physical_devices("GPU") if gpus:gpu0gpus[0]tf.config.experime…

Android OkHttp源码分析(一):为什么OkHttp的请求速度很快?为什么可以高扩展?为什么可以高并发

目录 一、为什么要使用OkHhttp? 在不使用OkHhttp之前,我们都是在使用什么?使用HttpURLConnection,那么我们看看HttpURLConnection发起一次请求,两次请求要花多长时间,而OkHttp花多长时间。HttpURLConnection会比okht…

【银河麒麟高级服务器操作系统实例】tcp_mem分析处理全过程内核参数调优参考

了解更多银河麒麟操作系统全新产品,请点击访问 麒麟软件产品专区:https://product.kylinos.cn 开发者专区:https://developer.kylinos.cn 文档中心:https://documentkylinos.cn 现象描述 系统中出现大量的TCP: out of memory…

Mina protocol - 体验教程

Mina protocol - 体验教程 一、零知识证明( Zero Knowledge Proof )1、零知识证明(ZKP)的基本流程工作流程: 2、zkApp 的优势:3、zkApp 每个方法的编译过程: 二、搭建第一个zkapp先决条件1、下载或者更新 zkApp CLI​2…

基于Springboot美食推荐小程序的设计与实现(源码+数据库+文档)

一.项目介绍 pc端: 支持用户、餐厅老板注册 支持管理员、餐厅老板登录 管理员: 管理员模块维护、 餐厅管理模块维护、 用户管理模块维护、 商品管…

Qt:NULL与nullptr的区别(手写nullptr)

前言 发现还是有人不知道NULL 与nullptr的区别,故写此文章。 正文 对于NULL 先看NULL的源码 我们可以看出这段代码是一个典型的预处理器宏定义块,用于处理 NULL 宏的定义。 先看开头 #if defined (_STDDEF_H) || defined (__need_NULL)这行代码检…

git报错,error: bad signature 0x00000000fatal: index file corrupt

报错 git -c diff.mnemonicprefixfalse -c core.quotepathfalse --no-optional-locks checkout daily --progress error: bad signature 0x00000000 fatal: index file corrupt 原因 git 仓库中索引文损坏 处理 1.该备份的先备份 2.删除索引并重置 rm -f .git/index git r…