o
    gZh                     @   s@   d dl Zd dlmZ ddlmZ ddlmZ G dd deZdS )    N)ObjectApiResponse   )NamespacedClient)_rewrite_parametersc                   @   s   e Zd Zeddddddddejddef dejejeej	f  ded	ed
ej
e dej
ejeeje f  dej
e dej
e deej	 fddZdS )MonitoringClient
operations)Z	body_nameN)error_tracefilter_pathhumanprettyintervalzt.Literal[-1]zt.Literal[0]system_api_version	system_idr   r	   r
   r   returnc                C   s   |du rt d|du rt d|du rt d|du r t dd}	i }
|dur,||
d< |dur4||
d< |dur<||
d	< |durD||
d
< |durL||
d< |durT||
d< |dur\||
d< |}ddd}| jd|	|
||dS )a  
        Used by the monitoring features to send monitoring data.

        `<https://www.elastic.co/guide/en/elasticsearch/reference/8.11/monitor-elasticsearch-cluster.html>`_

        :param interval: Collection interval (e.g., '10s' or '10000ms') of the payload
        :param operations:
        :param system_api_version:
        :param system_id: Identifier of the monitored system
        Nz+Empty value passed for parameter 'interval'z-Empty value passed for parameter 'operations'z5Empty value passed for parameter 'system_api_version'z,Empty value passed for parameter 'system_id'z/_monitoring/bulkr   r   r   r   r	   r
   r   zapplication/jsonzapplication/x-ndjson)acceptzcontent-typePUT)paramsheadersbody)
ValueErrorZperform_request)selfr   r   r   r   r   r	   r
   r   Z_MonitoringClient__pathZ_MonitoringClient__queryZ_MonitoringClient__bodyZ_MonitoringClient__headers r   \/var/www/html/lang_env/lib/python3.10/site-packages/elasticsearch/_sync/client/monitoring.pybulk   s>   
zMonitoringClient.bulk)__name__
__module____qualname__r   tUnionstrSequenceMappingAnyOptionalboolr   r   r   r   r   r   r      s6    
	
r   )	typingr   Zelastic_transportr   _baser   utilsr   r   r   r   r   r   <module>   s
   