U cf. @sddlZddlmZddlmZmZddlmZddlmZddlm Z m Z m Z m Z m Z mZddlmZdd lmZdd lmZmZdd lmZmZdd lmZmZdd lmZddlmZGdddeZ e!dkrddl"m#Z#dZ$ej%de$de dddgde&dZ'e'(de'(de#de'(de'(de'(de')de#de'*d d!d"d#d$d%d&gd'gd(d)d!ddd(d*e'*d+e'+d,e'(d-e'(d.e')d/dd0d1d2Z,e,e#de'-d3e'(d4e'j(d5e.dd6d7dS)8N)datetime)Handler LogRecord)Path) ModuleType)ClassVarIterableListOptionalTypeUnion)NullFile) get_console)FormatTimeCallable LogRender)ConsoleConsoleRenderable) HighlighterReprHighlighter)Text) Tracebackcs:eZdZUdZdddddddd gZeeeee d <e Z ee e e d <ejd fd d d d d d ddd dd d dddddd deeefeeeeeeeee eeeeeeeeeeeeefeeeeefeeed dfddZeedddZed dddZeedddd Zeeeddd!d"d#ZZS)$ RichHandlera A logging handler that renders output with Rich. The time / level / message and file are displayed in columns. The level is color coded, and the message is syntax highlighted. Note: Be careful when enabling console markup in log messages if you have configured logging for libraries not under your control. If a dependency writes messages containing square brackets, it may not produce the intended output. Args: level (Union[int, str], optional): Log level. Defaults to logging.NOTSET. console (:class:`~rich.console.Console`, optional): Optional console instance to write logs. Default will use a global console instance writing to stdout. show_time (bool, optional): Show a column for the time. Defaults to True. omit_repeated_times (bool, optional): Omit repetition of the same time. Defaults to True. show_level (bool, optional): Show a column for the level. Defaults to True. show_path (bool, optional): Show the path to the original log call. Defaults to True. enable_link_path (bool, optional): Enable terminal link of path column to file. Defaults to True. highlighter (Highlighter, optional): Highlighter to style log messages, or None to use ReprHighlighter. Defaults to None. markup (bool, optional): Enable console markup in log messages. Defaults to False. rich_tracebacks (bool, optional): Enable rich tracebacks with syntax highlighting and formatting. Defaults to False. tracebacks_width (Optional[int], optional): Number of characters used to render tracebacks, or None for full width. Defaults to None. tracebacks_extra_lines (int, optional): Additional lines of code to render tracebacks, or None for full width. Defaults to None. tracebacks_theme (str, optional): Override pygments theme used in traceback. tracebacks_word_wrap (bool, optional): Enable word wrapping of long tracebacks lines. Defaults to True. tracebacks_show_locals (bool, optional): Enable display of locals in tracebacks. Defaults to False. tracebacks_suppress (Sequence[Union[str, ModuleType]]): Optional sequence of modules or paths to exclude from traceback. locals_max_length (int, optional): Maximum length of containers before abbreviating, or None for no abbreviation. Defaults to 10. locals_max_string (int, optional): Maximum length of string before truncating, or None to disable. Defaults to 80. log_time_format (Union[str, TimeFormatterCallable], optional): If ``log_time`` is enabled, either string for strftime or callable that formats the time. Defaults to "[%x %X] ". keywords (List[str], optional): List of words to highlight instead of ``RichHandler.KEYWORDS``. GETPOSTHEADPUTDELETEOPTIONSTRACEPATCHKEYWORDSHIGHLIGHTER_CLASSNTF Pz[%x %X]) show_timeomit_repeated_times show_level show_pathenable_link_path highlightermarkuprich_tracebackstracebacks_widthtracebacks_extra_linestracebacks_themetracebacks_word_wraptracebacks_show_localstracebacks_suppresslocals_max_lengthlocals_max_stringlog_time_formatkeywords)levelconsoler'r(r)r*r+r,r-r.r/r0r1r2r3r4r5r6r7r8returncstj|d|pt|_|p$||_t|||||dd|_||_| |_ | |_ | |_ | |_ | |_ ||_||_||_||_||_||_dS)N)r9)r'r)r* time_formatr( level_width)super__init__rr:r"r,r _log_renderr+r-r.r/r0r1r2r3r4r5r6r8)selfr9r:r'r(r)r*r+r,r-r.r/r0r1r2r3r4r5r6r7r8 __class__r$F/opt/hc_python/lib/python3.8/site-packages/pip/_vendor/rich/logging.pyr??s. zRichHandler.__init__)recordr;cCs&|j}t|dd|}|S)zGet the level name from the record. Args: record (LogRecord): LogRecord instance. Returns: Text: A tuple of the style and level name. zlogging.level.) levelnamerstyledljustlower)rArE level_name level_textr$r$rDget_level_textos  zRichHandler.get_level_textc Cs.||}d}|jr|jr|jdkr|j\}}}|dk s||}|jdkrP|j|_|jrd||jd|S)zRender message text in to Text. Args: record (LogRecord): logging Record. message (str): String containing log message. Returns: ConsoleRenderable: Renderable to display log message. r-r,Nzlogging.keyword)getattrr-r from_markupr,r8r!highlight_words)rArEr] use_markup message_textr,r$r$rDrcs  zRichHandler.render_message)rErUrVr;c Cstt|jj}||}|jdkr$dn|jj}t|j}|j |j |sJ|gn||g|||||j |j rh|jndd}|S)avRender log for display. Args: record (LogRecord): logging Record. traceback (Optional[Traceback]): Traceback instance or None for no Traceback. message_renderable (ConsoleRenderable): Renderable (typically Text) containing log message contents. Returns: ConsoleRenderable: Renderable to display log. N)log_timer<r9pathline_no link_path) rpathnamenamerMr\r`r fromtimestampcreatedr@r:linenor+) rArErUrVrur9r<rtrmr$r$rDrds    zRichHandler.render) __name__ __module__ __qualname____doc__r!rr r str__annotations__rr"r rloggingNOTSETr intrboolrrrr?rrrMrnrcrrd __classcell__r$r$rBrDrs~ !    00r__main__)sleepz %(message)srz[%X]T)r.r3)r9rWr`handlersrichzServer starting...z"Listening on http://127.0.0.1:8080zGET /index.html 200 1298z)GET /imgs/backgrounds/back1.jpg 200 54386zGET /css/styles.css 200 54386zGET /favicon.ico 404 242zJSONRPC request --> %r <-- %rz1.1ZconfirmFruitPurchaseappleZorangeZmangoesZpomelog+?Z 194521489)versionmethodparamsid)rresulterrorrzrLoading configuration file /adasd/asdasd/qeqwe/qwrqwrqwr/sdgsdgsdg/werwerwer/dfgerert/ertertert/ertetert/werwerwerz$Unable to find 'pomelo' in database!zPOST /jsonrpc/ 200 65532zPOST /admin/ 401 42234z%password was rejected for admin site.)r;cCsDd}d}dgd}tdz ||WntdYnXdS)NrrZfoodz in dividezAn error of some kind occurred!)logdebug exception)numberZdivisorZfoosr$r$rDdivides   rzOut of memory!zServer exited with code=-1z[bold]EXITING...[/bold])r-)extra)/rrrrpathlibrtypesrtypingrrr r r r pip._vendor.rich._null_filer rr@rrr:rrr,rrtextrrUrrr}timerZFORMAT basicConfig getLoggerrinfowarningrrrcriticaldictr$r$r$rDsl        Y