Sobes.tech
Junior — Middle

Kā identificēt un analizēt ilgstoši izpildāmo vaicājumu PostgreSQL?

sobes.tech AI

Atbilde no AI

Lai identificētu ilgstoši izpildāmus vaicājumus PostgreSQL, var izmantot sistēmas skatu pg_stat_activity, kas rāda pašreizējās aktīvās vaicājumus un to izpildes laiku. Piemēram, vaicājums:

SELECT pid, now() - query_start AS duration, query
FROM pg_stat_activity
WHERE state = 'active'
ORDER BY duration DESC
LIMIT 5;

tas ļaus redzēt 5 ilgāk aktīvos vaicājumus.

Lai veiktu dziļāku analīzi, var aktivizēt lēnu vaicājumu reģistrēšanu postgresql.conf failā:

log_min_duration_statement = 1000  # reģistrēt vaicājumus, kas ilgāki par 1000 ms

Pēc tam visi vaicājumi, kas pārsniedz šo laiku, tiks reģistrēti žurnālos.

Tāpat ir lietderīgi izmantot profilēšanas rīkus un EXPLAIN ANALYZE, lai analizētu konkrētu vaicājumu izpildes plānu un identificētu šaurās vietas.