Jak mogę określić, ile zapytań na sekundę wykonuje moja baza danych Postgres?
postgresql
Konrad Garus
źródło
źródło
Odpowiedzi:
Użyj tego zapytania, aby odczytać całkowitą liczbę transakcji wykonanych we wszystkich bazach danych:
Jeśli chcesz mieć ten sam licznik tylko dla jednej bazy danych, użyj:
Aby obliczyć TPS (transakcje na sekundę), uruchom zapytanie kilka razy i oblicz różnicę w przedziale czasu.
Istnieją gotowe narzędzia do tego, jednym z nich jest http://bucardo.org/wiki/Check_postgres
Więcej informacji: http://www.postgresql.org/docs/9.2/static/monitoring-stats.html#PG-STAT-DATABASE-VIEW
Aktualizacja: Konrad poprawił moje niezrozumienie swojego pytania. Celem było zliczanie zapytań, a nie transakcji.
Jak liczyć zapytania?
Metoda 1
Użyj pg_stat_statements contrib.
Metoda 2
Włącz pełne rejestrowanie zapytań w reprezentatywnym okresie.
Aby włączyć pełne logowanie, w PostgreSQL 9.0 - 9.3 zmień następujące ustawienia w
postgresql.conf
Jeśli chcesz zobaczyć również czas zapytań, można ustawić
log_min_duration_statement = 0
zamiast odlog_statement = all
. Jest to bardzo przydatne do dostrajania zapytań.Następnie ponownie załaduj config (restart lub HUP) i zbierz wystarczającą ilość dziennika, aby oszacować ruch.
Uwaga: żadna metoda nie będzie zawierać zapytań osadzonych w funkcjach zdefiniowanych przez użytkownika.
źródło