Packetbeat 概述

编辑

Packetbeat 是一个实时网络数据包分析器,您可以将其与 Elasticsearch 配合使用,从而构建一个应用程序监控和性能分析系统。Packetbeat 通过提供网络服务器之间的可见性,完善了Beats 平台

Packetbeat 的工作原理是捕获应用程序服务器之间的网络流量,解码应用层协议(HTTP、MySQL、Redis 等),将请求与响应关联起来,并记录每个事务的有趣字段

Packetbeat 可以帮助您轻松发现后端应用程序的问题,例如错误或性能问题,并使故障排除——以及修复——速度更快。

Packetbeat 嗅探服务器之间的流量,实时解析应用程序级协议,并将消息关联到事务中。目前,Packetbeat 支持以下协议:

  • ICMP(v4 和 v6)
  • DHCP(v4)
  • DNS
  • HTTP
  • AMQP 0.9.1
  • Cassandra
  • MySQL
  • PostgreSQL
  • Redis
  • Thrift-RPC
  • MongoDB
  • Memcache
  • NFS
  • TLS
  • SIP/SDP(测试版)

Packetbeat 可以将关联的事务直接插入 Elasticsearch 或使用 Redis 和 Logstash 创建的中央队列。

Packetbeat 可以在与您的应用程序进程相同的服务器上运行,也可以在它自己的服务器上运行。在专用服务器上运行时,Packetbeat 可以从交换机的镜像端口或监听设备获取流量。在这种部署中,对被监控应用程序的开销为零。有关详细信息,请参阅流量嗅探

解码第 7 层消息后,Packetbeat 将请求与响应关联起来,我们称之为事务。对于每个事务,Packetbeat 将一个 JSON 文档插入 Elasticsearch。有关哪些字段被索引的详细信息,请参阅导出字段 部分。

用于分析 Packetbeat 收集的网络流量的相同 Elasticsearch 和 Kibana 实例可用于分析 Logstash 收集的日志文件。这样,您就可以在一个系统中进行网络流量和日志分析。

Packetbeat 是一个 Elastic Beat。它基于libbeat 框架。有关更多信息,请参阅Beats 平台参考