Ë
    dQêj¸&  ã            
       ó  — d dl mZmZmZmZ d dlmZmZmZ d dl	m
Z
mZ d dlmZ d dlmZmZ d dlmZ d dlmZmZ d dlmZ d d	lmZmZmZ d d
lmZ d dlm Z  d dl!m"Z"m#Z#m$Z$m%Z% d dl&m'Z'm(Z( d dl)m*Z* d dl+m,Z,m-Z- d dl.m/Z/  e0h d£«      Z1 G d„ de/d¬«      Z2 e
d¬«       G d„ d«      «       Z3 e
d¬«       G d„ d«      «       Z4 ejj                  d«      Z6 e«       Z7d7dedz  de4dz  fd „Z8d7dedz  de3dz  fd!„Z9d"eez  ddfd#„Z:d"e;de<fd$„Z=d"e;de>fd%„Z?dd&œd'e<d(ed)ef   dz  ded   fd*„Z@ed+e4d'e<d(ed)ef   dz  ded   fd,„«       ZAd(ed)ef   d-eBe<ef   defd.„ZCdd/œd0ee<ef   d1e<dz  d2e>ddfd3„ZD e0h d4£«      ZEd5ede>fd6„ZFy)8é    )ÚCallableÚIteratorÚMutableMappingÚSequence)ÚAbstractContextManagerÚcontextmanagerÚnullcontext)Ú	dataclassÚfield)Útime_ns)Ú	AnnotatedÚAny)ÚDoc)ÚRequestValidationErrorÚWebSocketRequestValidationError)Úcontext)ÚLoggerÚLoggerProviderÚSeverityNumber)ÚContext)ÚMeterProvider)ÚSpanÚ
StatusCodeÚTracerÚTracerProvider)ÚHTTPExceptionÚWebSocketException)ÚRequest)Ú	WebSocketÚWebSocketDisconnect)Ú	TypedDict>
   ÚGETÚPUTÚHEADÚPOSTÚPATCHÚQUERYÚTRACEÚDELETEÚCONNECTÚOPTIONSc                   ó`  — e Zd ZU dZeedz   ed«      f   ed<   eedz   ed«      f   ed<   ee	dz   ed«      f   ed<   ee
 ed	«      f   ed
<   ee
 ed«      f   ed<   ee
 ed«      f   ed<   ee
 ed«      f   ed<   ee
 ed«      f   ed<   eeeeef   ge
f   dz   ed«      f   ed<   y)ÚTelemetryConfiga.  Optional settings for `FastAPI(telemetry={...})`.

    Omitted settings keep their defaults. FastAPI preserves existing providers
    and their exporters. Environment setup can add exporters when `auto_configure`
    is `True`. Providers supplied by the application are never shut down by FastAPI.
    Nz8Use this provider instead of the global tracer provider.Útracer_providerz7Use this provider instead of the global meter provider.Úmeter_providerz8Use this provider instead of the global logger provider.Úlogger_providerzGEnable HTTP request and WebSocket connection spans. Defaults to `True`.Útracingz0Enable HTTP request metrics. Defaults to `True`.ÚmetricszwRecord validation failures and unhandled exceptions, including exception messages and stack traces. Defaults to `True`.Úlogsz`Trace dependency resolution, endpoints, serialization, and background tasks. Defaults to `True`.Úoperation_spanszªAdd OTLP exporters from environment variables. Defaults to `False` unless `FASTAPI_OTEL_AUTO_CONFIGURE=true` is set. An explicit value overrides the environment variable.Úauto_configurezpA function that receives the ASGI scope. Return `True` to skip FastAPI telemetry for that request or connection.Úexclude)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   Ú__annotations__r   r   Úboolr   r   Ústrr   © ó    ú[/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/fastapi/telemetry/_api.pyr-   r-   #   sX  … ñð Ø˜ÑÙÐFÓGð	Iñó ð Ø˜ÑÙÐEÓFð	Hñó ð Ø˜ÑÙÐFÓGð	Iñó ð ØÙÐUÓVð	Xñó ð �t™SÐ!SÓTÐTÑUÓUØ
ØÙð Fó	
ð	ñó ð ØÙØnó	
ð	ñó ð ØÙð(ó	
ð	ñó ð Ø�.  c Ñ*Ð+¨TÐ1Ñ2°TÑ9ÙØ~ó	
ð	ñô r?   r-   F)ÚtotalT)Úkw_onlyc                   óî   — e Zd ZU dZdZeedz   ed«      f   ed<   dZ	ee
dz   ed«      f   ed<   dZee ed«      f   ed<   dZeeeef   dz   ed	«      f   ed
<   dZeee   dz   ed«      f   ed<   y)ÚTelemetryDataa  Local request or connection data for synchronous OpenTelemetry processors.

    FastAPI populates these fields as it handles the request or connection.
    Integrations should treat the data as read-only and apply their capture and
    redaction settings before exporting any of it.
    Nz5The request, available when its route handler starts.Úrequestz7The WebSocket, available when its route handler starts.Ú	websocketz6The body read by FastAPI, before parameter validation.ÚbodyzEThe original parsed arguments, available after dependency resolution.Úvaluesz?Request validation errors, including the original input values.Úerrors)r7   r8   r9   r:   rE   r   r   r   r;   rF   r   rG   r   rH   Údictr=   rI   r   r>   r?   r@   rD   rD   X   sæ   … ñð 	ð ˆYØ�$‰™ÐSÓTÐTñó ð 	ð ˆyØ�DÑÙÐEÓFð	Hñó ð 	ð 	ˆ)Ø‰SÐIÓJÐJñó ð 	ð ˆIØˆS�#ˆX‰˜ÑÙÐSÓTð	Vñó ð 	ð ˆIØ�‰˜ÑÙÐMÓNð	Pñô r?   rD   c                   óÌ   — e Zd ZU edz  ed<   eed<   dZedz  ed<   dZe	dz  ed<   dZ
