G.2. pgpro_stats — SQL İstatistikleri
pgpro_stats uzantısı, bir sunucu tarafından işlenen tüm SQL ifadelerinin planlama ve yürütme istatistiklerini toplamak için olanaklar sağlar. Bu uzantı pg_stat_statements modülüne dayanır ve aşağıdaki ek işlevselliği uygular:
- Sorgu metinlerinin yanı sıra ilgili sorgu planlarının da saklanması.
- İstatistik toplama sıklığını değiştirme olasılığı, buna bağlı maliyetleri optimize etmek için.
- Yürütülen sorgular için bekleme olayları istatistiklerinin hesaplanması.
- Operatörlerin planlama ve yürütme sırasında kaynak kullanım istatistiklerinin sayılması.
- Önbellek geçersiz kılma istatistiklerinin sayılması.
- Arşivleyici için ek istatistiklerin hesaplanması.
- Sistem çekirdeği tarafından toplanan veritabanları, tablolar ve indekslerin temizlenmesi istatistiklerini görüntüleme olanağı.
- Uygulama oturumlarının izlenmesi.
- Diğer uzantıları taklit eden görünümlerin oluşturulması.
<strong>Not:</strong> Sunucu durdurulduğunda, pgpro_stats uzantısı toplanan istatistikleri pgpro_stats_statements ve pgpro_stats_totals görünümlerindeki sütun sayısına ve sırasına bağlı olan bir formatta iki dosyaya diske yükler. Bu format yeni bir pgpro_stats sürümünde değişirse, daha önce kaydedilmiş istatistikler uzantı güncellemesinden sonraki ilk sunucu yeniden başlatmasında okunmayacak ve günlüğe bir hata yazılacaktır:
LOG: pgpro_stats: could not load statements data file of obsolete format "pg_stat/pgpro_stats.stat"
veya
LOG: pgpro_stats: could not load statements data file of obsolete format "pg_stat/pgpro_stats_totals.stat"
Dosyaların içeriği yok sayılacak ve ilgili istatistikler sıfırlanacaktır.
G.2.1. Sınırlamalar
pgpro_stats uzantısı, pg_stat_statements modülüne dayandığı için aynı sınırlamalara sahiptir:
- İstatistikler, paylaşılan bellekte saklanır ve bu nedenle sunucu yeniden başlatıldığında sıfırlanır.
- Uzantı, normalleştirilmiş sorgu metinlerini ve planlarını saklar, bu da bellek kullanımını artırabilir.
- pgpro_stats.max parametresi tarafından belirlenen maksimum ifade sayısına ulaşıldığında, en az kullanılan ifadeler otomatik olarak kaldırılır.
G.2.2. Kurulum ve Hazırlık
pgpro_stats, Postgres Pro Enterprise ve Postgres Pro Standard ile birlikte gelir. Kurulum için, uzantıyı veritabanında oluşturmanız gerekir:
CREATE EXTENSION pgpro_stats;
Not: CREATE EXTENSION komutu hakkında daha fazla bilgi için PostgreSQL dokümantasyonuna bakın.
Uzantı kurulduktan sonra, pgpro_stats_statements ve pgpro_stats_totals görünümleri kullanılabilir hale gelir.
G.2.2.1. Ön Gereksinimler
pgpro_stats kullanmak için, aşağıdaki PostgreSQL parametrelerinin etkinleştirilmesi önerilir:
track_activities = ontrack_counts = ontrack_io_timing = ontrack_functions = allveyapl
G.2.3. Kullanım
pgpro_stats uzantısı kurulduktan sonra, pgpro_stats_statements ve pgpro_stats_totals görünümlerini sorgulayarak SQL ifadelerinin istatistiklerini görüntüleyebilirsiniz.
G.2.3.1. Temel Kullanım
En çok zaman harcayan sorguları bulmak için:
SELECT query, calls, total_exec_time, mean_exec_time
FROM pgpro_stats_statements
ORDER BY total_exec_time DESC
LIMIT 10;
En çok yürütülen sorguları bulmak için:
SELECT query, calls, total_exec_time, mean_exec_time
FROM pgpro_stats_statements
ORDER BY calls DESC
LIMIT 10;
En yavaş sorguları bulmak için:
SELECT query, calls, mean_exec_time, max_exec_time
FROM pgpro_stats_statements
WHERE calls > 0
ORDER BY mean_exec_time DESC
LIMIT 10;
G.2.3.2. Toplam İstatistikleri Görüntüleme
pgpro_stats_totals görünümü, veritabanları, roller, istemci düğümleri ve uygulamalar için toplam istatistikler sağlar:
-- Veritabanına göre toplam istatistikler
SELECT
d.datname AS database,
t.queries_executed,
t.total_plan_time + t.total_exec_time AS total_time,
t.shared_blks_hit,
t.shared_blks_read
FROM pgpro_stats_totals t
JOIN pg_database d ON t.dbid = d.oid
ORDER BY total_time DESC;
Not: pg_database sistem kataloğu hakkında daha fazla bilgi için PostgreSQL dokümantasyonuna bakın.
Uygulamaya göre toplam istatistikler:
SELECT
application,
SUM(queries_executed) AS total_queries,
SUM(total_plan_time + total_exec_time) AS total_time
FROM pgpro_stats_totals
WHERE application IS NOT NULL
GROUP BY application
ORDER BY total_time DESC;
G.2.3.3. Sorgu Planlarını Görüntüleme
pgpro_stats_statements görünümü, her sorgu için plan bilgilerini içerir. Sorgu planlarını görüntülemek için:
SELECT queryid, query, plan
FROM pgpro_stats_statements
WHERE plan IS NOT NULL
ORDER BY total_exec_time DESC
LIMIT 5;
G.2.3.4. Bekleme Olaylarını Analiz Etme
Bekleme olayları istatistiklerini görüntülemek için:
SELECT
queryid,
query,
wait_events
FROM pgpro_stats_statements
WHERE wait_events IS NOT NULL
ORDER BY total_exec_time DESC
LIMIT 10;
G.2.3.5. İstatistikleri Sıfırlama
Tüm istatistikleri sıfırlamak için:
SELECT pgpro_stats_statements_reset();
Belirli bir veritabanı için istatistikleri sıfırlamak için:
SELECT pgpro_stats_statements_reset(
dbid := (SELECT oid FROM pg_database WHERE datname = 'mydb')
);
Not: pg_database sistem kataloğu hakkında daha fazla bilgi için PostgreSQL dokümantasyonuna bakın.
G.2.4. Görünümler
pgpro_stats uzantısı aşağıdaki görünümleri sağlar:
G.2.4.1. pgpro_stats_statements
pgpro_stats_statements görünümü, her normalleştirilmiş SQL ifadesi için planlama ve yürütme istatistiklerini içerir. Bu görünüm pg_stat_statements görünümüne benzer, ancak ek olarak sorgu planlarını, bekleme olayları istatistiklerini ve operatör kaynak kullanım bilgilerini içerir.
pgpro_stats_statements görünümü aşağıdaki sütunları içerir:
| Sütun | Tip | Açıklama |
|---|---|---|
userid |
oid |
İfadeyi yürüten kullanıcının OID'si |
dbid |
oid |
İfadenin yürütüldüğü veritabanının OID'si |
queryid |
bigint |
Normalleştirilmiş sorgu metninin hash kodu |
planid |
bigint |
Sorgu planının hash kodu |
query |
text |
Normalleştirilmiş sorgu metni |
plan |
text |
Sorgu planı (EXPLAIN çıktısı) |
plans |
bigint |
İfadenin planlandığı sayı |
total_plan_time |
double precision |
İfadenin planlanmasında harcanan toplam süre (milisaniye) |
min_plan_time |
double precision |
İfadenin planlanmasında harcanan minimum süre (milisaniye) |
max_plan_time |
double precision |
İfadenin planlanmasında harcanan maksimum süre (milisaniye) |
mean_plan_time |
double precision |
İfadenin planlanmasında harcanan ortalama süre (milisaniye) |
stddev_plan_time |
double precision |
Planlama süresinin standart sapması (milisaniye) |
calls |
bigint |
İfadenin yürütülme sayısı |
total_exec_time |
double precision |
İfadenin yürütülmesinde harcanan toplam süre (milisaniye) |
min_exec_time |
double precision |
İfadenin yürütülmesinde harcanan minimum süre (milisaniye) |
max_exec_time |
double precision |
İfadenin yürütülmesinde harcanan maksimum süre (milisaniye) |
mean_exec_time |
double precision |
İfadenin yürütülmesinde harcanan ortalama süre (milisaniye) |
stddev_exec_time |
double precision |
Yürütme süresinin standart sapması (milisaniye) |
rows |
bigint |
İfade tarafından alınan veya etkilenen toplam satır sayısı |
shared_blks_hit |
bigint |
Paylaşılan blok önbellek isabet sayısı |
shared_blks_read |
bigint |
Okunan paylaşılan blok sayısı |
shared_blks_dirtied |
bigint |
Kirletilen paylaşılan blok sayısı |
shared_blks_written |
bigint |
Yazılan paylaşılan blok sayısı |
local_blks_hit |
bigint |
Yerel blok önbellek isabet sayısı |
local_blks_read |
bigint |
Okunan yerel blok sayısı |
local_blks_dirtied |
bigint |
Kirletilen yerel blok sayısı |
local_blks_written |
bigint |
Yazılan yerel blok sayısı |
temp_blks_read |
bigint |
Okunan geçici blok sayısı |
temp_blks_written |
bigint |
Yazılan geçici blok sayısı |
blk_read_time |
double precision |
Blok okuma için harcanan toplam süre (milisaniye) |
blk_write_time |
double precision |
Blok yazma için harcanan toplam süre (milisaniye) |
wal_records |
bigint |
Oluşturulan WAL kayıt sayısı |
wal_fpi |
bigint |
Oluşturulan WAL tam sayfa görüntü sayısı |
wal_bytes |
numeric |
Oluşturulan WAL bayt miktarı |
wal_buffers_full |
bigint |
WAL tamponlarının dolu olduğu sayı |
inval_msgs |
pgpro_stats_inval_msgs |
Önbellek geçersiz kılma mesaj istatistikleri |
rusage |
pgpro_stats_rusage |
Kaynak kullanım istatistikleri (CPU, I/O) |
wait_events |
pgpro_stats_wait_events |
Bekleme olayları istatistikleri |
G.2.4.2. pgpro_stats_totals
pgpro_stats_totals görünümü, veritabanları, roller, istemci düğümleri ve uygulamalar için toplam istatistikler sağlar. Bu görünüm, yük dağılımını analiz etmek için kullanılır.
pgpro_stats_totals görünümü aşağıdaki sütunları içerir:
| Sütun | Tip | Açıklama |
|---|---|---|
dbid |
oid |
Veritabanı OID'si |
userid |
oid |
Kullanıcı OID'si |
client_node |
text |
İstemci düğüm adı |
application |
text |
Uygulama adı |
queries_executed |
bigint |
Yürütülen sorgu sayısı |
total_plan_time |
double precision |
Toplam planlama süresi (milisaniye) |
total_exec_time |
double precision |
Toplam yürütme süresi (milisaniye) |
blk_read_time |
double precision |
Blok okuma süresi (milisaniye) |
blk_write_time |
double precision |
Blok yazma süresi (milisaniye) |
shared_blks_hit |
bigint |
Paylaşılan blok önbellek isabet sayısı |
shared_blks_read |
bigint |
Okunan paylaşılan blok sayısı |
shared_blks_dirtied |
bigint |
Kirletilen paylaşılan blok sayısı |
shared_blks_written |
bigint |
Yazılan paylaşılan blok sayısı |
wal_bytes |
numeric |
Oluşturulan WAL bayt miktarı |
inval_msgs |
pgpro_stats_inval_msgs |
Önbellek geçersiz kılma mesaj istatistikleri |
cache_resets |
bigint |
Önbellek sıfırlama sayısı |
G.2.4.3. pgpro_stats_inval_status
pgpro_stats_inval_status görünümü, önbellek geçersiz kılma durumu hakkında bilgi sağlar. Bu görünüm, önbellek performansını analiz etmek için kullanılır.
| Sütun | Tip | Açıklama |
|---|---|---|
num_inval_queue_cleanups |
bigint |
Önbellek geçersiz kılma kuyruğu temizleme sayısı |
num_inval_queue_resets |
bigint |
Önbellek geçersiz kılma kuyruğu sıfırlama sayısı |
G.2.5. Veri Tipleri
pgpro_stats uzantısı, istatistikleri temsil etmek için özel veri tipleri kullanır. Bu tipler, sorgu planları, bekleme olayları ve kaynak kullanım bilgilerini içerir.
G.2.5.1. pgpro_stats_inval_msgs
pgpro_stats_inval_msgs veri tipi, önbellek geçersiz kılma mesaj istatistiklerini temsil eder. Bu tip, pgpro_stats_statements ve pgpro_stats_totals görünümlerinde kullanılır.
| Alan | Tip | Açıklama |
|---|---|---|
total |
bigint |
Toplam geçersiz kılma mesaj sayısı |
catcache |
bigint |
Katalog önbelleği seçici geçersiz kılma mesaj sayısı |
catalog |
bigint |
Katalog önbelleği tam geçersiz kılma mesaj sayısı |
relcache |
bigint |
İlişki önbelleği seçici geçersiz kılma mesaj sayısı |
relcache_all |
bigint |
İlişki önbelleği tam geçersiz kılma mesaj sayısı |
smgr |
bigint |
İlişki dosyalarının açık dosyalarını geçersiz kılan mesaj sayısı. Mesajlar kuyruğa eklendiğinde artar |
relmap |
bigint |
İlişki haritası önbelleği geçersiz kılma mesaj sayısı. Mesajlar kuyruğa gönderildiğinde artar |
snapshot |
bigint |
Katalog anlık görüntüsü geçersiz kılma mesaj sayısı |
G.2.5.2. pgpro_stats_rusage
pgpro_stats_rusage veri tipi, kaynak kullanım istatistiklerini temsil eder. Bu tip, CPU ve I/O kullanım bilgilerini içerir.
| Alan | Tip | Açıklama |
|---|---|---|
user_time |
double precision |
Kullanıcı alanında CPU'da harcanan süre (saniye) |
system_time |
double precision |
Sistem alanında CPU'da harcanan süre (saniye) |
read_bytes |
bigint |
Okunan bayt sayısı |
write_bytes |
bigint |
Yazılan bayt sayısı |
G.2.5.3. pgpro_stats_wait_events
pgpro_stats_wait_events veri tipi, bekleme olayları istatistiklerini temsil eder. Bu tip, farklı bekleme olay türleri için bekleme sürelerini içerir.
| Alan | Tip | Açıklama |
|---|---|---|
wait_event_type |
text |
Bekleme olay türü |
wait_event |
text |
Bekleme olay adı |
wait_time |
double precision |
Bekleme süresi (saniye) |
G.2.6. Fonksiyonlar
pgpro_stats uzantısı, istatistikleri yönetmek ve sıfırlamak için çeşitli fonksiyonlar sağlar:
G.2.6.1. pgpro_stats_statements_reset
pgpro_stats_statements_reset([userid oid], [dbid oid], [queryid bigint])
Belirtilen kriterlere göre istatistikleri sıfırlar. Parametreler belirtilmezse, tüm istatistikler sıfırlanır.
<strong>Parametreler:</strong>
userid— İstatistikleri sıfırlanacak kullanıcının OID'si (opsiyonel)dbid— İstatistikleri sıfırlanacak veritabanının OID'si (opsiyonel)queryid— İstatistikleri sıfırlanacak sorgunun queryid'si (opsiyonel)
<strong>Dönen Değer:</strong> void
<strong>Örnek:</strong>
-- Tüm istatistikleri sıfırla
SELECT pgpro_stats_statements_reset();
-- Belirli bir veritabanı için istatistikleri sıfırla
SELECT pgpro_stats_statements_reset(dbid := (SELECT oid FROM pg_database WHERE datname = 'mydb'));
-- Belirli bir kullanıcı için istatistikleri sıfırla
SELECT pgpro_stats_statements_reset(userid := (SELECT oid FROM pg_user WHERE usename = 'myuser'));
Not: pg_user görünümü hakkında daha fazla bilgi için PostgreSQL dokümantasyonuna bakın.
G.2.6.2. pgpro_stats_totals_reset
pgpro_stats_totals_reset([dbid oid], [userid oid], [client_node text], [application text])
pgpro_stats_totals görünümündeki toplam istatistikleri sıfırlar.
<strong>Parametreler:</strong>
dbid— Veritabanı OID'si (opsiyonel)userid— Kullanıcı OID'si (opsiyonel)client_node— İstemci düğüm adı (opsiyonel)application— Uygulama adı (opsiyonel)
G.2.6.3. pgpro_stats_inval_status
pgpro_stats_inval_status() returns record
pgpro_stats_inval_status görünümünü tanımlar. Bu fonksiyon, önbellek geçersiz kılma durumu hakkında bilgi döndürür.
<strong>Dönen Değer:</strong> record (num_inval_queue_cleanups bigint, num_inval_queue_resets bigint)
G.2.7. Yapılandırma Parametreleri
pgpro_stats uzantısı aşağıdaki yapılandırma parametrelerini destekler. Bu parametreler postgresql.conf dosyasında veya ALTER SYSTEM komutu ile ayarlanabilir:
G.2.7.1. pgpro_stats.max
<strong>Tip:</strong> integer
<strong>Varsayılan:</strong> 5000
Saklanacak maksimum normalleştirilmiş ifade sayısı. Bu sayıya ulaşıldığında, en az kullanılan ifadeler otomatik olarak kaldırılır. Bu parametre, paylaşılan bellek kullanımını kontrol etmek için kullanılır.
<strong>Not:</strong> Bu parametrenin değeri, paylaşılan bellek kullanımını doğrudan etkiler. Daha yüksek değerler daha fazla bellek kullanır, ancak daha fazla sorgu istatistiği saklanır.
G.2.7.2. pgpro_stats.track
<strong>Tip:</strong> enum ('all', 'top', 'none')
<strong>Varsayılan:</strong> 'all'
Hangi ifadelerin izleneceğini belirler:
all— Tüm ifadeler izlenirtop— Sadece en üst ifadeler izlenir (en çok kaynak kullananlar)none— Hiçbir ifade izlenmez
G.2.7.3. pgpro_stats.track_planning
<strong>Tip:</strong> boolean
<strong>Varsayılan:</strong> on
Planlama istatistiklerinin toplanıp toplanmayacağını belirler. Bu parametre 'off' olarak ayarlandığında, planlama süresi ve plan bilgileri toplanmaz, bu da bellek kullanımını azaltır.
G.2.7.4. pgpro_stats.track_utility
<strong>Tip:</strong> boolean
<strong>Varsayılan:</strong> on
Yardımcı komutların (DDL, DCL vb.) izlenip izlenmeyeceğini belirler.
G.2.7.5. pgpro_stats.save
<strong>Tip:</strong> boolean
<strong>Varsayılan:</strong> on
Sunucu durdurulduğunda istatistiklerin diske kaydedilip kaydedilmeyeceğini belirler. Bu parametre 'off' olarak ayarlandığında, sunucu yeniden başlatıldığında istatistikler kaybolur.
G.2.7.6. pgpro_stats.track_io_timing
<strong>Tip:</strong> boolean
<strong>Varsayılan:</strong> on (track_io_timing etkinse)
I/O zamanlama istatistiklerinin toplanıp toplanmayacağını belirler. Bu parametre, PostgreSQL'in track_io_timing parametresine bağlıdır.
G.2.8. Uygulama Oturum İzleme
pgpro_stats uzantısı, belirli uygulama oturumlarını izlemenize olanak tanır. Bu özellik, belirli bir uygulama veya kullanıcı için sorgu performansını analiz etmek için kullanışlıdır. Oturum izleme, belirli uygulamalar, kullanıcılar veya istemci düğümleri için detaylı istatistikler toplamanıza olanak tanır.
G.2.8.1. Oturum İzlemeyi Etkinleştirme
Oturum izlemeyi etkinleştirmek için, pgpro_stats.enable_tracing parametresini 'on' olarak ayarlayın:
ALTER SYSTEM SET pgpro_stats.enable_tracing = 'on';
SELECT pg_reload_conf();
Not: ALTER SYSTEM ve pg_reload_conf() hakkında daha fazla bilgi için PostgreSQL dokümantasyonuna bakın.
G.2.8.2. İzlenecek Oturumları Belirleme
İzlenecek oturumları belirlemek için, pgpro_stats.trace_application, pgpro_stats.trace_user veya pgpro_stats.trace_client_node parametrelerini kullanabilirsiniz:
-- Belirli bir uygulama için izleme
ALTER SYSTEM SET pgpro_stats.trace_application = 'myapp';
SELECT pg_reload_conf();
-- Belirli bir kullanıcı için izleme
ALTER SYSTEM SET pgpro_stats.trace_user = 'myuser';
SELECT pg_reload_conf();
-- Belirli bir istemci düğümü için izleme
ALTER SYSTEM SET pgpro_stats.trace_client_node = '192.168.1.100';
SELECT pg_reload_conf();
Not: ALTER SYSTEM ve pg_reload_conf() hakkında daha fazla bilgi için PostgreSQL dokümantasyonuna bakın.
G.2.8.3. İzleme Parametreleri
| Parametre | Tip | Varsayılan | Açıklama |
|---|---|---|---|
pgpro_stats.enable_tracing |
boolean |
off |
Oturum izlemeyi etkinleştirir/devre dışı bırakır |
pgpro_stats.trace_application |
text |
NULL |
İzlenecek uygulama adı |
pgpro_stats.trace_user |
text |
NULL |
İzlenecek kullanıcı adı |
pgpro_stats.trace_client_node |
text |
NULL |
İzlenecek istemci düğüm adı veya IP adresi |
<strong>Not:</strong> Oturum izleme, performans üzerinde ek yük oluşturabilir. Sadece gerekli olduğunda etkinleştirin ve izleme tamamlandıktan sonra devre dışı bırakın.
G.2.9. Önbellek Geçersiz Kılma Metrikleri
pgpro_stats uzantısı, önbellek geçersiz kılma mesajlarının istatistiklerini toplar. Bu metrikler, önbellek performansını analiz etmek ve potansiyel sorunları tespit etmek için kullanılabilir. Önbellek geçersiz kılma, PostgreSQL'in iç önbelleklerini (katalog önbelleği, ilişki önbelleği vb.) güncellemek için kullanılan mekanizmadır.
G.2.9.1. Önbellek Geçersiz Kılma İstatistiklerini Görüntüleme
Önbellek geçersiz kılma istatistikleri, pgpro_stats_inval_msgs veri tipi ve pgpro_stats_inval_status görünümü aracılığıyla erişilebilir. pgpro_stats_statements ve pgpro_stats_totals görünümlerinde de inval_msgs sütunu bulunur.
-- Önbellek geçersiz kılma durumunu görüntüle
SELECT * FROM pgpro_stats_inval_status();
-- Belirli bir ifade için geçersiz kılma mesajlarını görüntüle
SELECT queryid, query, inval_msgs
FROM pgpro_stats_statements
WHERE inval_msgs.total > 0
ORDER BY inval_msgs.total DESC
LIMIT 10;
G.2.9.2. Önbellek Geçersiz Kılma Sorunlarını Tespit Etme
pgpro_stats_inval_status görünümündeki num_inval_queue_cleanups ve num_inval_queue_resets sütunları, önbellek geçersiz kılma kuyruğunun durumunu gösterir. Bu metrikler, önbellek performans sorunlarını tespit etmek için kullanılabilir:
- Eğer num_inval_queue_cleanups belirli bir süre boyunca önemli ölçüde artıyorsa, ancak num_inval_queue_resets artmıyorsa, bu, backend'lerin geçersiz kılma mesajlarını işlediğini, ancak yeterince hızlı olmadığını gösterir.
- Eğer num_inval_queue_cleanups önemli ölçüde artmıyorsa, ancak num_inval_queue_resets artıyorsa, bu, backend'lerin geçersiz kılma mesajlarını işlemede gecikme yaşadığını gösterir.
- Eğer her iki sayaç da önemli ölçüde artıyorsa, bu, backend'lerin geçersiz kılma mesajlarını işlemede çok yavaş olduğunu ve kuyruğun taştığını gösterir.
Hangi backend'lerin geçersiz kılma mesajlarını işlemede gecikme yaşadığını belirlemek için, pgpro_stats_totals görünümündeki cache_resets sütununu kullanabilirsiniz.
-- En çok önbellek sıfırlaması yapan backend'leri bul
SELECT dbid, userid, client_node, application, cache_resets
FROM pgpro_stats_totals
WHERE cache_resets > 0
ORDER BY cache_resets DESC
LIMIT 10;
G.2.9.3. pgpro_stats_inval_msgs Veri Tipi
pgpro_stats_inval_msgs veri tipi, farklı türdeki geçersiz kılma mesajlarının sayısını içerir. Bu tip, pgpro_stats_statements ve pgpro_stats_totals görünümlerinde inval_msgs sütunu olarak kullanılır.
pgpro_stats_inval_msgs veri tipinin alanları Tablo G.85'te listelenmiştir (yukarıda G.2.5.1 bölümünde).
G.2.10. Yazarlar
pgpro_stats uzantısı Postgres Professional tarafından geliştirilmiştir.
<strong>Postgres Professional</strong><br/>Moskova, Rusya<br/><a href="https://postgrespro.com" target="_blank">https://postgrespro.com</a>