Imbali yeseshoni yePostgreSQL esebenzayo-ulwandiso olutsha lwepgsentinel

Inkampani pgsentinel ikhuphe i pgsentinel ulwandiso lwegama elifanayo (github yokugcina), eyongeza umbono we-pg_active_session_history kwi-PostgreSQL - imbali yeeseshoni ezisebenzayo (ezifana ne-Oracle's v $active_session_history).

Ngokusisiseko, ezi zizifinyezo nje zesibini-ngesibini ukusuka ku-pg_stat_activity, kodwa kukho amanqaku abalulekileyo:

  1. Lonke ulwazi oluqokelelweyo lugcinwa kuphela kwi-RAM, kwaye inani elisetyenzisiweyo lememori lilawulwa yinani leerekhodi ezigciniweyo zokugqibela.
  2. Indawo ye-queryid yongezwa - umbuzo ofanayo ukusuka kulwandiso lwe-pg_stat_statements (ufakelo lwangaphambili luyafuneka).
  3. Indawo_yombuzo_wongeziweyo wongezwa - okubhaliweyo kombuzo apho umbuzo wangoku ubizwe ngokuba usebenzisa pl/pgsql)


Uluhlu olupheleleyo lwemihlaba pg_active_session_history:

      Ikholamu | Uhlobo ------------------+-------------------------- ash_time | isitampu sexesha ngezowuni yexesha datid | oid datename | umbhalo pid | inani elipheleleyo usesyid | oid usename | isicelo sombhalo_igama | text client_addr | text client_hostname | text client_port | inani elipheleleyo lokubuyela umva_start | isitampu sexesha esinendawo yexesha xact_start | isitampu sexesha esinendawo yexesha query_start | isitampu sexesha esinendawo yexesha state_change | isitampu sexesha esinendawo yexesha wait_event_type | umbhalo wait_isiganeko | isimo sokubhaliweyo | umbhalo backend_xid | xid ngasemva_xmin | xid top_level_query | umbuzo wombhalo | umbuzo wokubhaliweyo | bigint backend_type | umbhalo                     

Akukabikho ipakethe esele yenziwe yofakelo okwangoku. Kuyacetyiswa ukuba ukhuphele imithombo kwaye udibanise ithala leencwadi ngokwakho. Okokuqala kufuneka ufake iphakheji "yophuhliso" yeseva yakho kwaye usete indlela eya kwi-pg_config kuluhlu lwe-PATH. Siqokelela:

cd pgsentinel/src
enza
ukwenza ukufaka

Yongeza iiparamitha kwi postgres.conf:

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

# inani leerekhodi zamva nje ezigcinwe kwinkumbulo
pgsentinel_ash.max_entries = 10000

Qala kwakhona i-PostgreSQL kwaye wenze ulwandiso:

yenza ipgsentinel yolwandiso;

Ulwazi oluqokelelweyo lusivumela ukuba siphendule imibuzo efana nale:

  • Zeziphi iiseshini zokulinda ochithe ixesha elininzi kuzo?
  • Zeziphi iiseshini ebezisebenza kakhulu?
  • Zeziphi ezona zicelo zazisebenza kakhulu?

Unako, ngokuqinisekileyo, ukufumana iimpendulo kule mibuzo usebenzisa imibuzo ye-SQL, kodwa kulungele ngakumbi ukubona oku ngokubonakalayo kwigrafu ngokugqamisa amaxesha exesha lomdla nge mouse. Unokwenza oku ngeprogram yasimahla PASH-Mjongi (ungakhuphela iibhinari eziqokelelweyo kwicandelo kukhupho).

Xa uqala, i-PASH-Viewer (ukuqala kwi-version 0.4.0) ijonga ubukho bembono ye-pg_active_session_history kwaye ukuba ikhona, ilayisha yonke imbali eqokelelweyo kuyo kwaye iqhubeke nokufunda idatha entsha engenayo, ihlaziya igrafu rhoqo ngemizuzwana eyi-15.

Imbali yeseshoni yePostgreSQL esebenzayo-ulwandiso olutsha lwepgsentinel

umthombo: www.habr.com

Yongeza izimvo