edz  ed<   dZedz  ed<    ee¬«      Zedz  ed	<   d
Zeed<    eed¬«      Zee   ed<   y)Ú_RequestTelemetryNÚspanÚspan_methodÚtracerÚloggerÚrouteÚstatus_code)Údefault_factoryÚdataÚ Ú_mount_prefixF)rS   ÚreprÚ_exceptions)r7   r8   r9   r   r;   r=   rO   r   rP   r   rQ   rR   Úintr   rD   rT   rV   ÚlistrX   ÚBaseExceptionr>   r?   r@   rL   rL   u   s~   … à
�‰+ÓØÓØ €FˆF�T‰MÓ Ø €FˆF�T‰MÓ Ø€Eˆ3�‰:ÓØ"€K��t‘Ó"Ù!&°}Ô!E€Dˆ-˜$Ñ
ÓEØ€M�3ÓÙ',¸TÈÔ'N€K��mÑ$ÔNr?   rL   zfastapi.requestNr   Úreturnc                 ó^   — t        j                  t        | «      }t        |t        «      r|S d S ©N)Úotel_contextÚ	get_valueÚ_REQUEST_TELEMETRY_KEYÚ
isinstancerL   )r   Úvalues     r@   Ú_get_request_telemetryrd   †   s*   € Ü×"Ñ"Ô#9¸7ÓC€EÜ˜uÔ&7Ô8ˆ5ÐB¸dÐBr?   c                 ó8   — t        | «      }|�|j                  S dS )am  Read local FastAPI data from an OpenTelemetry context.

    Defaults to the current context. Log processors can pass `record.context`.
    Read the data synchronously while FastAPI handles the request or connection.
    After it finishes, this returns `None`, including for retained contexts.
    This data is not automatically added to exported spans or logs.
    N)rd   rT   )r   Úrequest_telemetrys     r@   Úget_telemetry_datarg   ‹   s&   € ô /¨wÓ7ÐØ%6Ð%BÐ×!Ñ!ÐLÈÐLr?   Úexcc                 ó¾  — t        «       }|€y |j                  �Jt        | t        «      r| j                  |j                  _        | j                  «       |j                  _        |j                  �ndt        | j                  «       «      i}|j                  �|j                  |d<   |j                  j                  dt        «       t        j                  dd|¬«       y y )Nzfastapi.validation.error_countú
