logstash运输器以及kibana的更多操作
为了达到不会因为ELK中的某一项组件因为故障而导致整个ELK工作出问题,于是
将logstash收集到的数据存入到消息队列中如redis,rabbitMQ,activeMQ或者kafka,这里以redis为例进行操作
首先将需要收集的日志数据通过logstash收集到redis中,这里需要用到output的redis插件了:
1、安装redis,这里采用yum安装,存在于epel源
2、修改redis配置
1 2 3 4 5 6 7 8 | [root@node3 ~] # egrep -v "^#|^$" /etc/redis.conf bind 192.168.44.136 protected-mode yes port 6379 tcp-backlog 511 timeout 0 tcp-keepalive 300 daemonize yes |
开启redis服务:
1 2 | [root@node3 ~] # /etc/init.d/redis start 启动 : [确定] |
编写logstash配置文件,将日志数据写入到redis中:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | [root@node3 conf.d] # cat redis_out.conf input { file { path => [ "/var/log/nginx/access.log" ] start_position => "beginning" } } output { redis { host => [ "192.168.44.136" ] data_type => "list" db => 1 key => "nginx" } } |
然后logstash开始执行:
1 2 | [root@node3 conf.d] # /usr/share/logstash/bin/logstash -f redis_out.conf Sending Logstash's logs to /var/log/logstash which is now configured via log4j2.properties |
登录redis进行查看是否已经有数据了:
1 2 3 4 5 | [root@node3 ~] # redis-cli -h 192.168.44.136 192.168.44.136:6379> select 1 OK 192.168.44.136:6379[1]> llen nginx (integer) 19 |
select 1:1就是上面logstash配置文件的db
llen nginx:nginx就是上面logstash配置文件的key
接下来将redis收集到的数据再通过logstash输出到es中:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | [root@node3 conf.d] # cat redis_input.conf input { redis { host => [ "192.168.44.136" ] data_type => "list" db => 1 key => "nginx" } } output { elasticsearch { hosts => [ "192.168.44.134:9200" ] index => "redis-nginx" } } |
开始执行:
1 2 | [root@node3 conf.d] # /usr/share/logstash/bin/logstash -f redis_input.conf Sending Logstash's logs to /var/log/logstash which is now configured via log4j2.properties |
通过登录redis查看数据是否还存在:
1 2 3 4 5 6 | [root@node3 ~] # redis-cli -h 192.168.44.136 192.168.44.136:6379> select 1 OK 192.168.44.136:6379[1]> llen nginx (integer) 0 192.168.44.136:6379[1]> |
可以看见redis中的数据已经被读取完了,现在查看es是否创建了相应的索引:
然后通过kibana将es的index添加进来:
于是整个流程就这样完成了,redis这个收集站可以换成其他消息队列服务
接下来通过操作kibana,使收集到的数据更加好看:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!