PostgreSQL saio aktiboaren historia - pgsentinel luzapen berria

Enpresaren pgsentinel izen bereko pgsentinel luzapena kaleratu zuen (github biltegia), zeinak pg_active_session_history ikuspegia gehitzen du PostgreSQL-ri - saio aktiboen historia (Oracle-ren v$active_session_history-ren antzekoa).

Funtsean, hauek pg_stat_activity-ko segundoz segundoko argazkiak dira, baina puntu garrantzitsuak daude:

  1. Metatutako informazio guztia RAMan soilik gordetzen da, eta kontsumitutako memoria kopurua gordetako azken erregistroen arabera arautzen da.
  2. Queryid eremua gehitzen da - pg_stat_statements luzapeneko queryid bera (aurretik instalatu behar da).
  3. Top_level_query eremua gehitzen da - uneko kontsulta deitzen den kontsultaren testua (pl/pgsql erabiltzen baduzu)


pg_active_session_history eremuen zerrenda osoa:

      Zutabea | Mota ------------------+------------------------ lizarra_denbora | ordu-zigilua ordu-eremuarekin data | oid dataizena | testu pid | osokoa usesysid | oid erabilera izena | testua aplikazioaren_izena | testu bezero_helbidea | testua bezero_ostalari izena | testu bezero_ataka | osokoa backend_start | ordu-zigilua ordu-eremuarekin xact_start | denbora-zigilua ordu-eremuarekin query_start | ordu-zigilua ordu-eremuaren egoera_aldaketa | denbora-zigilua ordu-eremuarekin wait_event_type | testu itxaron_gertaera | testuaren egoera | testu backend_xid | xid backend_xmin | xid goi-mailako_kontsulta | testu-kontsulta | testu-kontsulta ID | bigint backend_type | testua                     

Oraindik ez dago instalatzeko prest dagoen paketerik. Iturriak deskargatzea eta liburutegia zuk zeuk muntatzea gomendatzen da. Lehenik eta behin zure zerbitzarirako "devel" paketea instalatu eta bidea ezarri behar duzu pg_config PATH aldagaian. biltzen dugu:

cd pgsentinel/src
egiteko
make install

Gehitu parametroak postgres.conf-era:

shared_preload_libraries = 'pg_stat_statements, pgsentinel'
track_activity_query_size = 2048
pg_stat_statements.track = guztiak

# Memorian gordetako azken erregistro kopurua
pgsentinel_ash.max_entries = 10000

Berrabiarazi PostgreSQL eta sortu luzapena:

pgsentinel luzapena sortu;

Metatutako informazioari esker, honelako galderei erantzuteko aukera dugu:

  • Zein itxaron saiotan eman duzu denbora gehien?
  • Zein saio izan dira aktiboenak?
  • Zeintzuk izan ziren eskaerarik aktiboenak?

Galdera hauen erantzunak lor ditzakezu, noski, SQL kontsultak erabiliz, baina komenigarriagoa da hori grafiko batean bisualki ikustea interesgarri diren denbora tarteak saguarekin nabarmenduz. Doako programa batekin egin dezakezu PASH-Ikuslea (bildutako bitarrak deskarga ditzakezu atalean Oharrak).

Abiaraztean, PASH-Viewer-ek (0.4.0 bertsiotik hasita) pg_active_session_history ikuspegia dagoen egiaztatzen du eta existitzen bada, metatutako historia osoa kargatzen du bertatik eta sarrerako datu berriak irakurtzen jarraitzen du, grafikoa 15 segundoro eguneratuz.

PostgreSQL saio aktiboaren historia - pgsentinel luzapen berria

Iturria: www.habr.com

Gehitu iruzkin berria