jkf*_*kff 6 debugging concurrency monitoring distributed visualization
假设我有一个(连续流)请求处理,每个请求有几个阶段.例如:"连接到数据源","从数据源读取数据","验证数据","处理数据","连接到数据接收器","将结果写入数据接收器".
哪种可视化方法甚至工具都能很好地显示这种系统的行为?
我希望能够看到哪些阶段需要很长时间,以及不同请求的阶段如何相互对齐(例如,看到数据源在被太多请求访问时响应的时间更长一旦).
如果只有几十个请求,我可以使用几十个单独的彩色时间表,但是几千个不合适.我想我可以摆脱N色时间线,其中N是"并发因素",但1)也许有更好的东西,2)也许存在这方面的工具?
PS无耻插件:一旦我找到最佳的可视化方法,我会将它添加到我的名为timeplot的漂亮工具中;)
PPS另一个无耻的插件:我决定写一个单独的工具:splot.这是它可以做的,基于一个简单的简单日志和一个awk单行:

它显示了160个集群的核心,执行RabbitMQ为其提供的任务.蓝色是"获取数据",橙色是"计算",白色是"无所事事".从该图中可以立即看出几个问题,仅通过查看日志就很难找到.
我有一个多进程软件,在 15 个内核的机器上运行。这就是我所做的。
将所有消息记录到系统日志。最后在http://www.simile-widgets.org/timeline上绘制(选定)最后 20 分钟的日志数据。为了密切关注记录的内容和模式,我使用系统日志查看器。有很多,您可以找到适合您的那一款。http://www.google.com/search?aq=0&oq=syslog+vi&sourceid=chrome&ie=UTF-8&q=syslog+viewer
希望这可以帮助。