[Zope] debugging memory exhaustion
Dieter Maurer
dieter at handshake.de
Mon Aug 13 14:20:31 EDT 2007
Chris Withers wrote at 2007-8-13 10:02 +0100:
> ...
>> It is used for the "Extreme cache detail" ZMI page
>> but can also be used differently (e.g. from an "External Methode"
>> or via the "ZServer Monitor Server" interactively).
>
>I've never known how to use the monitor server. Are there examples or
>documentation anywhere?
Yes, I have seen monitor server documentation -- but I forgot where.
But it is very easy:
You need to enable the monitor server. This entails
its configuration and the creation of an emergency user
(with plain text password).
Then, you use the "ZServer.medusa.monitor_client[_win32]"
to connect to your monitor server.
You will be asked for authentication and use the emercency user
and its password.
After successful authentication, you have a Python interpreter prompt
inside your Zope process.
You use
"from Zope2 import app; app=app()"
and you have an "app" object -- similar to "bin/zopectl debug".
> ...
>Yes, but it's a bad failure mode.
>Slow-but-functional is better than throwing MemoryErrors in my book...
>(especially as a trashed cache resolves itself, whereas MemoryErrors
>always seem to require a restart...)
How preferences differ....
But after you have found the culprit (and removed it), there will
be no more "MemoryError"s :-)
--
Dieter
More information about the Zope
mailing list