PostgreSQL de Anlık Sorguları İzlemek

Postgresql üzerinde bazen yapılan işlemleri görmek isteriz. Bunun için farklı yöntemler ve Tool’lar bulunmaktadır. Örneğin basit ve ücretsiz tool olan PgAdmin üzerinden incelenebilir  fakat script ile kendim sorguyu çalıştırarak izlemek isterim derseniz aşağıdaki komuttan faydalanabilirsiniz. 

 Aşağıdaki script yardımı ile gelen sorguların pid’sini hangi veritabanına hangi sorgunun geldiğini, sorgu durumunu,çalışan sorguyu ,başlama zamanını ,hangi kullanıcı adı ve sorguyu kısa yoldan kill etmek için bulunduğu sorgunun pidsi ile kısa yoldan kill eden komut ile  sorguları izleyebilir ve kill edebiliriz.

SELECT s.pid,d.datname,s.state,s.query,s.query_start ,s.usename,s.client_port ,'SELECT pg_terminate_backend('||pid||')' as kill_command FROM pg_database d
LEFT JOIN pg_stat_activity s ON (s.datid = d.oid)
WHERE pid is not null

Sorgunun örnek çıktısı aşağıdaki gibidir.

 

Loading