全栈: 内核态 和 用户态(应用)
内核性能监控采用 eBPF
应用性能监控(APM)采用 SkyWalking
1. deepflow 本身基于 ebpf 已经有 SYS Span 和 Net Span
如果需要 APP span,则需要进一步对接 APM。
2. APM SkyWalking
Apache SkyWalking 是一个开源的应用性能监控(APM)和分布式追踪系统,主要用于微服务、云原生和容器化环境中的性能监控和故障排查。它提供了对分布式系统的可观察性,帮助开发者和运维人员理解和优化应用程序的性能。
主要功能和作用
-
分布式追踪:
- SkyWalking 能够追踪请求在微服务之间的流动,帮助用户了解请求的延迟、错误和性能瓶颈。
-
性能监控:
- 提供实时的性能指标监控,包括响应时间、吞吐量、错误率等,帮助用户及时发现和解决性能问题。
-
服务依赖分析:
- 自动识别和展示服务之间的依赖关系,帮助用户理解系统架构和服务间的交互。
-
告警和通知:
- 支持设置告警规则,当监控指标超出预设阈值时,自动发送通知,帮助运维人员及时响应问题。
-
可视化界面:
- 提供友好的用户界面,用户可以通过图表和仪表盘直观地查看系统的健康状况和性能数据。
-
多种数据源支持:
- 支持多种数据源的监控,包括 Java、Go、Node.js、PHP 等多种编程语言的应用。
-
插件扩展:
- SkyWalking 提供了丰富的插件机制,用户可以根据需要扩展功能,集成其他监控工具或数据源。
适用场景
- 微服务架构:在微服务架构中,SkyWalking 可以帮助开发团队监控和优化各个服务的性能。
- 云原生应用:在云环境中,SkyWalking 能够提供对动态和弹性服务的监控。
- 故障排查:通过追踪请求流和分析性能数据,SkyWalking 可以帮助快速定位和解决故障。
总结
Apache SkyWalking 是一个强大的工具,旨在提高分布式系统的可观察性和性能管理能力。通过提供全面的监控和追踪功能,SkyWalking 帮助开发者和运维人员更好地理解和优化他们的应用程序。