
    @i/                     r   d dl  d dlmZmZmZ  eddd      Z edddd	g
      Z edddd	g
      Z eddd      Z eddd      Z	 eddd      Z
 eddd      Z edddddgd      Z edddddg
      Zd Z edddddg
      Z ed d!dddg
      Z ed"d#dddg
      Z ed$d%dddg
      Z ed&d'dddg
      Z ed(d)dddg
      Z ed*d+dddg
      Z ed,d-dddg
      Z ed.d/dddg
      Z ed0d1dddg
      Z ed2d3dddg
      Z ed4d5dddg
      Z ed6d7dddg
      Z ed8d9dddg
      Z ed:d;dddg
      Z ed<d=dddg
      Z ed>d?dddg
      Z ed@dAdddg
      Z  edBdCdddg
      Z! edDdEdddg
      Z" edFdGdddg
      Z# edHdIdddg
      Z$dJ Z%yK)L    )*)CmfMetricCounterCmfMetricGaugeCmfMetricSummarysocketio_user_regisrtyu@   Количество вызовов команды user_registryapi)namehelpmodule_namesocketio_join_roomu<   Количество вызовов команды join_roomroom)r	   r
   r   custom_tagssocketio_room_membersu;   Количество участников в комнатеapi_cache_hitu%   Количество hit кеша APIapi_cache_miss_jsveruM   Количество miss кеша API из-за устаревания jsverapi_cache_missu&   Количество miss кеша APIapi_cache_setu@   Количество записей в Redis для кеша APIapi_timeu-   Время ответа на API-запросmethodadditional_labelmseconds)r	   r
   r   r   unitapi_time_slauO   Соблюдение SLA по времени овтета на API-запросc                     t         j                  || |       dddddd}| |v r:||    }t        |      |z  }t        |dz        }t        j                  || |       y y )Nr   r   2   i  )r	   textlists)zBaseModel.all_models_metazCmfTask.update#additional_labeli  )r   writefloatintr   )r   duration_msr   API_SLAslanorm_slas          ./modules/api/metrics/metrics.pywrite_api_timingsr'   K   s{    NN;v@PNQ
 &(	,
G@ fo%+x$'8FEUV     prof_pg_totalu-   Количество запросов в БДprof_pg_selectu4   Количество select запросов в БДprof_pg_updateu4   Количество update запросов в БДprof_pg_deleteu4   Количество delete запросов в БДprof_bzpython_pg_totalu6   Количество bzpython_запросов в БДprof_bzpython_pg_selectu=   Количество bzpython_select запросов в БДprof_bzpython_pg_updateu=   Количество bzpython_update запросов в БДprof_bzpython_pg_deleteu=   Количество bzpython_delete запросов в БДprof_inmem_cache_hitu$   Количество inmem_cache_hitprof_inmem_cache_missu%   Количество inmem_cache_missprof_cache_hitu   Количество cache_hitprof_cache_missu   Количество cache_missprof_cache_invalidateu.   Количество invalidate-записейprof_prepare_timeu   Время prepareprof_call_method_timeu   Время call_methodprof_result_to_response_timeu   Время result_to_responseprof_save_timeu   Время saveprof_commit_timeu   Время commitprof_result_to_dict_timeu   Время result_to_dictprof_api_cache_get_timeu   Время api_cache_getprof_number_of_objectsu5   Количество объектов в ответеprof_obj_countu   Количество obj_countc                 z   t         j                  }d|v r|d   j                  d      x}rt        j	                  || |       |d   j                  d      x}rt
        j	                  || |       |d   j                  d      x}rt        j	                  || |       |d   j                  d      x}rt        j	                  || |       d|v r|d   j                  d      x}rt        j	                  || |       |d   j                  d      x}rt        j	                  || |       |d   j                  d      x}rt        j	                  || |       |d   j                  d      x}rt        j	                  || |       d|v rt        j	                  |d   | |       d	|v rt        j	                  |d	   | |       d
|v rt        j	                  |d
   | |       d|v rt        j	                  |d   | |       d|v rt         j	                  |d   | |       d|v rt"        j	                  |d   | |       d|v rt$        j	                  |d   | |       d|v rt&        j	                  |d   | |       d|v rt(        j	                  |d   | |       d|v rt*        j	                  |d   | |       d|v rt,        j	                  |d   | |       d|v rt.        j	                  |d   | |       d|v rt0        j	                  |d   | |       d|v rt2        j	                  |d   | |       y y )Nselect_counttotalr   selectupdatedeletebzpython_select_countredis_cache_hitredis_cache_missinmemory_cache_hitinmemory_cache_misscache_invalidatepreparecall_method_msresult_to_response_mssavecommitresult_to_dict_msnumber_of_objects	obj_countapi_cache_get)gprofiler_datagetr)   r   r*   r+   r,   r-   r.   r/   r0   r3   r4   r1   r2   r5   r6   r7   r8   r9   r:   r;   r=   r>   r<   )r   r   proftotal_countr@   update_countdelete_counts          r&   write_profiler_datar[     s   ??D/33G<<K<FM]^ 044X>>L>  fO_ ` 044X>>L>  fO_ ` 044X>>L>  fO_ `$& 78<<WEEKE"((VVf(g !89==hGGLG#)),vXh)i !89==hGGLG#)),vXh)i !89==hGGLG#)),vXh)i
 D T"34VVfgT!d#56vXhit#""4(<#=f_o"p$##D)>$?aq#rT!##D);$<V^n#o DYQab4##D)9$:6\l#m$&$**40G+HQWjz*{~T&\&K[\4tH~fO_`d" &&t,?'@br&sd"$$T*=%>v`p$qdT+.vP`a$%%d?&;F]m%n r(   N)&cmf.includecmf.util.metricsr   r   r   r   r   r   r   r   r   r   r   r   r'   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r[    r(   r&   <module>r_      s    O O
 *	!	K  &		G	  '	 	F	  !		0 (		X  "		1 !		K 		8-.	  		Z-.	*W\ !		8-.	 "		?-.	 "		?-.	 "		?-.	 *	!	A-.	  +	"	H-.	  +	"	H-.	  +	"	H-.	  (		/-.	  )	 	0-.	  "		)-.	 #		*-.	 )	 	9-.	  %		-.	  )	 	!-.	   0	'	(-.	   "		-.	 $		-.	  ,	#	$-.	  +	"	#-.	  *	!	@-.	  "		)-.	6or(   