
    Mh                     v    d dl Z d dlZd dlmZ ddlmZmZ ddlmZm	Z	m
Z
  G d de          Z e            ZdS )    N)Iterable   )CounterMetricFamilyMetric)	CollectorCollectorRegistryREGISTRYc                   :    e Zd ZdZefdefdZdee         fdZ	dS )GCCollectorz,Collector for Garbage collection statistics.registryc                     t          t          d          rt          j                    dk    rd S |                    |            d S )N	get_statsCPython)hasattrgcplatformpython_implementationregister)selfr   s     ^/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/prometheus_client/gc_collector.py__init__zGCCollector.__init__   sF    r;'' 	8+I+K+Ky+X+XF$    returnc                    t          dddg          }t          dddg          }t          dddg          }t          t          j                              D ]n\  }}t	          |          }|                    |g|d	         
           |                    |g|d         
           |                    |g|d         
           o|||gS )Npython_gc_objects_collectedzObjects collected during gc
generation)labelspython_gc_objects_uncollectablez%Uncollectable objects found during GCpython_gc_collectionsz-Number of times this generation was collected	collected)valueuncollectablecollections)r   	enumerater   r   str
add_metric)r   r    r"   r#   genstatr   s          r   collectzGCCollector.collect   s   ')) >
 
 
	
 ,-3 >
 
 
 *#; >
 
 
 #2<>>22 	L 	LICSJ  *T+5F GGG$$j\o9N$OOO""J<tM7J"KKKK=+66r   N)
__name__
__module____qualname____doc__r	   r   r   r   r   r)    r   r   r   r   	   s^        665=    !2        
7&) 7 7 7 7 7 7r   r   )r   r   typingr   metrics_corer   r   r   r   r   r	   r   GC_COLLECTORr.   r   r   <module>r2      s    				        5 5 5 5 5 5 5 5 < < < < < < < < < < 7  7  7  7  7)  7  7  7F {}} 7 7r   