6h SrSSKJr SSKrSSKJr SSKJr SSKJ r J r J r SSK J r Jr Sr0r\ R""\5r\ R$"5r"S S 5rS rS r\"S SSS\"S54/\"S5\R.SS9S5rg)a{log repository events to a blackbox for debugging Logs event information to .hg/blackbox.log to help debug and diagnose problems. The events that get logged can be configured via the blackbox.track and blackbox.ignore config keys. Examples:: [blackbox] track = * ignore = pythonhook # dirty is *EXPENSIVE* (slow); # each log entry indicates `+` if the repository is dirty, like :hg:`id`. dirty = True # record the source of log messages logsource = True [blackbox] track = command, commandfinish, commandexception, exthook, pythonhook [blackbox] track = incoming [blackbox] # limit the size of a log file maxsize = 1.5 MB # rotate up to N log files when the current one gets too big maxfiles = 3 [blackbox] # Include microseconds in log entries with %f (see Python function # datetime.datetime.strftime) date-format = %Y-%m-%d @ %H:%M:%S.%f ) annotationsN)_)hex)encoding loggingutil registrar)dateutilprocutilsships-with-hg-corec,\rSrSrSrSrSrSrSrg)blackboxloggerJcX l[URSS55Ul[URSS55UlUR SS5UlURSS5UlSUl g)NblackboxstracksignoresmaxfilessmaxsizeF) _reposet configlist_trackedevents_ignoredevents configint _maxfiles configbytes_maxsize_inlog)selfuirepos 0/usr/lib/python3/dist-packages/hgext/blackbox.py__init__blackboxlogger.__init__Ksb !"-- X"FG!"-- Y"GHk;?{J?  ctSUR;=(a XR;=(d XR;$)N*)rr)revents rtrackedblackboxlogger.trackedSs4 D'' ' LE9L9L,L* )) ) *r cUR(agSUlURXX45 SUlg!SUlf=f)NTF)r_log)rrr#msgoptss rlogblackboxlogger.logXs7 ;;   IIb +DK%DKs5 >c URSS5nURSS5nURSS5nU(a[R"XV5nO[R"US5SSn[ R "5n S[ R"5-n S n URSn U R5n S RU Vs/sHn[UR55PM sn5nURSS 5(aU RS S S S9(aS n URSS5(aSU-nOS nSnXXU UU4n[R"UURR SUR"UR$S9nUU-nUR'U5 U(aUR)U5 SSS5 U[8lgs snf!,(df  N=f![*aVnUR,R/5 UR1S[2R4"UR65-5 SnAgSnAff=f)Nsdevels default-daters date-formatsdebug.to-stderrs%Y-%m-%d %H:%M:%S.%fs%dr +sdirtyTF)missingmergebranchs logsources [%s]s%s %s @%s%s (%s)%s> %s blackbox.log)namemaxfilesmaxsizes*warning: cannot write to blackbox.log: %s ) configdateconfig configboolr datestrr getusergetpidrparentsjoinrnodedirtyr openlogfilevfsrrwrite write_errOSErrorrcleardebugr strtolocalstrerror _lastloggerlogger)rrr#r(r)default dateformatdebug_to_stderrdateuserpidchangedctxr<prevsrcfmtargsfperrs rr'blackboxlogger._logds--/:YY{N; -- 5GH ##G8D ##G-DEcrJD!hoo''jj++-ii81QVVX89 ==h / /CIIe5>5 G ==l 3 3U"CC +Cc3%%cll34   s> #GA G'/G=G' G$ G'$G'' I1A II)rrrrrrN) __name__ __module__ __qualname____firstlineno__rr$r*r'__static_attributes__r rr r Js*  /"r r c0URS[5 g)Nr) setloggerrI)rs r uipopulatercsLLk*r cUR5(dg[X5nURSU5 [Rc U[lUR R S5 g)Nrr2)localr rbrIrJ_wlockfreeprefixadd)rrrJs r reposetuprhsV ::<<B %FLLf%!# o.r rlslimit sthe number of events to showshg blackbox [OPTION]...T) helpcategory helpbasiccURRS5(dgURS5nUceURSS5nUR5R S5nSn/n[ U5H<n Xt:a O6[ R"SU 5(aUS- nURU 5 M> URSR[ U555 g) z!view the recent repository eventsr2Nlimitr rs8^\d{4}[-/]\d{2}[-/]\d{2} \d{2}:\d{2}:\d{2}(.\d*)? .*> .*) rAexistsgetreadsplitreversedrematchappendstatusr=) rrrevsr)rnrXlinescountoutputlines rblackboxrs 88??? + + HHW E    /4 (B GGIOOE "E E F >  88 H$   QJE d IIejj&)*+r )__doc__ __future__rrwmercurial.i18nrmercurial.noder mercurialrrrmercurial.utilsr r testedwithcmdtablecommand proxyloggerrIr rcrhCATEGORY_MAINTENANCErr`r rrs"H#  #    H %%%' I"I"X+/(  xQ>?@ !--,,r