Packetbeat 概述
编辑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 平台参考。