PostgreSQL moʻolelo kau hana - hoʻonui pgsentinel hou

ʻO ka hui pgsentinel hoʻokuʻu ʻia ka hoʻonui pgsentinel o ka inoa like (waihona waihona github), ka mea e hoʻohui i ka ʻike pg_active_session_history iā PostgreSQL - ka mōʻaukala o nā kau hana (e like me ka v$active_session_history a Oracle).

ʻO ka mea nui, he mau kiʻi paʻi lua-ke-kekona kēia mai pg_stat_activity, akā aia kekahi mau mea nui:

  1. Mālama ʻia nā ʻike i hōʻiliʻili ʻia ma RAM wale nō, a ʻo ka nui o ka hoʻomanaʻo i hoʻopau ʻia e hoʻoponopono ʻia e ka helu o nā moʻolelo i mālama ʻia.
  2. Hoʻohui ʻia ke kahua queryid - ʻo ka queryid like mai ka pg_stat_statements extension (pono e kau mua ʻia).
  3. Hoʻohui ʻia ke kahua top_level_query - ke kikokikona o ka nīnau kahi i kāhea ʻia ai ka nīnau o kēia manawa (i ka hoʻohana ʻana i ka pl/pgsql)


Papa inoa piha o nā kahua pg_active_session_history:

      kolamu | Type ---------------------------------lehu_time | hoailona manawa me ka palena manawa datid | oid datename | kikokikona pid | integer usesysid | inoa hoʻohana | inoa_palapala kikokikona | kikokikona client_addr | kikokikona client_hostname | kikokikona client_port | integer backend_start | kau manawa me ka palena manawa xact_start | timestamp me ka palena manawa query_start | manawa me ka palena manawa state_change | hoailona manawa me ka palena manawa wait_event_type | kikokikona kali_event | ʻano kikokikona | kikokikona backend_xid | xid backend_xmin | xid top_level_query | ninau kikokiko | kikokikona queryid | bigint backend_type | kikokikona                     

ʻAʻohe pūʻolo i mākaukau no ka hoʻokomo ʻana. Manaʻo ʻia e hoʻoiho i nā kumu a hōʻuluʻulu iā ʻoe iho i ka waihona. Pono mua ʻoe e hoʻokomo i ka pūʻolo "devel" no kāu kikowaena a hoʻonohonoho i ke ala i pg_config ma ka ʻano PATH. ʻOhi mākou:

cd pgsentinel/src
hana
e hoʻouka

Hoʻohui i nā ʻāpana i postgres.conf:

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

# helu o nā moʻolelo hou i mālama ʻia ma ka hoʻomanaʻo
pgsentinel_ash.max_entries = 10000

Hoʻomaka hou i ka PostgreSQL a hana i kahi hoʻonui:

hana i ka hoʻonui pgsentinel;

ʻO ka ʻike i hōʻiliʻili ʻia e hiki ai iā mākou ke pane i nā nīnau e like me:

  • He aha nā manaʻo i hoʻohana nui ʻia e nā kau?
  • ʻO wai nā kau i ʻoi loa?
  • He aha nā noi i hana nui loa?

Hiki iā ʻoe, ʻoiaʻiʻo, loaʻa nā pane i kēia mau nīnau me ka hoʻohana ʻana i nā nīnau SQL, akā ʻoi aku ka maʻalahi o ka ʻike ʻana i kēia ma ka pakuhi ma ke kuhikuhi ʻana i nā manawa manawa hoihoi me ka ʻiole. Hiki iā ʻoe ke hana i kēia me kahi polokalamu manuahi PASH-Nānā (hiki iā ʻoe ke hoʻoiho i nā binaries i hōʻiliʻili ʻia ma ka ʻāpana hookuu aku oia i).

I ka hoʻomaka ʻana, nānā ʻo PASH-Viewer (e hoʻomaka ana mai ka mana 0.4.0) i ke ʻano o ka nānā ʻana o ka pg_active_session_history, a inā loaʻa ia, hoʻouka ia i ka mōʻaukala i hōʻiliʻili ʻia mai ia mea a hoʻomau i ka heluhelu ʻana i nā ʻikepili e hiki mai ana, e hoʻonui ana i ka pakuhi i kēlā me kēia 15 kekona.

PostgreSQL moʻolelo kau hana - hoʻonui pgsentinel hou

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka