Dîroka danişîna çalak a PostgreSQL - pêveka nû ya pgsentinel

Şirket pgsentinel dirêjkirina pgsentinel bi heman navî derxist (depoya github), ku dîmena pg_active_session_history li PostgreSQL zêde dike - dîroka danişînên çalak (wek v$active_session_history ya Oracle).

Di bingeh de, ev tenê ji pg_stat_activity dîmenên duyemîn-duyemîn in, lê xalên girîng hene:

  1. Hemî agahdariya berhevkirî tenê di RAM-ê de têne hilanîn, û mîqdara bîranînê ya ku tê vexwarin ji hêla hejmara tomarên paşîn ên hilandî ve têne rêve kirin.
  2. Qada queryid tê zêdekirin - heman pirsiyar ji pêveka pg_stat_statements (pêş-sazkirinê pêwîst e).
  3. Qada top_level_query tê zêdekirin - metna pirsê ya ku jêpirsîna heyî jê hatî gazî kirin (heke pl/pgsql bikar bîne)


Navnîşa tevahî ya qadên pg_active_session_history:

      Stûn | Tîp ------------------+------------------------ ash_time | mohra demjimêra bi qada demjimêrê datid | oid datename | text pid | jimareya bêkêmasî useysid | oid username | text application_name | text client_addr | text client_hostname | text client_port | paşnav_destpêka yekjimar | mohra demjimêra bi qada demjimêrê xact_destpêk | mohra demjimêra bi qada demjimêrê query_start | mohra demjimêra bi herêma demê re state_change | mohra demjimêra bi qada demjimêrê wait_event_type | text benda_bûyer | rewşa nivîsê | text backend_xid | xid backend_xmin | xid top_level_query | pirsa nivîsê | text queryid | bigint backend_type | nivîstok                     

Ji bo sazkirinê hêj pakêtek amade tune. Tê pêşniyar kirin ku çavkaniyan dakêşin û pirtûkxaneyê bi xwe kom bikin. Pêşî hûn hewce ne ku pakêta "pêşvebirinê" ji bo servera xwe saz bikin û riya pg_config di guhêrbar PATH de saz bikin. Em berhev dikin:

cd pgsentinel/src
kirin
saz bikin

Parametreyan li postgres.conf zêde bikin:

shared_preload_libraries = 'pg_stat_statements,pgsentinel'
track_activity_query_size = 2048
pg_stat_statements.track = hemû

# hejmara tomarên dawî yên ku di bîranînê de ne
pgsentinel_ash.max_entries = 10000

PostgreSQL ji nû ve bidin destpêkirin û pêvekek biafirînin:

pêvekirina pgsentinel çêbikin;

Agahdariya berhevkirî rê dide me ku em bersiva pirsên wekî:

  • We herî zêde wext li ser kîjan danişînên bendewariyê derbas kir?
  • Kîjan danişînên herî çalak bûn?
  • Çi daxwazên herî çalak bûn?

Bê guman, hûn dikarin bi karanîna pirsên SQL bersivên van pirsan bistînin, lê hêsantir e ku meriv vê yekê bi dîtbarî li ser grafekê bi ronîkirina navberên dem ên balkêş bi mişkê re bibîne. Hûn dikarin vê yekê bi bernameyek belaş bikin PASH-Viewer (hûn dikarin binareyên berhevkirî di beşê de dakêşin Releases).

Dema ku dest pê dike, PASH-Viewer (ji guhertoya 0.4.0 dest pê dike) hebûna dîtina pg_active_session_history kontrol dike û heke hebe, ew tevahiya dîroka berhevkirî jê bar dike û xwendina daneyên nû yên hatinî didomîne, grafîkê her 15 çirkeyan nûve dike.

Dîroka danişîna çalak a PostgreSQL - pêveka nû ya pgsentinel

Source: www.habr.com

Add a comment