Files
pyGoEdge-UserPanel/.venv/Lib/site-packages/django/utils/__pycache__/log.cpython-312.pyc

66 lines
9.9 KiB
Plaintext
Raw Normal View History

2025-11-18 03:36:49 +08:00
<EFBFBD>
j<> i<> <00>
<00><><00>ddlZddlZddlmZddlmZddlmZddlmZddl m
Z
ddl m Z ejd<08>Zd d
d d id d id<0E>ddddd<13>iddgdd<17>dddd<18>ddgdd<17>d<1C>ddgdd<1F>dgdd
d <20>d!<21>d"<22>Zd#<23>ZGd$<24>d%ej"<00>ZGd&<26>d'ej&<00>ZGd(<28>d)ej&<00>ZGd*<2A>d+ej&<00>ZGd,<2C>d-ej.<00>Zddeddd.<2E>d/<2F>Zy)0<>N)<01>copy)<01>settings)<01>mail)<01>get_connection)<01> color_style)<01> import_stringzdjango.request<73>F<>()z"django.utils.log.RequireDebugFalsez!django.utils.log.RequireDebugTrue)<02>require_debug_false<73>require_debug_true<75> django.serverz django.utils.log.ServerFormatterz[{server_time}] {message}<7D>{)r
<00>format<61>style<6C>INFOr zlogging.StreamHandler)<03>level<65>filters<72>class)rr<00> formatter<65>ERRORr z"django.utils.log.AdminEmailHandler)<03>consoler <00> mail_adminsrr)<02>handlersr)rr<00> propagate)<02>djangor )<06>version<6F>disable_existing_loggersr<00>
formattersr<00>loggersc<00>|<00>|r:t|<00>}tjjt<00>|r ||<01>yyy<00>N)r<00>logging<6E>config<69>
dictConfig<EFBFBD>DEFAULT_LOGGING)<03>logging_config<69>logging_settings<67>logging_config_funcs <20>?E:\Project\pygoedge\.venv\Lib\site-packages\django/utils/log.py<70>configure_loggingr*Cs:<00><00><15>+<2B>N<EFBFBD>;<3B><1B><0F><0E><0E>!<21>!<21>/<2F>2<> <1C> <1F> 0<> 1<> <1C><16>c<00><<00><00>eZdZdZd<07>fd<02> Zd<03>Zd<04>Zd<05>Zd<06>Z<08>xZ S)<08>AdminEmailHandlerz<72>An exception log handler that emails log entries to site admins.
If the request is passed as the first argument to the log record,
request data will be provided in the email report.
c<00><><00><01>t<00>|<00><00>||_||_t |xst
j <00>|_yr!)<08>super<65>__init__<5F> include_html<6D> email_backendrr<00>DEFAULT_EXCEPTION_REPORTER<45>reporter_class)<05>selfr1r2r4<00> __class__s <20>r)r0zAdminEmailHandler.__init__Vs9<00><><00> <0A><07><18><1A>(<28><04><19>*<2A><04><1A>+<2B> <1A> A<>h<EFBFBD>A<>A<>
<EFBFBD><04>r+c<00><00>tjs'|jjtjury |j
}|j <00>d|jjd<02>tjvrdnd<04>d|j<00><00><01>}|j|<03>}t|<01>}d|_d|_|jr |j}nd|j<00>df}|j |g|<05><01>ddi<01>}|j#|<04><00>d |j%<00><00><01>}|j&r|j)<00>nd}|j||d|<08>
<EFBFBD>y#t$r$|j <00>d|j<00><00><01>}d}Y<00><>wxYw) Nz (<28> REMOTE_ADDR<44>internal<61>EXTERNALz IP): z: <20>is_emailTz
)<02> fail_silently<6C> html_message)r<00>ADMINS<4E> send_mail<69>__func__r-<00>request<73> levelname<6D>META<54>get<65> INTERNAL_IPS<50>
getMessage<EFBFBD> Exception<6F>format_subjectr<00>exc_info<66>exc_textr4r<00>get_traceback_textr1<00>get_traceback_html) r5<00>recordrA<00>subject<63> no_exc_recordrI<00>reporter<65>messager=s r)<00>emitzAdminEmailHandler.emit^si<00><00><19><0F><0F><14><0E><0E>'<27>'<27>+<<3C>+F<>+F<>F<> <12> <1B><1C>n<EFBFBD>n<EFBFBD>G<EFBFBD><16> <20> <20><1F>|<7C>|<7C>'<27>'<27> <0A>6<>(<28>:O<>:O<>O<><1F>#<23>$<24><17>!<21>!<21>#<23><0E>G<EFBFBD><17>%<25>%<25>g<EFBFBD>.<2E><07><1D>V<EFBFBD> <0C> <0A>!%<25> <0A><1E>!%<25> <0A><1E> <11>?<3F>?<3F><1D><EFBFBD><EFBFBD>H<EFBFBD><1C>f<EFBFBD>/<2F>/<2F>1<>4<EFBFBD>8<>H<EFBFBD>&<26>4<EFBFBD>&<26>&<26>w<EFBFBD>I<><08>I<><14>I<><08> <10>K<EFBFBD>K<EFBFBD> <0A> &<26> <14> '<27> '<27> )<29>
<EFBFBD><07>9=<3D>8I<38>8I<38>x<EFBFBD>2<>2<>4<>t<EFBFBD> <0C> <0C><0E><0E>w<EFBFBD><07>t<EFBFBD>,<2C><0E>W<><57>-<19> <1B>"(<28>"2<>"2<>F<EFBFBD>4E<34>4E<34>4G<34>H<>G<EFBFBD><1A>G<EFBFBD> <1B>s<00>AE<00>*F<03>Fc<00>X<00>tj||g|<03><01>d|j<00>i|<04><01>y)N<>
connection)rrrT)r5rNrQ<00>args<67>kwargss r)r?zAdminEmailHandler.send_mail<69>s4<00><00> <0C><18><18> <13>W<EFBFBD>
<EFBFBD>#<23>
<EFBFBD>04<EFBFBD><0F><0F>0A<30>
<EFBFBD>EK<EFBFBD>
r+c<00>0<00>t|jd<01><02>S)NT)<02>backendr<)rr2<00>r5s r)rTzAdminEmailHandler.connection<6F>s<00><00><1D>d<EFBFBD>&8<>&8<><04>M<>Mr+c<00>F<00>|jdd<02>jdd<04>S)z.
Escape CR and LF characters.
<20>
z\n<> z\r)<01>replace)r5rNs r)rHz AdminEmailHandler.format_subject<63>s"<00><00><17><EFBFBD><EFBFBD>t<EFBFBD>U<EFBFBD>+<2B>3<>3<>D<EFBFBD>%<25>@<40>@r+)FNN)
<EFBFBD>__name__<5F>
__module__<EFBFBD> __qualname__<5F>__doc__r0rRr?rTrH<00> __classcell__<5F>r6s@r)r-r-Os%<00><><00><08> 
<EFBFBD>)X<01>V
<EFBFBD>
N<01>Ar+r-c<00><00>eZdZdZd<02>Zd<03>Zy)<05>CallbackFilterz<72>
A logging filter that checks the return value of a given callable (which
takes the record-to-be-logged as its only parameter) to decide whether to
log a record.
c<00><00>||_yr!<00><01>callback)r5rhs r)r0zCallbackFilter.__init__<5F>s <00><00> <20><04> r+c<00>(<00>|j|<01>ryy)Nr rrg<00>r5rMs r)<00>filterzCallbackFilter.filter<65>s<00><00> <0F>=<3D>=<3D><16> <20><14>r+N)r^r_r`rar0rk<00>r+r)rere<00>s<00><00><08> !<21>r+rec<00><00>eZdZd<01>Zy)<03>RequireDebugFalsec<00>$<00>tj Sr!<00>r<00>DEBUGrjs r)rkzRequireDebugFalse.filter<65>s<00><00><1B>><3E>><3E>!<21>!r+N<>r^r_r`rkrlr+r)rnrn<00>s<00><00>"r+rnc<00><00>eZdZd<01>Zy)<03>RequireDebugTruec<00>"<00>tjSr!rprjs r)rkzRequireDebugTrue.filter<65>s <00><00><17>~<7E>~<7E>r+Nrrrlr+r)rtrt<00>s<00><00>r+rtc<00>2<00><00>eZdZdZ<03>fd<02>Z<04>fd<03>Zd<04>Z<06>xZS)<05>ServerFormatterz%d/%b/%Y %H:%M:%Sc<00>B<00><01>t<00>|_t<00>|<00> |i|<02><01>yr!)rrr/r0)r5rUrVr6s <20>r)r0zServerFormatter.__init__<5F>s<00><><00> <20>]<5D><04>
<EFBFBD> <0A><07><18>$<24>)<29>&<26>)r+c<00><><00><01>|j}t|dd<00>}|<03>rd|cxkrdkrnn|jj|<02>}n<>d|cxkrdkrnn|jj |<02>}n<>|dk(r|jj |<02>}n<>d|cxkrdkrnn|jj |<02>}nf|dk(r|jj|<02>}nEd|cxkrdkrnn|jj|<02>}n|jj|<02>}|j<00>r-t|d <09>s!|j||j<00>|_||_t<00>|<00>A|<01>S)
N<EFBFBD> status_code<64><65>i,<00>di0<00><>i<><00><><00> server_time)<11>msg<73>getattrr<00> HTTP_SUCCESS<53> HTTP_INFO<46>HTTP_NOT_MODIFIED<45> HTTP_REDIRECT<43>HTTP_NOT_FOUND<4E>HTTP_BAD_REQUEST<53>HTTP_SERVER_ERROR<4F>uses_server_time<6D>hasattr<74>
formatTime<EFBFBD>datefmtrr/r)r5rMr<>rzr6s <20>r)rzServerFormatter.format<61>s1<00><><00><14>j<EFBFBD>j<EFBFBD><03><1D>f<EFBFBD>m<EFBFBD>T<EFBFBD>:<3A> <0B> <16><12>k<EFBFBD>'<27>C<EFBFBD>'<27><1A>j<EFBFBD>j<EFBFBD>-<2D>-<2D>c<EFBFBD>2<><03><14> <0B>)<29>c<EFBFBD>)<29><1A>j<EFBFBD>j<EFBFBD>*<2A>*<2A>3<EFBFBD>/<2F><03><1C><03>#<23><1A>j<EFBFBD>j<EFBFBD>2<>2<>3<EFBFBD>7<><03><14> <0B>)<29>c<EFBFBD>)<29><1A>j<EFBFBD>j<EFBFBD>.<2E>.<2E>s<EFBFBD>3<><03><1C><03>#<23><1A>j<EFBFBD>j<EFBFBD>/<2F>/<2F><03>4<><03><14> <0B>)<29>c<EFBFBD>)<29><1A>j<EFBFBD>j<EFBFBD>1<>1<>#<23>6<><03><1B>j<EFBFBD>j<EFBFBD>2<>2<>3<EFBFBD>7<><03> <0F> <20> <20> "<22>7<EFBFBD>6<EFBFBD>=<3D>+I<>!%<25><1F><1F><16><14><1C><1C>!F<>F<EFBFBD> <1E><18><06>
<EFBFBD><14>w<EFBFBD>~<7E>f<EFBFBD>%<25>%r+c<00>><00>|jjd<01>dk\S)Nz {server_time}r)<02>_fmt<6D>findrYs r)r<>z ServerFormatter.uses_server_time<6D>s<00><00><13>y<EFBFBD>y<EFBFBD>~<7E>~<7E>o<EFBFBD>.<2E>!<21>3<>3r+)r^r_r`<00>default_time_formatr0rr<>rbrcs@r)rwrw<00>s<00><><00>-<2D><17>*<2A>&<26>84r+rw)<05>responserA<00>loggerr<00> exceptionc<00><><00>t|dd<02>ry|<04>&|jdk\rd}n|jdk\rd}nd}td <09>|D<00><00>}t||<04>|g|<07><01>|j|d
<EFBFBD>|d <0B><02>d |_y) a
Log errors based on HttpResponse status.
Log 5xx responses as errors and 4xx responses as warnings (unless a level
is given as a keyword argument). The HttpResponse status_code and the
request are passed to the logger's extra parameter.
<20>_has_been_loggedFNr~<00>errorr}<00>warning<6E>infoc3<00><>K<00>|]6}t|t<00>r |jd<00>jd<01>n|<01><01><00>8y<02>w)<03>unicode_escape<70>asciiN)<04>
isinstance<EFBFBD>str<74>encode<64>decode)<02>.0<EFBFBD>as r)<00> <genexpr>zlog_response.<locals>.<genexpr><3E>s<<00><00><><00><06><15>A<EFBFBD>7A<01><11>C<EFBFBD>6H<36><01><08><08>!<21>"<22>)<29>)<29>'<27>2<>a<EFBFBD>O<><15>s<00><>)rzrA)<02>extrarIT)r<>rz<00>tupler<65>)rQr<>rAr<>rr<>rU<00> escaped_argss r)<00> log_responser<65><00>s<><00><00>(<0F>x<EFBFBD>+<2B>U<EFBFBD>3<><0E> <0C>}<7D> <13> <1F> <1F>3<EFBFBD> &<26><1B>E<EFBFBD> <15> !<21> !<21>S<EFBFBD> (<28><1D>E<EFBFBD><1A>E<EFBFBD><18><06><15><06><06>L<EFBFBD>
<1B>G<EFBFBD>F<EFBFBD>E<EFBFBD><1A><0F><06> <15><06>$<24>/<2F>/<2F><1E>
<EFBFBD><1B><06>!%<25>H<EFBFBD>r+)r"<00>logging.configr<00> django.confr<00> django.corer<00>django.core.mailr<00>django.core.management.colorr<00>django.utils.module_loadingr<00> getLogger<65>request_loggerr%r*<00>Handlerr-<00>Filterrernrt<00> Formatterrwr<>rlr+r)<00><module>r<>sP<00><01><0E><15><15> <20><1C>+<2B>4<>5<>"<22><17>"<22>"<22>#3<>4<><0E><11> %<25> <11>6<>
<EFBFBD> <11>5<>
<EFBFBD> <06> <18>4<>1<><18>
<EFBFBD><06><1C>,<2C>-<2D>,<2C>
<EFBFBD> <1C>,<2C>(<28>
<EFBFBD> <1D>-<2D>.<2E>9<>
<EFBFBD><06>&#<23>M<EFBFBD>2<><1B>
<EFBFBD>
)<29>)<29><1B><1E>
<EFBFBD>
<06>G.<02><0F>b 2<>FA<01><07><0F><0F>FA<01>R <11>W<EFBFBD>^<5E>^<5E> <11> "<22><07><0E><0E>"<22>
<1E>w<EFBFBD>~<7E>~<7E><1E>
$4<>g<EFBFBD>'<27>'<27>$4<>T<12> <10> <19>
<0E><12>-%r+