Files
intelligence_system/utils/__pycache__/logger.cpython-312.pyc
T

37 lines
5.7 KiB
Plaintext
Raw Normal View History

Ë
Ÿ¼ÔhWãó†ddlZddlZddlmZddlmZddlZddlmZddlZGdd«Z e «j«Z y)éN)ÚPath)Úlogger)ÚdatetimecóVeZdZdZdZdZdZdZdZdZ e
d«Z e d d
«Z
y ) ÚCrossPlatformLogu2è·¨å¹³å°æ—¥å¿—系统(支æŒLinux/Windows/Mac)cóN|j«|_|j«y©N)Ú _get_log_dirÚlog_dirÚ
_setup_logger©Úselfs ú3d:\Idea Project\intelligence_system\utils\logger.pyÚ__init__zCrossPlatformLog.__init__
sØ×Œ Ø ×ÑÕócóêtt«jj}|dz }|jd¬«t j
«dk(r t
j|d«|S|S#Y|SxYw)u-获å–è·¨å¹³å°æ—¥å¿—目录(相对路径)ÚlogsT)Úexist_okÚWindowsiÿ)rÚ__file__ÚparentÚmkdirÚplatformÚsystemÚosÚchmod)rÚbase_dirr s rr
zCrossPlatformLog._get_log_dirso䜓>ר˜ð 
˜tˆ
Ô ?‰?Ó   Ò 
ܘ %Ôˆˆwˆøð
Øàˆús ÁA-Á-A2có¼tj«tjtjddd¬«|j «|j
«y)ué…ç½®è·¨å¹³å°æ—¥å¿—处ç†å™¨ÚINFOzy<green>{time:YYYY-MM-DD HH:mm:ss}</green> | <level>{level: <8}</level> | <cyan>{module}</cyan> - <level>{message}</level>có&|djdk\S)levelé)Úno)Úrecords rÚ<lambda>z0CrossPlatformLog._setup_logger.<locals>.<lambda>,s ¡/×"4Ñ"4¸Ò":r)r!ÚformatÚfilterN)rÚremoveÚaddÚsysÚstdoutÚ
_add_main_logÚ_add_error_logr
s rr zCrossPlatformLog._setup_logger"sHä
Ι 
Ü J‰JØðOÙ
ð
×ÑÔð
×ÑÕrc
ó–|jdz }tjt|«d|jdddd|j
¬«y) u主日志文件é…ç½®zapplication.logz20 MBzutf-8ÚDEBUGz30 daysT)ÚrotationÚ compressionÚencodingr!Ú retentionÚenqueuer&N)r rr)ÚstrÚ
_compress_logÚ_format_with_extra)rÚmain_logs rr,zCrossPlatformLog._add_main_log5sGà—<<Ð"3Ñ3ˆÜ
Ü ‹MØØ×Øð Øà×
rcó0d}|dr‡g}|dj«D]^\}}|dk(rŒ t|«}|dvrt|«dkDr|dddz}nt|«dkDr|dd dz}|jd
|d |«Œ`dj |«}||dd<y )
ÚextraÚ extra_output)ÚerrorÚ
error_messageÚsqlÚparamsiôz...éÈéÅu
→ z: z`{time:YYYY-MM-DD HH:mm:ss.SSS} | {level: <8} | {module}:{line} - {message}{extra[extra_output]}
)ÚitemsÚreprÚlenÚappendÚjoin)rr$Ú extra_strÚ extra_itemsÚkeyÚvalueÚ
value_reprs rr7z#CrossPlatformLog._format_with_extraFàˆ Ø 'Š?؈$ W™o×5