/opt/cloudlinux/venv/lib/python3.11/site-packages/prometheus_client
NameSizeModeActions
bridge/-0755rm
openmetrics/-0755rm
twisted/-0755rm
__pycache__/-0755rm
asgi.py11850644editdlrm
context_managers.py16910644editdlrm
core.py8950644editdlrm
decorator.py158020644editdlrm
exposition.py152830644editdlrm
gc_collector.py14580644editdlrm
metrics.py221840644editdlrm
metrics_core.py118810644editdlrm
mmap_dict.py52640644editdlrm
multiprocess.py64740644editdlrm
parser.py72560644editdlrm
platform_collector.py17350644editdlrm
process_collector.py36540644editdlrm
registry.py53570644editdlrm
samples.py13580644editdlrm
utils.py6210644editdlrm
values.py38360644editdlrm
__init__.py18170644editdlrm
Edit: /opt/cloudlinux/venv/lib/python3.11/site-packages/prometheus_client/context_managers.py (1691B)
from __future__ import unicode_literals from timeit import default_timer from .decorator import decorate class ExceptionCounter(object): def __init__(self, counter, exception): self._counter = counter self._exception = exception def __enter__(self): pass def __exit__(self, typ, value, traceback): if isinstance(value, self._exception): self._counter.inc() def __call__(self, f): def wrapped(func, *args, **kwargs): with self: return func(*args, **kwargs) return decorate(f, wrapped) class InprogressTracker(object): def __init__(self, gauge): self._gauge = gauge def __enter__(self): self._gauge.inc() def __exit__(self, typ, value, traceback): self._gauge.dec() def __call__(self, f): def wrapped(func, *args, **kwargs): with self: return func(*args, **kwargs) return decorate(f, wrapped) class Timer(object): def __init__(self, callback): self._callback = callback def _new_timer(self): return self.__class__(self._callback) def __enter__(self): self._start = default_timer() def __exit__(self, typ, value, traceback): # Time can go backwards. duration = max(default_timer() - self._start, 0) self._callback(duration) def __call__(self, f): def wrapped(func, *args, **kwargs): # Obtaining new instance of timer every time # ensures thread safety and reentrancy. with self._new_timer(): return func(*args, **kwargs) return decorate(f, wrapped)