Таърихи сессияи фаъоли PostgreSQL - тамдиди нави pgsentinel

Ширкат pgsentinel васеъшавии pgsentinel бо ҳамон ном бароварда шуд (анбори github), ки намуди pg_active_session_history ба PostgreSQL - таърихи сессияҳои фаъолро илова мекунад (монанд ба таърихи v$active_session_history Oracle).

Аслан, инҳо аксҳои сония ба сония аз pg_stat_activity мебошанд, аммо нуктаҳои муҳим мавҷуданд:

  1. Ҳама маълумоти ҷамъшуда танҳо дар хотираи оперативӣ нигоҳ дошта мешаванд ва миқдори истеъмоли хотира аз рӯи шумораи сабтҳои охирини захирашуда танзим карда мешавад.
  2. Майдони queryid илова карда мешавад - ҳамон дархост аз тамдиди pg_stat_statements (насби пешакӣ лозим аст).
  3. Майдони top_level_query илова карда мешавад - матни дархосте, ки аз он дархости ҷорӣ даъват шудааст (агар pl/pgsql истифода шавад)


Рӯйхати пурраи майдонҳои pg_active_session_history:

      Сутуни | Навъи -----------------+------------------------- хокистар_вақт | тамғаи вақт бо минтақаи вақт datid | oid datename | матни pid | integer usesysid | oid usename | матни барнома_ном | матни client_addr | text client_hostname | text client_port | integer backend_start | тамғаи вақт бо минтақаи вақт xact_start | тамғаи вақт бо минтақаи вақт query_start | тамғаи вақт бо минтақаи вақт_тағйир | тамғаи вақт бо минтақаи вақт wait_event_type | матн wait_event | ҳолати матн | text backend_xid | xid backend_xmin | xid top_level_query | дархости матнӣ | дархости матн | bigint backend_type | матн                     

Барои монтаж хануз бастаи тайёр нест. Тавсия дода мешавад, ки манбаъҳоро зеркашӣ кунед ва китобхонаро худатон ҷамъ кунед. Шумо аввал бояд бастаи "devel" -ро барои сервери худ насб кунед ва роҳро ба pg_config дар тағирёбандаи PATH таъин кунед. Мо ҷамъ мекунем:

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-ро аз нав оғоз кунед ва васеъшавӣ эҷод кунед:

васеъшавии pgsentinel эҷод кунед;

Маълумоти ҷамъшуда ба мо имкон медиҳад, ки ба саволҳои зерин ҷавоб диҳем:

  • Шумо бештар дар кадом ҷаласаҳои интизорӣ вақт сарф мекардед?
  • Кадом сессияҳо бештар фаъол буданд?
  • Кадом дархостҳо бештар фаъол буданд?

Шумо, албатта, метавонед ба ин саволҳо бо истифода аз дархостҳои SQL ҷавоб гиред, аммо дидани он дар график бо нишон додани фосилаҳои вақти таваҷҷӯҳ бо муш қулайтар аст. Шумо метавонед ин корро бо як барномаи ройгон иҷро кунед PASH-Намоишгар (шумо метавонед бинарҳои ҷамъшударо дар қисмат зеркашӣ кунед Варақаи).

Ҳангоми оғоз кардан, PASH-Viewer (аз версияи 0.4.0 сар карда) мавҷудияти намуди pg_active_session_history-ро месанҷад ва агар он мавҷуд бошад, тамоми таърихи ҷамъшударо аз он бор мекунад ва хондани маълумоти нави воридшударо идома дода, графикро ҳар 15 сония навсозӣ мекунад.

Таърихи сессияи фаъоли PostgreSQL - тамдиди нави pgsentinel

Манбаъ: will.com

Илова Эзоҳ