On Feb 27, 2007, at 1:13 AM, Adam Groszer wrote:
Hello Jim,
What do you say,
One event type with parameters:
- method name
- method parameters
OR
Lots of event types with parameters:
- method parameters
Lots of event types that subclass a single event type.
That want if you want them all, you subscribe to the base type,
otherwise, subscribe to the ones you want. Note that you don't need
to define interfaces for these, as subscribers can just subscribe to
classes.
Jim
Sunday, February 25, 2007, 3:21:52 PM, you wrote:
It might also be nice to have this generate events. That is, the
tracing storage should call zope.event.notify.
I intent in 3.8 or 3.9 to start having ZODB depend on zope.event. We
really should have used events rather than adding the callback's
we've added recently.
Jim
On Feb 25, 2007, at 3:19 AM, Adam Groszer wrote:
Hello Christian,
Gosh, that looks simple. A simple decorator pattern on the storage.
So I shall create a branch, something like
svn://svn.zope.org/repos/main/ZODB/branches/tracing-storage
from
svn://svn.zope.org/repos/main/ZODB/trunk
and start there?
Saturday, February 24, 2007, 8:00:40 PM, you wrote:
Hi,
I'm pretty sure there are no hooks around that do what you need.
The methods you want to tap into would be
store()
load*()
on the storages.
You might want to look into how the BlobStorage was created to make
yourself a "tracing storage" that can be wrapped around an existing
storage to allow usage with multiple other storages.
This could be a useful extensions to ZODB. If you go this way,
I'd be
happy to help out with some of the packaging mechanics and getting
the
ZConfig parts fletched out.
Christian
Am Samstag, den 24.02.2007, 14:33 +0100 schrieb Adam Groszer:
Hello,
I'm using ZODB in a GUI application, so outside of Zope.
I'm having performance problems. I'm already on the way of
figuring
out what causes a lot of object load. getTransferCounts helped in
that. But now I would need something more detailed.
Are there any hooks or something to get detailed object load
statistics?
Worst case I could hook into some methods of ZODB temporarly to
collect the data, but into which methods?
Any help or pointers are welcome.
--
Best regards,
Adam mailto:[EMAIL PROTECTED]
--
Quote of the day:
Faith is believing in things when common sense tells you not to.
- George Seaton
_______________________________________________
For more information about ZODB, see the ZODB Wiki:
http://www.zope.org/Wikis/ZODB/
ZODB-Dev mailing list - ZODB-Dev@zope.org
http://mail.zope.org/mailman/listinfo/zodb-dev
--
Jim Fulton mailto:[EMAIL PROTECTED]
Python Powered!
CTO (540) 361-1714
http://www.python.org
Zope Corporation http://www.zope.com http://
www.zope.org
--
Best regards,
Adam mailto:[EMAIL PROTECTED]
--
Quote of the day:
When you close your eyes to the devil, make sure that it is not a
wink.
- John C. Kulp
--
Jim Fulton mailto:[EMAIL PROTECTED] Python
Powered!
CTO (540) 361-1714
http://www.python.org
Zope Corporation http://www.zope.com http://www.zope.org
_______________________________________________
For more information about ZODB, see the ZODB Wiki:
http://www.zope.org/Wikis/ZODB/
ZODB-Dev mailing list - ZODB-Dev@zope.org
http://mail.zope.org/mailman/listinfo/zodb-dev