Logstash 数据管道测试案例:从 Filebeat 接收日志并输出至黑屏幕与 Elasticsearch(基于Rocky Linux 9.6)

测试案例-编写logstash配置文件(logstash节点执行)

这里采用循序渐进的方式展开,可以先写一个简单的测试输出到屏幕。 编写一个将数据输出到屏幕的配置文件:

复制代码
vi /etc/logstash/conf.d/test01.conf
input {
  beats {
    port => 5044 #接收来自192.168.92.17运行的filebeat,发送给192.168.92.16:5044
  }
}

output {
  stdout { } #这里是默认输出到192.168.92.16(logstash节点)的黑屏幕上面
}

修改/etc/logstash/logstash.yml文件,添加如下字段:

复制代码
#文件的87行,设置管道配置文件路径为/etc/logstash/conf.d
path.config: /etc/logstash/conf.d #conf.d目录自己创建

手动启动 Logstash 进程并加载指定的配置文件,启动方式如下:(-f后面的文件使用绝对路径来测试,没问题)

复制代码
logstash -f /etc/logstash/conf.d/test01.conf

出现 Successfully started Logstash APl endpoint 就表示启动成功。

启动成功后,我们尝试访问nginx站点,然后生成的日志数据输出到屏幕上。

复制代码
{
           "ecs" => {
        "version" => "1.12.0"
    },
         "agent" => {
                  "id" => "029c6c1b-a31d-422d-a8f3-467785cacc07",
             "version" => "7.17.10",
            "hostname" => "filebeat01",
        "ephemeral_id" => "dbe22ac1-7219-4b78-a1cf-9c3cb6052a83",
                "name" => "filebeat01",
                "type" => "filebeat"
    },
      "@version" => "1",
          "tags" => [
        [0] "beats_input_codec_plain_applied"
    ],
         "event" => {
         "dataset" => "nginx.ingress_controller",
          "module" => "nginx",
        "timezone" => "+08:00"
    },
       "message" => "192.168.92.1 - - [13/Mar/2026:13:33:19 +0800] \"GET /icons/poweredby.png HTTP/1.1\" 200 15443 \"http://192.168.92                   .17/\" \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 Edg/143.0.0.0                   \" \"-\"",
    "@timestamp" => 2026-03-13T12:51:29.768Z,
       "service" => {
        "type" => "nginx"
    },

日志文件已经传输过来了,接下来测试把这些数据写入到elasticsearch中。

重新编写配置文件:(vi /etc/logstash/conf.d/test02.conf)(修改地点是logstash节点)

复制代码
input {
  beats {
    port => 5044
  }
}

output {
  elasticsearch {
    hosts => ["192.168.92.14"]
    index => "nginx-%{+YYYY.MM.dd}"
  }
}

手动启动 Logstash 进程并加载指定的配置文件,启动方式如下:(-f后面的文件使用绝对路径来测试,没问题)

复制代码
logstash -f /etc/logstash/conf.d/test02.conf

尝试访问nginx(浏览器上输入192.168.92.17:80)查看 elasticsearch-head中是否有新的索引被创建出来。

相关推荐
wuhanzhanhui5 分钟前
从精密齿轮到智慧流体:2026武汉动力传动展览会,重构未来工业动力
大数据·人工智能
无小道1 小时前
深入解析操作系统文件缓冲区:页缓存、基数树与f_pos的协同设计
linux·缓存·文件缓冲区
普马萨特1 小时前
代际更替与结构优化:中国2G/3G/4G/5G基站总量趋势深度研究
大数据
八月瓜科技2 小时前
八月瓜科技案例入选“教育部2025年教育信息技术应用创新优秀案例集”
大数据·人工智能·科技
AOwhisky2 小时前
Linux(CentOS)系统管理入门笔记(第十二期)——系统管理工具与软件包管理(上篇):Cockpit 与 RPM 包管理
linux·运维·笔记·centos·云计算
寒水馨2 小时前
Linux下载、安装godot-4.7.1-stable(附安装包Godot_v4.7.1-stable_linux.x86_64.zip)
linux·游戏引擎·godot·游戏开发·2d游戏·3d游戏·godot engine
念恒123062 小时前
Socket编程UDP(中)
linux·网络协议·udp
深耕运维十八载云架构实务2 小时前
系统故障玄学之内存明明显示空闲,服务器却频繁卡顿卡死?拆解被忽略的 Linux 隐性内存陷阱
linux
qetfw3 小时前
CentOS 7 搭建 Sendmail + Dovecot 邮件服务器:SMTP、POP3、IMAP 与 TLS
linux·centos
微石科技3 小时前
慢病居家长期服务方案怎么选?宁波微石科技星梦云康打通居家慢病服务闭环
大数据·人工智能