我被分配了一个任务,在这里我需要检测一个给定的应用程序并生成一个跟踪文件,然后从跟踪文件生成一个序列图。应用程序是用Python编写的。该应用程序在方法启动和退出的地方进行了检测。
我的主要目的是在跟踪文件中找到重复的模式?
以下是跟踪文件的示例
Entering get_instance None [] None 10:25:30:743000
Entering __init__ ConfigHandler ['config_filepath'] 56663624 10:25:30:743000
Entering _load_config ConfigHandler ['path'] 56663624 10:25:30:744000
Exited _load_config ConfigHandler True 56663624 10:25:30:746000
Exited __init__ ConfigHandler None 56663624 10:25:30:747000
Exited get_instance None <commons.ConfigHandler.ConfigHandler object at 0x0000000003609E48> None 10:25:30:747000
Entering __init__ ColumnConverter [] 56963312 10:25:30:769000
Exited __init__ ColumnConverter None 56963312 10:25:30:769000
Entering __init__ PredicatesFactory [] 56963424 10:25:30:769000
Exited __init__ PredicatesFactory None 56963424 10:25:30:769000
Entering __init__ LogFileConverter [] 56963536 10:25:30:769000
Exited __init__ LogFileConverter None 56963536 10:25:30:769000
如何在跟踪文件中找到重复的模式?
我的主要目的是在跟踪文件中找到重复的模式?
最佳答案
可以使用PrefixSpan算法查找顺序规则。
报纸:
http://www.cs.uiuc.edu/~hanj/pdf/span01.pdf
本网站有开源Java代码,您可以从中获得灵感:
http://www.philippe-fournier-viger.com/spmf/index.php?link=documentation.php#examplePrefixSpan