
    )5jT4                        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d      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d      Z ed+d,dddg
      Z ed-d.dddg
      Z ed/d0dddg
      Z ed1d2dddg
      Z ed3d4dddg
      Z ed5d6dddg
      Z ed7d8dddg
      Z ed9d: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dAdBdddg
      Z  edCdDdddg
      Z! edEdFdddg
      Z" edGdHdddg
      Z# edIdJdddg
      Z$ edKdLdddg
      Z% edMdNdddg
      Z&dO Z'yP)Q    )*)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_slau   Соблюдение SLA по времени овтета на API-запрос. От -1 до 0 - в пределах нормы. От 0 и выше - превышение (1 = 100%)ratioc                 4   t         j                  || |       dddddddd}| |v r.||    }t        |      |z
  |z  }t        j                  || |       | dz   |v r<|| dz      }||v r/||   }t        |      |z
  |z  }t        j                  || |       y y y )	Nr   r   2   i  i  i  )r	   textlists)zBaseModel.all_models_metaz!CmfTask.create_task_from_templatez$CmfDocument.create_doc_from_templatezCmfTask.update#additional_labelz#additional_label)r   writefloatr   )r   duration_msr   API_SLAsla	sla_ratiosla_datas           ./modules/api/metrics/metrics.pywrite_api_timingsr(   L   s    NN;v@PNQ
 &(-104	,
#GH fo;'#-4	9VFVW!!W,6"556x'+,C{+c1S8IyJZ[ ( -    prof_pg_totalu-   Количество запросов в БДprof_pg_selectu4   Количество select запросов в БДprof_pg_updateu4   Количество update запросов в БДprof_pg_deleteu4   Количество delete запросов в БДprof_redis_commandsu.   Количество запросов в Redisprof_redis_durationu(   Времени в ожидании Redis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                    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	                  t        |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   | |       d|v rt4        j	                  |d   | |       d|v rt6        j	                  |d   | |       d|v rt8        j	                  |d   | |       y y )Nselect_counttotalr   selectupdatedeletebzpython_select_countredis_commandsredis_commands_duration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-   r0   r1   r2   r3   r.   r/   intr6   r7   r4   r5   r8   r9   r:   r;   r<   r=   r>   r@   rA   r?   )r   r   proftotal_countrC   update_countdelete_counts          r'   write_profiler_datara   +  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 4!!$'7"8Zj!k D(!!#d+D&E"Fvhx!y 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/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   ra    r)   r'   <module>re      s    O O
 *	!	K  &		G	  '	 	F	  !		0 (		X  "		1 !		K 		8-.	  	 
B-.	2\j !		8-.	 "		?-.	 "		?-.	 "		?-.	 '		9-.	  '		3-.	  *	!	A-.	  +	"	H-.	  +	"	H-.	  +	"	H-.	  (		/-.	  )	 	0-.	  "		)-.	 #		*-.	 )	 	9-.	  %		-.	  )	 	!-.	   0	'	(-.	   "		-.	 $		-.	  ,	#	$-.	  +	"	#-.	  *	!	@-.	  "		)-.	:or)   