Viewing File: /opt/imunify360/venv/lib/python3.11/site-packages/sentry_sdk/__pycache__/sessions.cpython-311.pyc



]jddlZddlZddlZddlmZddlmZmZddlmZddl	m
Z
ddlmZe
r(ddl
Z
ddlmZddlmZdd	lmZdd
lmZddlmZddl	mZdd
ZeddZdZdZGddeZGddeZdS)N)datetime)ThreadLock)contextmanager)MYPY)format_timestamp)Optional)Union)Any)Dict)	Generator)
SessionStatusc|tjj}|jj}|0|jr|jjdni}|d}|S)z<Utility function to find out if session tracking is enabled.N_experimentsauto_session_tracking)
sentry_sdkHubcurrentscope_force_auto_session_trackingclientoptionsget)hubshould_trackexps   J/opt/imunify360/venv/lib64/python3.11/site-packages/sentry_sdk/sessions.py is_auto_session_tracking_enabledrsV{n$99L47JFcj 00Bww677c#K|tjj}t|}|r|	dV|r|dSdS#|r|wwxYw)z8Starts and stops a session automatically around a block.N)rrrr
start_sessionend_session)rrs  rrr#s{n$3C88L
	OO		<	OO	sAA3cbt|tjr|Stj|SN)
isinstanceuuidUUID)vals r
_make_uuidr)3s+#ty!!
9S>>r)exitedabnormalcrashedc6eZdZ	d	dZdZdZdZdZdZdS)
SessionFlusher
c||_||_i|_d|_t	|_d|_d|_dS)NT)
flush_funcflush_intervalpending_threadr_thread_lock_thread_for_pid_running)selfr1r2s   r__init__zSessionFlusher.__init__@s@%, FF#


rc|j}i|_|t|dSr$)r3r1listvalues)r8r3s  rflushzSessionFlusher.flushNs:,W^^--../////rcjtjkr	jdSj5jtjkrj	ddddSfd}t|}d|_||_tj_dddn#1swxYwYdS)NcjrDtjjjrjrjBdSdSr$)r7timesleepr2r3r=r8srr4z/SessionFlusher._ensure_running.<locals>._thread\s`m%Jt2333|%
%

m%%%%%r)targetT)r6osgetpidr4r5rdaemonstart)r8r4threads`  r_ensure_runningzSessionFlusher._ensure_runningTs"29;;..4<3K4

	/	/#ry{{22t|7O	/	/	/	/	/	/	/	/
%
%
%
%
%7+++F FMLLNNN!DL#%9;;D 	/	/	/	/	/	/	/	/	/	/	/	/	/	/	/ ts%B; AB;;B?B?cz||j|jj<|dSr$)to_jsonr3sidhexrI)r8sessions  radd_sessionzSessionFlusher.add_sessionjs6)0(9(9W[_%rcd|_dS)NF)r7rBs rkillzSessionFlusher.killqs



rc.|dSr$)rQrBs r__del__zSessionFlusher.__del__us		rN)r/)	__name__
__module____qualname__r9r=rIrOrQrSrrr.r.?sx000,rr.c^eZdZ												ddZ												ddZ	ddZdZdS)SessionNc
|tj}|tj}|d}||_d|_||_d|_d|_d|_	d|_
d|_d|_|
|||||||	|
||

dS)Nokr)
rLdid	timestampdurationreleaseenvironment
user_agent
ip_addresserrorsuser)r&uuid4rutcnowstatusr\startedr_r`r^rarbrcupdate
r8rLr\r]rhr^rgr_r`rarbrcrds
             rr9zSession.__init__{s ;*,,C?o''G>F
#!!		
	
	
	
	
rc
|rX|
|d}
|?|dp)|dp|d}|t||_|t||_|tj}||_|||_|||_	|||_
|||_|
|
|_|	|	|_
|||_|	||_dSdS)Nrbidemailusername)rr)rLstrr\rrfr]rhr^r_r`rbrarcrgrjs
             rrizSession.updates
"	R!!XXl33
{hhtnnQ(9(9QTXXj=Q=Q?!#DH?3xxDH ))I""DL$DM"DL"*D!(DO!(DO DK DKKKrcX|
|jdkrd}|||dSdS)Nr[r*)rg)rgri)r8rgs  rclosez
Session.closesB>dkT11FKKvK&&&&&rct|jdt|jt|j|jd}|jr
|j|d<|j
|j|d<|j
|j|d<i}|j	
|j	|d<|j

|j
|d<|j
|j|d<|j
|j|d	<|r||d
<|S)NT)rLinitrhr]rgrcr\r^r_r`rbraattrs)
rorLrrhr]rgrcr\r^r_r`rbra)r8rvrts   rrKzSession.to_jsonstx=='55)$.99k

;	';BxL8BuI=$!]BzN<##|E)'#'#3E- ?&"&/E,?&"&/E,	 BwK	r)NNNNNNNNNNNNr$)rTrUrVr9rirqrKrWrrrYrYzs

+
+
+
+
^

.!.!.!.!b''''rrYr$)rDr&r@r	threadingrr
contextlibrsentry_sdk._typesrsentry_sdk.utilsrrtypingr	r
rrr
rrrr)TERMINAL_SESSION_STATESobjectr.rYrWrr<module>r}s				""""""""%%%%%%""""""------	0      //////				<88888V888vBBBBBfBBBBBr
Back to Directory File Manager