/opt/imh-python/lib/python3.9/site-packages/prometheus_client
NameSizeModeActions
bridge/-0755rm
openmetrics/-0755rm
twisted/-0755rm
__pycache__/-0755rm
asgi.py16190644editdlrm
context_managers.py23220644editdlrm
core.py8600644editdlrm
decorator.py158020644editdlrm
exposition.py228630644editdlrm
gc_collector.py15130644editdlrm
metrics.py259250644editdlrm
metrics_core.py155380644editdlrm
mmap_dict.py52450644editdlrm
multiprocess.py69320644editdlrm
parser.py71130644editdlrm
platform_collector.py18690644editdlrm
process_collector.py38440644editdlrm
py.typed00644editdlrm
registry.py61960644editdlrm
samples.py15200644editdlrm
utils.py5940644editdlrm
values.py47750644editdlrm
__init__.py16880644editdlrm
Edit: /opt/imh-python/lib/python3.9/site-packages/prometheus_client/gc_collector.py (1513B)
import gc import platform from typing import Iterable from .metrics_core import CounterMetricFamily, Metric from .registry import Collector, CollectorRegistry, REGISTRY class GCCollector(Collector): """Collector for Garbage collection statistics.""" def __init__(self, registry: CollectorRegistry = REGISTRY): if not hasattr(gc, 'get_stats') or platform.python_implementation() != 'CPython': return registry.register(self) def collect(self) -> Iterable[Metric]: collected = CounterMetricFamily( 'python_gc_objects_collected', 'Objects collected during gc', labels=['generation'], ) uncollectable = CounterMetricFamily( 'python_gc_objects_uncollectable', 'Uncollectable object found during GC', labels=['generation'], ) collections = CounterMetricFamily( 'python_gc_collections', 'Number of times this generation was collected', labels=['generation'], ) for gen, stat in enumerate(gc.get_stats()): generation = str(gen) collected.add_metric([generation], value=stat['collected']) uncollectable.add_metric([generation], value=stat['uncollectable']) collections.add_metric([generation], value=stat['collections']) return [collected, uncollectable, collections] GC_COLLECTOR = GCCollector() """Default GCCollector in default Registry REGISTRY."""