-
RabbitMQ是一个开源的消息代理服务器,能够为您的应用提供一个通用的消息发送和接收平台,并且保证消息在传输过程中的安全性。
-
Elasticsearch是一个基于Lucene的实时分布式的搜索与分析引擎,是遵从Apache开源条款的一款开源产品,是当前主流的企业级搜索引擎。它提供了一个分布式服务,可以使您快速的近乎于准实时的存储、查询和分析超大数据集,通常被用来作为构建复杂查询特性和需求强大应用的基础引擎或技术。
阿里云Elasticsearch兼容开源Elasticsearch的功能,以及Security、Machine Learning、Graph、APM等商业功能,致力于数据分析、数据搜索等场景服务。支持5.5.3、6.3.2、6.7.0、6.8.0和7.4.0等版本,并提供了商业插件X-Pack服务。在开源Elasticsearch的基础上提供企业级权限管控、安全监控告警、自动报表生成等功能。本文使用阿里云Elasticsearch为您演示,单击此处即可免费试用。
-
Logstash是一个开源的服务处理管道,能够动态地从多个来源采集数据、转换数据,并且将数据存储到所选择的位置。通过输入、过滤和输出插件,Logstash可以对任何类型的事件加工和转换。
阿里云Logstash作为服务器端的数据处理管道,提供了100%兼容开源Logstash的能力。除了支持所有官方预置插件外,还致力于打造包含logstash-input-sls、logstash-input-oss、logstash-output-oss等适用各类场景的插件中心,为您提供更为强大的数据处理和搬迁能力,实现云上数据生态打通。本文使用阿里云Logstash为您演示,单击此处即可免费试用。
在阿里云ELK(Elasicsearch、Logstash、Kibana)生态下,Elasticsearch作为实时分布式搜索和分析引擎,Kibana为Elasticsearch提供了强大的可视化界面,Logstash提供了数据采集、转换、优化和输出的能力,可以被广泛应用于实时日志处理、全文搜索和数据分析等领域。
本文介绍如何通过Filebeat,将RabbitMQ的日志采集到阿里云Elasticsearch中,并对日志进行可视化分析与监控。
操作流程
-
完成环境准备,包括创建实例、安装RabbitMQ等。
-
配置RabbitMQ的日志级别和文件名。
-
基于Spring Boot,使用RabbitMQ的JMS客户端生产日志数据到RabbitMQ中。
-
配置Filebeat采集器,将RabbitMQ的日志数据发送到Logstash的8100端口。
-
配置Logstash管道,使用基本的Grok模式从原始消息中分离出时间戳、日志级别和消息,然后发送到阿里云ES中。
-
通过Kibana查看经Logstash处理后的数据。
-
在Kibana控制台的Discover页面,通过Filter过滤出RabbitMQ相关的日志。
-
通过Metricbeat采集RabbitMQ日志,并通过Kibana实现可视化指标监控。
准备工作
-
创建阿里云ES和Logstash实例,两者版本相同,并且在同一专有网络VPC(Virtual Private Cloud)下。
具体操作步骤请参见创建阿里云Elasticsearch实例和创建阿里云Logstash实例</