我一直在嘗試開始分析我的CherryPy網絡服務器,但文檔缺少詳細的應該如何設置。我知道我應該能夠使用cherrypy.lib.profiler
作爲中間件來安裝我的初始服務器。現在,我有這樣的代碼如下:分析CherryPy
server_app = ServerClass()
cherrypy.tree.mount(server_app, '/', '/path/to/config/file.cfg')
cherrypy.engine.start()
cherrypy.engine.block()
我要裝入的分析中間件,它似乎是像需要如下:
from cherrypy.lib import profiler
server_app = ServerClass()
server_cpapp = cherrypy.Application(server_app, '/', '/path/to/config/file.cfg')
server_profile_cpapp = profiler.make_app(server_cpapp, '/home/ken/tmp/cprofile', True)
#cherrypy.tree.mount(server_profile_cpapp)
cherrypy.tree.graft(server_profile_cpapp)
cherrypy.engine.start()
cherrypy.engine.block()
出於某種原因cherrypy.tree.mount
不工作,但如果我用cherrypy.tree.graft
一切似乎運作正常(我可以向服務器請求正常)
然而,上面的代碼生成/home/ken/tmp/cprofile
下一個cp_0001.prof
文件,我不知道如何我解釋它。我曾嘗試使用pyprof2calltree
將數據讀入KCacheGrind,但是我收到解析錯誤。我所做的事似乎是正確的,如果是的話,我該如何解釋輸出文件?
獲得這個。 –