Elastic APM由四个组件组成:
- APM agents:以应用程序库的形式提供,收集程序中的性能监控数据并上报给APM server。
- APM Server:从APM agents接收数据、进行校验和处理后写入Elasticsearch特定的APM索引中。虽然agent也可以实现为:将数据收集处理后直接上报到ES,不这么做官方给出的理由:使agent保持轻量,防止某些安全风险以及提升Elastic组件的兼容性。
- Elasticsearch:用于存储性能指标数据并提供聚合功能。
- Kibana:可视化性能数据并帮助找到性能瓶颈。
优点是, 提供集成日志的方案,后续如果需要一体化,比较方便。