OwlCyberSecurity - MANAGER
Edit File: registry.cpython-312.pyc
� B��g4 � � � d dl mZmZ d dlZd dlmZ d dlmZmZm Z m Z ddlmZ G d� de� Z G d � d e � Z G d� de � Z G d � d� Z ed�� Zy)� )�ABC�abstractmethodN)�Lock)�Dict�Iterable�List�Optional� )�Metricc �( � e Zd Zedee fd�� Zy)� Collector�returnc � � y �N� ��selfs �I/opt/hc_python/lib/python3.12/site-packages/prometheus_client/registry.py�collectzCollector.collect s � �� N)�__name__� __module__�__qualname__r r r r r r r r r s � �� ��&�)� � � r r c � � e Zd Zdee fd�Zy)�_EmptyCollectorr c � � g S r r r s r r z_EmptyCollector.collect s � �� r N)r r r r r r r r r r r s � ���&�)� r r c �� � e Zd ZdZddedeeeef fd�Zde ddfd�Z de ddfd �Zd � Zde e fd�Zde e dd fd�Zdeeeef ddfd�Zdeeeef fd�Zd� Zddedeeeef dee fd�Zy)�CollectorRegistryz�Metric collector registry. Collectors must have a no-argument method 'collect' that returns a list of Metric objects. The returned metrics should be consistent with the Prometheus exposition formats. N� auto_describe�target_infoc �| � i | _ i | _ || _ t � | _ i | _ | j |� y r )�_collector_to_names�_names_to_collectors�_auto_describer �_lock�_target_info�set_target_info)r r r s r �__init__zCollectorRegistry.__init__ s9 � �?A�� �:<��!�+����V�� �68������[�)r � collectorr c �2 � | j 5 | j |� }t | j � j |� }|rt dj |� � �|D ] }|| j |<