https://www.workerman.net/doc/webman/components/arms.html
文档中为了做统计,其实是用了分布式链路追踪最简单的实践,这几天我在想,都做到这一步了其实还可以做更多,比如链路中加入redis , mysql, function, rpc, httprequest的链路,形成完整的链路追踪。在中间件或者方法的前置和后置方法切入从而实现针对方法的统计,或者使用插件tideways收集数据后上报给Zipkin。 目前我用的tideways收集数据发送到xhgui ,这样的缺点是无法在分布式系统中实现链路追踪,在单体系统中还是很好用。
webman很优秀简单高效,希望webman能成为java界的spring。
统计这里是webman肯定要支持并完善的。
文档里已经加入了mysql的统计。由于阿里云的ARMS 链路追踪没看到有redis 的统计介绍,所以文档中没有涉及redis的统计。
如果大家有ARMS统计redis调用的方式活着更好的统计平台/软件可以分享出来。如果能形成教程或者文档分享给大家就更好了。
在我看来Zipkin是可以追踪任何组件及方法,只是在在你想要 追踪的地方加 childSpan ,不管是redis还是mysql等任何基础组件,都能收集到组件的耗时及错误。如果要追踪rpc等其他服务需要传递当前上下文到其他rpc服务。目前不便于追踪function是因为前置后置操作都要添加一串代码,如果实现了这一点就很好追踪任何组件了。也就是要很灵活的切面编程。切入追踪程序代码。
已经支持了 https://www.workerman.net/doc/webman/components/arms.html