شرکت
په اصل کې، دا په ساده ډول د pg_stat_activity څخه د دویمې ثانیې عکسونه دي، مګر مهم ټکي شتون لري:
- ټول راټول شوي معلومات یوازې په RAM کې زیرمه شوي، او د حافظې مصرف شوي مقدار د وروستي ذخیره شوي ریکارډونو شمیر لخوا تنظیم کیږي.
- د queryid ساحه اضافه شوې - د pg_stat_statements توسیع څخه ورته queryid (د مخکې نصبولو اړتیا ده).
- د top_level_query ساحه اضافه شوې - د پوښتنې متن چې له هغې څخه اوسنۍ پوښتنه بلل شوې وه (که د pl/pgsql کارول وي)
د pg_active_session_history برخو بشپړ لیست:
کالم | ډول ------------------------------------------- ash_time | د مهال ویش سره د مهال ویش تاریخ | د نیټې نوم | متن pid | integer useysid | oid کارن نوم | د متن غوښتنلیک_نوم | متن client_addr | متن client_hostname | متن client_port | integer backend_start | د وخت زون سره د مهال ویش xact_start | د مهال ویش سره د مهال ویش پوښتنې_start | د مهال ویش سره د وخت زون state_change | د مهال ویش سره د مهال ویش انتظار_event_type | متن wait_event | د متن حالت | متن backend_xid | xid backend_xmin | xid top_level_query | د متن پوښتنه | د متن پوښتنه bigint backend_type | متن
تر اوسه د نصب لپاره هیڅ چمتو شوی بسته نشته. دا وړاندیز کیږي چې سرچینې ډاونلوډ کړئ او پخپله کتابتون راټول کړئ. تاسو لومړی اړتیا لرئ د خپل سرور لپاره "ترقی" کڅوړه نصب کړئ او د PATH متغیر کې pg_config ته لاره وټاکئ. موږ راټولوو:
cd pgsentinel/src
لپاره
لګول
په postgres.conf کې پیرامیټونه اضافه کړئ:
shared_preload_libraries = 'pg_stat_statements,pgsentinel'
track_activity_query_size = 2048
pg_stat_statements.track = ټول# په حافظه کې د وروستي ریکارډونو شمیر
pgsentinel_ash.max_entries = 10000
PostgreSQL بیا پیل کړئ او یو توسیع رامینځته کړئ:
د پیګسینټینیل تمدید رامینځته کړئ؛
راټول شوي معلومات موږ ته اجازه راکوي چې پوښتنو ته ځواب ووایو لکه:
- تاسو په کوم انتظار ناستو کې ډیر وخت تیر کړی؟
- کومې ناستې ډیرې فعالې وې؟
- کومې غوښتنې خورا فعالې وې؟
تاسو کولی شئ، البته، د SQL پوښتنو په کارولو سره دې پوښتنو ته ځوابونه ترلاسه کړئ، مګر دا خورا اسانه ده چې دا په ګراف کې د موږک سره د ګټو د وخت وقفو په روښانه کولو سره وګورئ. تاسو کولی شئ دا د وړیا پروګرام سره ترسره کړئ
کله چې پیل کیږي، PASH-Viewer (د 0.4.0 نسخه څخه پیل کیږي) د pg_active_session_history لید شتون چیک کوي او که شتون ولري، دا ټول راټول شوي تاریخ له هغې څخه پورته کوي او د نوي راتلونکو معلوماتو لوستلو ته دوام ورکوي، په هر 15 ثانیو کې ګراف تازه کوي.
سرچینه: www.habr.com