Wie kann ich feststellen, wie viele Abfragen pro Sekunde meine Postgres-Datenbank ausführt?
postgresql
Konrad Garus
quelle
quelle
Antworten:
Verwenden Sie diese Abfrage, um die Gesamtzahl der in allen Datenbanken ausgeführten Transaktionen zu lesen :
Wenn Sie denselben Leistungsindikator für nur eine Datenbank möchten, verwenden Sie:
Um TPS (Transaktionen pro Sekunde) zu berechnen, führen Sie die Abfrage mehrmals aus und berechnen Sie die Differenz über das Zeitintervall.
Dafür gibt es fertige Tools, eines davon ist http://bucardo.org/wiki/Check_postgres
Weitere Informationen: http://www.postgresql.org/docs/9.2/static/monitoring-stats.html#PG-STAT-DATABASE-VIEW
Update: Konrad hat mein Missverständnis seiner Frage korrigiert. Das Ziel war, Abfragen zu zählen, keine Transaktionen.
Wie werden Abfragen gezählt?
Methode 1
Verwenden Sie pg_stat_statements contrib.
Methode 2
Aktivieren Sie die vollständige Protokollierung von Abfragen für einen repräsentativen Zeitraum.
Um die vollständige Protokollierung für PostgreSQL 9.0 - 9.3 zu aktivieren, ändern Sie die folgenden Einstellungen in
postgresql.conf
Wenn Sie auch Abfrage Dauer sehen möchten, können Sie einstellen ,
log_min_duration_statement = 0
statt derlog_statement = all
. Dies ist sehr nützlich für die Abfrageoptimierung.Laden Sie dann die Konfiguration neu (Neustart oder HUP) und sammeln Sie genügend Protokolle, um den Datenverkehr abzuschätzen.
Hinweis: Keine der Methoden enthält Abfragen, die in benutzerdefinierte Funktionen eingebettet sind.
quelle