Olá pessoal, Estava com ideia de saber o load (consumo de cpu) de cada consulta no servidor, eu pesquisei mas não encontrei nada pronto que pudesse ajudar, acabei fazendo um function em pl/phyton, que nada mais faz do que um "ps" pegando o procpid e verificando o uso da cpu, ficou assim:
CREATE OR REPLACE FUNCTION public.pg_proc_load(procpid integer) RETURNS numeric LANGUAGE plpython2u AS $function$ import commands try: cmd1 = 'ps --no-header -o"%C" -p' + str(procpid) l = commands.getoutput(cmd1); except: l = 0.0 if len(l) == 0: l = 0.0 return float(l) $function$ o resultado é interessante, mas to achando o retorno muito lento, em média uns 600ms, acho que o uso ta bem legal pra quem precisa ou quer monitorar o load das consultas, por exemplo. select pg_proc_load(procpid), current_query from pg_stat_activite; Queria ver se alguém tem alguma sugestão para melhor a performance da function, pois meu conhecimento de python também é bem básico. Abraços, *Hugo Bastos Bucker** *
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
