Improved logging of ZEO reads and writes
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
ZODB |
New
|
Wishlist
|
Unassigned |
Bug Description
In a large-scale ZEO setup like we have it at Haufe, it is hard to track down what's going on ZEO level - especially when you have
to track down conflict errors, transaction write congestion etc.
The attached version of ZEO/ServerStub.py adds additional logging to the ZEO client. The logging can be controlled for reads and
write using the ZEO_LOG_CLIENT_READ and ZEO_LOG_
The related logs lock like this:
2009-09-04 08:38:38 INFO ZeoServerStub-write tpc_begin: tid=None descr='
2009-09-04 08:38:38 INFO ZeoServerStub-write storea: oid='\x00\
2009-09-04 08:38:38 INFO ZeoServerStub-write vote: tid=37611344 time=39.543ms
2009-09-04 08:38:38 INFO ZeoServerStub-write tpc_finish: tid=37611344 time=95.546ms
2009-09-04 08:38:37 INFO ZeoServerStub-read loadEx: oid='\x00\
2009-09-04 08:38:37 INFO ZeoServerStub-read loadEx: oid='\x00\
2009-09-04 08:38:37 INFO ZeoServerStub-read loadEx: oid='\x00\
2009-09-04 08:38:37 INFO ZeoServerStub-read loadEx: oid='\x00\
2009-09-04 08:38:37 INFO ZeoServerStub-read loadEx: oid='\x00\
2009-09-04 08:38:37 INFO ZeoServerStub-read loadEx: oid='\x00\
2009-09-04 08:38:37 INFO ZeoServerStub-read loadEx: oid='\x00\
2009-09-04 08:38:37 INFO ZeoServerStub-read loadEx: oid='\x00\
There is likely a performance impact but the logging should be used for debugging and performance analysis only