我在一台运行centos操作系统的虚拟机上每晚进行一些测试。最近,这些测试占用了可用内存的所有空间以及机器上几乎所有交换内存。我将虚拟机分配的内存增加了一倍,但情况依然存在,这导致虚拟机所在的物理主机崩溃。以前这些测试只需要一半的内存就可以正常运行,因此我需要使用某种Python内存分析器来调查发生了什么。
我已经看过了Pysizer和Heapy,但在经过研究后,Dowser似乎是我需要的,因为它不需要对代码进行任何更改。
到目前为止,根据文档和搜索,我已经得到了下面这段代码(放在自己的类中):
有可能只运行这一部分吗?我收到错误信息:
我已经看过了Pysizer和Heapy,但在经过研究后,Dowser似乎是我需要的,因为它不需要对代码进行任何更改。
到目前为止,根据文档和搜索,我已经得到了下面这段代码(放在自己的类中):
import cherrypy
import dowser
class MemoryAnalyzer:
def memoryCheck(self):
cherrypy.config.update({'server.socket_port':8080})
cherrypy.tree.mount(dowser.Root())
cherrypy.engine.start()
我原本希望这能呈现出文档中显示的Web界面,用于跟踪主机上所有Python实例的运行情况,但这并没有起作用。我对文档感到困惑:
'python dowser __init__.py'.
有可能只运行这一部分吗?我收到错误信息:
/usr/bin/python: can't find '__main__.py' in 'dowser'
能否让dowser在虚拟机上独立运行,而不是与我的测试套件一起运行?或者我需要将上述代码实现到我的主类中来运行我的测试以跟踪python的实例?