我正在设计一个可视化java日志的工具。具体来说,每当调用方法和返回方法时,都会将这些日志打印到控制台。使用字节码操作将这些日志语句注入整个Android源代码。到目前为止,我们已经能够检测Android操作系统并生成这些日志语句。这些日志语句中包含的字段是:调用方法、方法签名、参数类型、返回类型和时间戳的进程。
使用这些日志的工具将有一个详细的视图(关于缩放)和一个高级概述(关于缩放)。我正在寻找高效的方法可视化和导航这个庞大的日志文件在高级概述,以获得有价值的信息。每个log语句与另一个log语句具有层次关系。例如,用于方法调用的log语句将是从父方法中调用的方法的所有日志语句的父语句。
我的问题是,
提前谢谢。
编辑:我添加了一些关于日志语句的分层性质的更多细节。
发布于 2017-02-14 07:14:16
我相信最接近你所描述的图表是序列图。以前有一个eclipse插件,可以监视源代码,并构建所有调用/返回/定时/等等的序列图。
这里描述了图表是如何工作的,以及如何手工创建它们:
http://agilemodeling.com/artifacts/sequenceDiagram.htm
它们是一种很好的方法来建模代码在运行时如何在很高的级别上交互。
只需快速查询--这是eclipse市场上的:
https://marketplace.eclipse.org/content/objectaid-uml-explorer#group-metrics-tab
我没有使用这个,只是查询中出现的,但是我确实记得用我正在分析的代码创建了一个很棒的图表--覆盖了整个立方体的墙,非常有用。
发布于 2017-02-14 10:59:04
从您的问题来看,您使用的数据是服务器日志;日志文件的结构非常复杂,处理不同的日志文件进行可视化也是可能的,在一定的限制下,您将需要创建或开发自己的标准工具来对日志文件进行分类和聚合,然后进行可视化处理。然而,一些工具和平台已经存在,例如:
有效的方法之一是在管道中处理数据以获取大数据信息,因为这些日志语句是使用Apache sparks、splunk或Cisco Mars的服务器日志,集成了SIEM的实时处理日志解决方案,是处理服务器日志文件的最有效方法之一。
HPE安全ArcSight数据平台还可以提供一种高性能、成本效益高的解决方案,将大型数据收集、报告和企业机器数据分析结合起来。
Clock View和PeekKernelFlows使用NetFloW日志来长期监视大的IP空间。此外,一个名为ELVIS可扩展日志可视化工具的工具可以关联服务器日志的处理过程,并提供重要数据的表示摘要视图。
我强烈建议你使用简单的原木结构。FTP或IIS服务器记录选定字段的文件,并使用D3.js模块可视化输出,专门用于与平行坐标的静态和交互式可视化。
https://stackoverflow.com/questions/42218481
复制相似问题