-ν Ϋ„?cs…dZdkZdkZdkZdkZdkZdkZdfd„ƒYZdeifd„ƒYZ deifd„ƒYZ dS(stMonitor behavior of ZEO server and record statistics. $Id: monitor.py,v 1.3.18.1 2003/09/15 21:26:53 tim_one Exp $ Ns StorageStatscs)tZdZd„Zd„Zd„ZRS(sPer-storage usage statistics.csmd|_d|_d|_d|_d|_d|_d|_t|_ d|_ d|_ t i ƒ|_dS(Ni(sselfsloadssstoresscommitssabortss active_txnssclientssverifying_clientssNones lock_times conflictssconflicts_resolvedstimesctimesstart(sself((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pys__init__s          cs |idƒ}xŠ|D]‚}|iddƒ\}}|djo ||_nK|djot|ƒ|_ n+|djot|ƒ|_ n |djot|ƒ|_ nλ|djot i ƒt|ƒ|_ nΑ|d jot|ƒ|_n‘|d jot|ƒ|_n|d jot|ƒ|_na|d jot|ƒ|_nA|d jot|ƒ|_n!|djot|ƒ|_nqWdS(Ns s:isServer startedsClientssClients verifyingsActive transactionssCommit lock held forsCommitssAbortssLoadssStoress ConflictssConflicts resolved(ssssplitslinesslinesfieldsvaluesselfsstartsintsclientssverifying_clientss active_txnsstimes lock_timescommitssabortssloadssstoress conflictssconflicts_resolved(sselfsssfieldslineslinessvalue((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pysparse+s4            csω|dI|iIJ|dI|iIJ|dI|iIJ|dI|iIJ|io-tiƒ|i}|dIt |ƒIJn|dI|i IJ|dI|i IJ|dI|i IJ|d I|i IJ|d I|iIJ|d I|iIJdS( NsServer started:sClients:sClients verifying:sActive transactions:sCommit lock held for:sCommits:sAborts:sLoads:sStores:s Conflicts:sConflicts resolved:(sfsselfsstartsclientssverifying_clientss active_txnss lock_timestimeshowlongsintscommitssabortssloadssstoress conflictssconflicts_resolved(sselfsfshowlong((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pysdumpHs (s__name__s __module__s__doc__s__init__sparsesdump(((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pys StorageStatss  s StatsClientcs>tZd„Zd„Zd„Zd„Zd„Zd„ZRS(Ncs)tii||ƒg|_d|_dS(Ni(sasyncores dispatchers__init__sselfssocksbufsclosed(sselfssocksaddr((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pys__init__Ys cs d|_dS(Ni(sselfsclosed(sself((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pysclose^scs|ii|ƒdS(N(sselfsbufsappendss(sselfss((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pyswritecscst|iƒSdS(N(slensselfsbuf(sself((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pyswritablefscsdSdS(Ni((sself((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pysreadableiscs…di|iƒ}g|_|ii|ƒ}|t|ƒjo|ii|| ƒn|i o|i ot i i |ƒndS(Ns( sjoinsselfsbufssssocketssendsnslensappendsclosedsasyncores dispatchersclose(sselfsssn((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pys handle_writems (s__name__s __module__s__init__scloseswriteswritablesreadables handle_write(((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pys StatsClientWs      s StatsServercs;tZeZd„Zd„Zd„Zd„Zd„ZRS(NcsΉtii|ƒ||_||_t|iƒtijo|i t i t i ƒn|i t i t i ƒ|iƒtidtidt|iƒƒ|i|iƒ|idƒdS(NsZSMsmonitor listening on %si(sasyncores dispatchers__init__sselfsaddrsstatsstypestypess TupleTypes create_socketssocketsAF_INETs SOCK_STREAMsAF_UNIXsset_reuse_addrszLOGsLOGsINFOsreprsbindslisten(sselfsaddrsstats((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pys__init__{s   #csdSdS(Ni((sself((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pyswritableˆscsdSdS(Ni((sself((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pysreadable‹scs`y|iƒ\}}Wntij o dSnX|i||ƒ}|i|ƒ|i ƒdS(N( sselfsacceptssocksaddrssocketserrorsStatsConnectionClasssfsdumpsclose(sselfsfssocksaddr((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pys handle_acceptŽs  cs|dtiIJ|tiƒIJ|J|iiƒ}|i ƒx<|D]4}|i|}|dI|IJ|i |ƒ|JqEWdS(NsZEO monitor server version %ssStorage:( sfsZEOsversionstimesctimesselfsstatsskeyssLssortsksdump(sselfsfsstatssksL((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pysdump—s   ( s__name__s __module__s StatsClientsStatsConnectionClasss__init__swritablesreadables handle_acceptsdump(((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pys StatsServerws    ( s__doc__sasyncoressocketstimestypessZEOszLOGs StorageStatss dispatchers StatsClients StatsServer( s StatsServersasyncoressocketstimeszLOGs StatsClients StorageStatssZEOstypes((s3/usr/pkg/lib/python2.2/site-packages/ZEO/monitor.pys?s      <