
    /j(                        S SK Jr  S SKrS SKrS SKrS SKJr  S SKJrJ	r	J
r
Jr  SSKJr  S
S jr " S S	\R                  R                   5      rg)    )annotationsN)web)CONTENT_TYPE_LATESTCollectorRegistrygenerate_latestmultiprocess   )utilsc           	        #    SS jn[         R                  " 5       nUR                  S U5      I S h  vN n[        R                  " U[
        [        [        U5      5      S.S9$  N27f)Nc                     S[         R                  ;   a*  [        SS9n [        R                  " U 5        [        U 5      $ [        5       $ )NPROMETHEUS_MULTIPROC_DIRT)auto_describe)osenvironr   r   MultiProcessCollectorr   )registrys    U/app/agent/.venv/lib/python3.13/site-packages/livekit/agents/telemetry/http_server.py_get_metricsmetrics.<locals>._get_metrics   s<    %3(t<H..x8"8,, #$$    )zContent-TypezContent-Length)bodyheaders)returnbytes)asyncioget_running_looprun_in_executorr   Responser   strlen)_requestr   loopdatas       r   metricsr$      sY     	% ##%D%%dL99D<<!4CPTIW  :s   0A'A%3A'c                  ,   ^  \ rS rSrSU 4S jjrSrU =r$ )
HttpServer&   c                   > [         TU ]  X5        U R                  R                  [        R
                  " S[        5      /5        g )Nz/metrics)super__init___app
add_routesr   getr$   )selfhostport	__class__s      r   r*   HttpServer.__init__'   s0    $		cggj':;<r    )r/   r   r0   intr   None)__name__
__module____qualname____firstlineno__r*   __static_attributes____classcell__)r1   s   @r   r&   r&   &   s    = =r   r&   )r!   zaiohttp.web_request.Requestr   zweb.Response)
__future__r   r   r   aiohttp.web_requestaiohttpr   prometheus_clientr   r   r   r    r
   r$   http_serverr&   r3   r   r   <module>rB      s@    "  	    (=""-- =r   