0ixddlZddlZddlmZmZddlmZmZmZddl m Z ddl m Z m Z ddlmZerddlmZddlmZmZ ddlZdd lmZdd lmZerdd lmZGd dej6Zej:j<Zej@j<Z!ddddddddZ"ejFdej@dejHdejJdej:dejLdejNdiZ(GddeZ)GddeZ*Gd d!e*eZ+Gd"d#e*eZ,d$Z-y#e$r ed wxYw)%N) Integration DidNotEnable)BreadcrumbHandler EventHandler _BaseHandler)_log_level_to_otel)has_logs_enabled safe_repr) TYPE_CHECKING) LogRecord)AnyOptional)logger) LOGURU_FORMAT)MessagezLOGURU is not installedc(eZdZdZdZdZdZdZdZdZ y) LoggingLevels (2N) __name__ __module__ __qualname__TRACEDEBUGINFOSUCCESSWARNINGERRORCRITICALM/opt/hc_python/lib/python3.12/site-packages/sentry_sdk/integrations/loguru.pyrrs% E E DGG EHr&rrr r"r#r$)rrr r!r"r#r$ rcFeZdZdZeZeZeZ eZ eZ eeeeefdZ e dZy)LoguruIntegrationlogurucr|t_|t_|t_|t_|t_y)N)r/level event_levelbreadcrumb_format event_formatsentry_logs_level)selfr2r3r4r5r6s r'__init__zLoguruIntegration.__init__Ks1#((3%.?+)5&.?+r&ctjLtjt tjtjtj tj Ltjttj tj tjtj*tjttjyy)N)r2)r2format) r/r2raddLoguruBreadcrumbHandlerr4r3LoguruEventHandlerr5r6loguru_sentry_logs_handlerr%r&r' setup_oncezLoguruIntegration.setup_onceZs  " " . JJ'.?.E.EF'--(::   ( ( 4 JJ"):)F)FG'33(55   . . : JJ*'99  ;r&N)rrr identifier DEFAULT_LEVELr2DEFAULT_EVENT_LEVELr3DEFAULT_FORMATr4r5r6r8 staticmethodr?r%r&r'r/r/BsMJ E%K&!L%'(#' @r&r/c$eZdZfdZdZxZS)_LoguruBaseHandlerc|jdr-tj|jddt|d<t||i|y)Nr2)getSENTRY_LEVEL_FROM_LOGURU_LEVELrAsuperr8)r7argskwargs __class__s r'r8z_LoguruBaseHandler.__init__ssG ::g <@@ 7B'F7O $)&)r&c tt|jjj S#t t f$r-|jr|jj cYSdcYSwxYw)NrH)rJrlevelnonamelower ValueErrorKeyError levelname)r7records r'_logging_to_event_levelz*_LoguruBaseHandler._logging_to_event_level|sh H1fnn-22eg H% H/5/?/?6##))+ GR G Hs365A2-A21A2)rrrr8rW __classcell__)rNs@r'rFrFrs*Hr&rFceZdZdZy)r=zfModified version of :class:`sentry_sdk.integrations.logging.EventHandler` to use loguru's level names.Nrrr__doc__r%r&r'r=r=spr&r=ceZdZdZy)r<zkModified version of :class:`sentry_sdk.integrations.logging.BreadcrumbHandler` to use loguru's level names.NrZr%r&r'r<r<sur&r<c tj}|jsyt|jsy|j }t j |djt jkryt|djt\}}ddi}|jd}|jdrT|@|djj|r"|djt|dzd|d<n|dj|d<|jd|d|d <|jd r|d |d <|jd r$|d j|d <|d j |d<|jdr$|dj |d<|dj|d<|jdr|d|d<|jd}t#|t$rR|j'D]?\}} t#| t(t*t,t.fr | |d|</t1| |d|<A|j3|||d|t+|dj5dzddy)Nr2z sentry.originzauto.log.loguru project_rootfiler-zcode.file.pathlinezcode.line.numberfunctionzcode.function.namethreadz thread.namez thread.idprocessz process.pidzprocess.executable.namerQz logger.nameextrazsentry.message.parameter.messagetimegeA) severity_textseverity_numberbody attributestime_unix_nanotrace_id) sentry_sdk get_client is_activer optionsrVr/r6norSEVERITY_TO_OTEL_SEVERITYrIpath startswithlenrQid isinstancedictitemsstrintfloatboolr _capture_log timestamp) reclientrVotel_severity_numberotel_severity_textattrsr^rdkeyvalues r'r>r>sp " " $F     FNN + ^^F ++3 '?   1 C C C/Aw50,,/ 0E>>.1L zz&  #v(;(;(F(F|(T&,Vn&9&9#l:Ka:O:Q&RE" #&,Vn&9&9E" # zz&%$*6N ! zz*&,Z&8"# zz(%h/44m#H-00k zz)%i033m+1)+<+A+A'( zz&%f~m JJw E%++-JC%#sE4!89;@1#78;DU;K1#78 (  /39%!&.":":"r%r&r'rsI = 18 !$2@" DLL""(( #))//   "B22- -`HH( +\  02C Cq2 0 112s D++D9