Em 5 de março de 2018 14:36, Alexsander Rosa <alexsander.r...@gmail.com> escreveu: > > Obrigado pela resposta! Neste caso eu vou ter que fazer um polling, certo? Eu gostaria de uma precisão abaixo de 1 minuto (ou seja, não dá pra usar o CRON), porém não quero ficar toda hora chamando o pg_isready pois isso certamente vai influenciar na carga do servidor. Além disso, quando o S.O. for reiniciado meu programa em C vai cair também. > > O ideal seria uma função análoga à pg_postmaster_start_time() porém com o último shutdown. > Talvez seja possível criar uma "pg_postmaster_last_shutdown()" para obter esta informação. > > Eu sei que nosso servidor PG foi reiniciado, pela última vez, dia 30 de janeiro: > > SELECT pg_postmaster_start_time(); > pg_postmaster_start_time > ------------------------------- > 2018-01-30 07:33:29.438349-02 > (1 row) > > No caso eu sei que está no ar desde Janeiro porém eu não sei que horas, no dia 30/01, o servidor foi parado. Olhando no log temos: > 2018-01-30 07:33:07.278 -02 [1212] LOG: autovacuum launcher shutting down > 2018-01-30 07:33:07.373 -02 [1209] LOG: shutting down > 2018-01-30 07:33:07.440 -02 [1195] LOG: database system is shut down > 2018-01-30 07:33:29.439 -02 [1350] LOG: database system was shut down at 2018-01-30 07:33:07 -02 > > Veja que o servidor SABE que o shutdown ocorreu às 2018-01-30 07:33:07 -02 (no caso foi uma alteração no .conf). > Resta saber se esta informação está ficando gravada em algum lugar (além do texto do log) e como recuperá-la. > >
Alexsander, Atualmente o PostgreSQL só persiste essa informação de Startup e Shutdown nos logs. A função pg_postmaster_start_time() apenas retorna o valor interno de uma global chamada PgStartTime que ele seta ao iniciar o postmaster (vide src/backend/postmaster/postmaster.c), mas não persiste em nenhum lugar. Talvez até fosse uma idéia adicionar isso ao global/pg_control e obter atraves do utilitário pg_controldata e termos isso a nível SQL usando a função pg_control_init() talvez... mas teriamos que discutir isso lá na -hackers, isso se já não foi e por algum motivo não foi implementado. Att, -- Fabrízio de Royes Mello Timbira - http://www.timbira.com.br/ PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral