首先网上前辈们说的方法试过了,先要把library_path和include_path的值改成graphviz的相应路径名,然后安装mingw用它进行编译,但是始终出现unableto find vcvarsall.dat文件的错误。后来又试着装了一个MicrosoftVisual Studio 8 express,终于不报这个错误了,但是又有了新的错误,提示在msvc9compiler.py中 if len(result) != len(interesting):
raise ValueError(str(list(result.keys())))这句话有错误,但是也看不明白,不知如何是好。重启电脑,再编译一次,就提示新的错误了,这以后就顺畅多了。
首先是说找不到mspdb,参考大神的解决方法http://blog.youkuaiyun.com/dyk_x/article/details/4205993,不报错了。
接下来就是一连串的错了,首先io.h等头文件提示找不到,好吧,就在include文件里面,但是环境变量没有设置,所以把目录添加到环境变量include里面,好了;
又是*.lib文件找不到,继续添加环境变量,我也不知道应该是lib还是libpath,就把两个都一模一样的复制过去。
反反复复添加了多次环境变量之后,终于编译成功,然后install安装,在python中importpygraphviz,这次没有报错了。
Kieker对java应用程序的监控
再次学习kieker的路径分析功能,这次算是彻底搞懂了,aspectjweaver可以直接对源程序进行插桩,kieker可以监控,只需要在编译好的文件夹中放入配置文件,一个是aop文件,告诉kieker对那些文件进行监控以及监控那些方法,如果是full的话,就全部监控;而properties文件用于配置在控制台窗口显示的监控信息。
Kieker的example中的第五部分提供的源代码不知为何意,应该还是手动进行了插桩,还是比较麻烦。所以直接把最原始的代码弄出来,然后进行编译,修改配置文件,然后运行,竟然能够得到监控记录,而且比userguide中给出的信息还全,就说明要对源程序进行监控,完全不需要手动插桩。
步骤是首先对源程序进行编译,得到class文件,然后,运行程序,调用kieker和aspectjweaver包就可以得到监控记录,完全不用在源代码中加入任何信息。