http.routezfastapi.validation.failedÚWARNzRequest validation failed)Ú
event_nameÚ	timestampÚseverity_numberÚseverity_textrG   Ú
attributes)rd   rT   rb   r   rG   rI   rP   ÚlenrQ   Úemitr   r   rk   )rh   rf   rp   s      r@   Ú_validation_failedrs   —   sÎ   € ô /Ó0ÐØÐ ØØ×ÑÐ)Ü�cÔ1Ô2Ø*-¯(©(Ð×"Ñ"Ô'Ø(+¯
©
«Ð×ÑÔ%Ø×ÑÐ+à,¬c°#·*±*³,Ó.?ð&
ˆ
ð ×"Ñ"Ð.Ø'8×'>Ñ'>ˆJ�|Ñ$Ø× Ñ ×%Ñ%Ø2Ü“iÜ*×/Ñ/Ø Ø,Ø!ð 	&õ 	
ð ,r?   c                 ó„   — t        | «      }|j                  dk7  r|j                  › d|j                  › �S |j                  S )NÚbuiltinsú.)Útyper8   r9   )rh   Úclss     r@   Ú_exception_typery   ±   sJ   € Ü
ˆs‹)€Cð �>‰>˜ZÒ'ð �>‰>Ð
˜!˜C×,Ñ,Ð-Ð.ðð ×Ñðr?   c                 óB   — t        | t        «      xr | j                  dv S )N)iè  ié  )rb   r    Úcode)rh   s    r@   Ú_normal_websocket_disconnectr|   º   s   € Ü�cÔ.Ó/ÒL°C·H±HÀÐ4LÐLr?   )ÚfunctionÚnamer}   .c                 óZ   — t        «       }|�|j                  €t        S t        || |¬«      S )N)rf   r~   r}   )rd   rO   Ú_NO_OPERATIONÚ_traced_operation)r~   r}   rf   s      r@   Ú
_operationr‚   ¾   s9   € ô /Ó0ÐØÐ Ð$5×$<Ñ$<Ð$DÜÐÜØ+°$Àôð r?   rf   c           	   #   ó6  K  — | j                   €J ‚i }|�Jt        |dt        |«      j                  «      }t        |dt        |«      j                  «      }|› d|› �|d<   | j                   j                  d|› �|dd¬«      5 }	 d –— 	 d d d «       y # t        $ rp}|dk(  s+t        |t        t        t        t        f«      sEt        |«      s:|j                  d	t        |«      «       |j                  t         j"                  «       ‚ d }~ww xY w# 1 sw Y   y xY w­w)
Nr8   r9   rv   zcode.function.namezfastapi.F)rp   Úrecord_exceptionÚset_status_on_exceptionÚbackground_taskz
error.type)rO   Úgetattrrw   r8   r9   Ústart_as_current_spanÚ	Exceptionrb   r   r   r   r   r|   Úset_attributery   Ú
set_statusr   ÚERROR)rf   r~   r}   rp   ÚmoduleÚqualnamerM   rh   s           r@   r�   r�   É   s(  è ø€ ð ×#Ñ#Ð/Ð/Ð/Ø€JØÐÜ˜ <´°h³×1JÑ1JÓKˆÜ˜8 ^´T¸(³^×5PÑ5PÓQˆØ.4¨X°Q°x°jÐ+Aˆ
Ð'Ñ(Ø	×	!Ñ	!×	7Ñ	7Ø
�4�&ÐØØØ %ð	 
8ó 
ð ð
 
ð	Ü÷ð øô ò 	ØÐ(Ò(ÜØä%Ü.Ü*Ü7ð	ôô 5°SÔ9à×"Ñ" <´ÀÓ1EÔFØ—‘¤
× 0Ñ 0Ô1Øûð	ú÷ð üs=   ‚A?DÂDÂBÂ	DÂ	D
ÂA+DÄD
Ä
DÄDÄDÚ	argumentsc                 óX   — t        d| ¬«      5   | di |¤Žcd d d «       S # 1 sw Y   y xY w)NÚendpoint)r~   r}   r>   )r‚   )r}   r�   s     r@   Ú_run_sync_endpointr’   ð   s.   € ô 
˜¨hÔ	7ñ %ÙÑ$˜)Ñ$÷%÷ %ò %ús   Ž  ))ÚmountÚscopeÚpathr“   c                 ó¼  — | j                  d«      }t        |t        «      r|€y |r;|j                  d«      }|xj                  |z  c_        |j                  dz   |_        n|j                  |z   |_        |j                  �[|j                  j                  d|j
                  «       |j                  j                  |j                  › d|j
                  › �«       y y )Nzfastapi.telemetryz/{path}rj   ú )
Úgetrb   rL   ÚremovesuffixrV   rQ   rM   rŠ   Úupdate_namerN   )r”   r•   r“   rf   s       r@   Ú_route_selectedr›   ÷   sÒ   € ð Ÿ	™	Ð"5Ó6ÐÜÐ'Ô):Ô;¸t¸|ØáØ× Ñ  Ó+ˆØ×'Ò'¨4Ñ/Õ'Ø"3×"AÑ"AÀIÑ"MÐÕà"3×"AÑ"AÀDÑ"HÐÔØ×ÑÐ)Ø×Ñ×,Ñ,¨\Ð;L×;RÑ;RÔSØ×Ñ×*Ñ*Ø ×,Ñ,Ð-¨QÐ/@×/FÑ/FÐ.GÐHõ	
ð *r?   >   ©zopentelemetry.traceÚProxyTracerProvider©zopentelemetry._logs._internalÚProxyLoggerProvider©zopentelemetry.metrics._internalÚ_ProxyMeterProviderÚproviderc                 óT   — t        | «      }|j                  |j                  ft        v S r^   )rw   r8   r7   Ú_DEFERRED_PROVIDERS)r¢   rx   s     r@   Ú_unconfiguredr¥     s&   € ô ˆx‹.€CØ�N‰N˜CŸL™LÐ)Ô-@Ð@Ð@r?   r^   )GÚcollections.abcr   r   r   r   Ú
contextlibr   r   r	   Údataclassesr
   r   Útimer   Útypingr   r   Úannotated_docr   Úfastapi.exceptionsr   r   Úopentelemetryr   r_   Úopentelemetry._logsr   r   r   Úopentelemetry.contextr   Úopentelemetry.metricsr   Úopentelemetry.tracer   r   r   r   Ústarlette.exceptionsr   r   Ústarlette.requestsr   Ústarlette.websocketsr   r    Útyping_extensionsr!   Ú	frozensetÚ_HTTP_METHODSr-   rD   rL   Ú
create_keyra   r€   rd   rg   rs   r[   r=   ry   r<   r|   r‚   r�   rJ   r’   r›   r¤   r¥   r>   r?   r@   ú<module>r¹      sP  ðß HÓ Hß JÑ Jß (Ý ß !å ß VÝ 1ß FÑ FÝ )Ý /ß HÓ Hß BÝ &ß ?Ý 'áòó€ô 2�i uõ 2ñj �4Ô÷ð ó ðñ8 �4Ô÷	Oð 	Oó ð	Oð 1˜×0Ñ0Ð1BÓCÐ Ù“€ñC G¨d¡Nð CÐ>OÐRVÑ>Vó Cñ
	M ¨$¡ð 	M¸-È$Ñ:Nó 	Mð
Ø	Ð"AÑ	Að
à	ó
ð4˜ð ¨3ó ðM mð M¸ó Mð
 9=òØðØ$ S¨# XÑ.°Ñ5ðà˜DÑ!óð ð#à(ð#ð ð#ð �s˜C�xÑ  4Ñ'ð	#ð
 ˆd�^ò#ó ð#ðL%Ø˜#˜s˜(Ñ#ð%Ø04°S¸#°X±ð%àó%ð INò
Ø˜S #˜XÑ&ð
Ø.1°D©jð
ØAEð
à	ó
ñ(  òóÐ ðA˜Cð A Dô Ar?   