
ΠΠΎΠΊΠ»Π°Π΄ Π½Π° ΠΠ°ΡΠΈΡ ΠΠΈΠ»ΠΊΠΎΠ²Π° Π·Π° Zabbix Meetup Online
ΠΡΠΊΠ°ΠΌ Π΄Π° Π²ΠΈ Π·Π°ΠΏΠΎΠ·Π½Π°Ρ Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π½Π° PostgreSQL ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°, ΠΊΠΎΠΉΡΠΎ ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π° ΠΎΡ Π½Π°ΡΠ°ΡΠ° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Zabbix.
ΠΡΠ΄Π°Π²Π½Π° ΠΈΠ·Π±ΡΠ°Ρ ΠΌΠ΅ Zabbix Π·Π° ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³, Π·Π°ΡΠΎΡΠΎ Π΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄, ΠΊΠΎΡΡΠΎ ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΎΡ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ ΠΈ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠΏΡΠ»ΡΡΠ½Π° Π² Π ΡΡΠΈΡ.
Π‘ΡΠ·Π΄Π°Π΄ΠΎΡ ΠΌΠ΅ Π°ΠΊΡΠΈΠ²Π΅Π½ Π°Π³Π΅Π½Ρ β Mamonsu, ΠΊΠΎΠΉΡΠΎ ΠΎΡΠΈΠ³ΡΡΡΠ²Π° ΠΏΠΎ-Π³ΡΠ²ΠΊΠ°Π² ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΠΎΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° ΠΏΠΎ ΠΎΠ½ΠΎΠ²Π° Π²ΡΠ΅ΠΌΠ΅ ΠΈ ΡΡΠ±ΠΈΡΠ° ΠΌΠ΅ΡΡΠΈΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΠΏΡΠ°ΡΠ° Π½Π° Zabbix Server. Mamonsu ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² Π½Π°ΡΠ°ΡΠ° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΏΡΠΈ ΠΏΡΠΎΠ²Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΠΎΠ΄ΠΈΡΠΈ.
Mamonsu
Mamonsu β Π°ΠΊΡΠΈΠ²Π΅Π½ Π°Π³Π΅Π½Ρ (Zabbix Trapper) Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π½Π° PostgreSQL ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°. Mamonsu (Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Python) ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π½Π° PostgreSQL ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΠΏΠ΅Ρ ΠΌΠΈΠ½ΡΡΠΈ.
Mamonsu ΡΠ°Π·ΠΏΠΎΠ»Π°Π³Π° Ρ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ:
- mamonsu tune β ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠ°ΡΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡ ΡΠ°ΠΉΠ» PostgreSQL Π·Π° ΠΌΠ°ΡΠΈΠ½Π°ΡΠ°, Π½Π° ΠΊΠΎΡΡΠΎ Π΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ Π°Π³Π΅Π½ΡΡΡ Mamonsu.
- mamonsu report β ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΠΊΠΎΡΡΠΎ ΡΡΠ·Π΄Π°Π²Π° ΠΎΡΡΠ΅ΡΠΈ Π·Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΠΈ PostgreSQL.
Mamonsu ΡΠ΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ° Π½Π° ΡΡΡΠ²ΡΡΠ° Π½Π° Π‘Π£ΠΠ, ΡΡΠ±ΠΈΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈ Ρ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΎ Π² JSON, ΠΊΠΎΠΉΡΠΎ ΠΈΠ·ΠΏΡΠ°ΡΠ° Π·Π° Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° Zabbix Server, ΠΊΡΠ΄Π΅ΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠΌΠ° ΡΠ°Π±Π»ΠΎΠ½ Π·Π° Π½Π΅Π³ΠΎΠ²ΠΈΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ.

Π‘Ρ Π΅ΠΌΠ° Π½Π° ΡΠ°Π±ΠΎΡΠ° Π½Π° Mamonsu
ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π° Mamonsu
- ΠΡΠ΅ΠΊΡΠΈΠ²Π½Π° ΡΠ°Π±ΠΎΡΠ° Ρ PostgreSQL. ΠΠΎΡΡΠΎΡΠ½Π½ΠΎΡΠΎ ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Ρ PostgreSQL Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΎ ΠΏΡΠ΅Π΄ΠΈΠΌΡΡΠ²ΠΎ Π½Π° Mamonsu. ΠΡΠΈ ΡΠΎΠ²Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΈΡΡ Π±ΡΠΎΠΉ Π²ΡΡΠ·ΠΊΠΈ Π΅ ΡΠ°Π²Π΅Π½ Π½Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΈΡ Π±ΡΠΎΠΉ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, Ρ ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΡΠ²ΡΡΠ·Π²Π°.
- Π Π°Π·ΡΠΈΡΡΠ΅ΠΌΠΎΡΡ. Mamonsu Π΅ Π½Π°ΠΏΡΠ»Π½ΠΎ βΠΏΠ»ΡΠ³ΠΈΠ½β Π°Π³Π΅Π½Ρ ΠΈ, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠΈΠΊΡΠΈΡΠ°Π½Π°ΡΠ° ΡΡΡΡΠΊΡΡΡΠ° Π½Π° Π²ΡΠ΅ΠΊΠΈ ΠΏΠ»ΡΠ³ΠΈΠ½ ΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»Π½Π°ΡΠ° ΠΏΡΠΎΡΡΠΎΡΠ° Π½Π° Python, Π»Π΅ΡΠ½ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π½Π°ΡΡΠΈ ΠΊΠ°ΠΊ Π΄Π° ΡΠ΅ ΠΏΠΈΡΠ°Ρ Π½ΠΎΠ²ΠΈ ΠΈΠ»ΠΈ Π΄Π° ΡΠ΅ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠ°Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈ ΠΏΠ»ΡΠ³ΠΈΠ½ΠΈ.
- Π¨ΠΈΡΠΎΠΊ ΠΎΠ±Ρ Π²Π°Ρ Π½Π° ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π·Π° PostgreSQL Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π½Π° ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΡ.
- ΠΡΡΠ· ΡΡΠ°ΡΡ, Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡ βΠΈΠ·Π²ΡΠ½ ΠΊΡΡΠΈΡΡΠ°β.
- ΠΠ·Π½Π°ΡΡΠ½Π΅ Π½Π° ΡΠ°Π±Π»ΠΎΠ½ΠΈ ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΊΠ°ΡΠ²Π°Π½Π΅ Π½Π° Zabbix Server.
- ΠΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½ΠΎΡΡ, ΠΊΠΎΠ΅ΡΠΎ Π΅ Π²Π°ΠΆΠ½ΠΎ Π·Π° Π½Π°ΡΠΈΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π½Π° Linux, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΡΠΎΠ΄Π½ΠΈ.
- ΠΠΈΡΠ΅Π½Π· ΠΏΠΎ BSD-ΠΊΠ»Π°ΡΠ·Π°.
Π ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΠΌΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΠ»ΡΠ³ΠΈΠ½ΠΈ ΠΈ Π²ΡΠ² Π²ΡΡΠΊΠ° ΡΠ»Π΅Π΄Π²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ ΡΠ΅ ΡΡΠ°ΡΠ°Π΅ΠΌ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π½Π΅ΡΠΎ Π½ΠΎΠ²ΠΎ.
- 14 ΠΏΠ»ΡΠ³ΠΈΠ½Π° Π·Π° PostgreSQL,
- 8 ΠΏΠ»ΡΠ³ΠΈΠ½Π° Π·Π° ΠΠ‘ Linux,
- 4 ΠΏΠ»ΡΠ³ΠΈΠ½Π° Π·Π° OS Windows.
Mamonsu ΡΡΠ±ΠΈΡΠ° Π½Π°Π΄ 110 ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π·Π° PostgreSQL ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ:
- 70 ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π·Π° PostgreSQL,
- 40 ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π·Π° OS Linux,
- 8 ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π·Π° OS Windows.
ΠΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π²ΠΊΠ»ΡΡΠ²Π°Ρ Π½Π°Π»ΠΈΡΠ½ΠΎΡΡ Π½Π° Π‘Π£ΠΠ, Π±ΡΠΎΠΉ ΡΠ²ΡΡΠ·Π²Π°Π½ΠΈΡ, ΡΠ°Π·ΠΌΠ΅Ρ Π½Π° Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ, ΡΠ΅ΠΊΠΏΠΎΠΉΠ½ΡΠΎΠ²Π΅, ΡΠΊΠΎΡΠΎΡΡ Π½Π° ΡΠ΅ΡΠ΅Π½Π΅/ΠΏΠΈΡΠ°Π½Π΅, Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ, Π±ΡΠΎΠΉ ΠΏΡΠΎΡΠ΅ΡΠΈ Π·Π° Π°Π²ΡΠΎΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ ΠΈ ΡΠΊΠΎΡΠΎΡΡ Π½Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° WAL. ΠΡΠ»Π½ΠΈΡΡ ΡΠΏΠΈΡΡΠΊ Ρ Π½Π°Π»ΠΈΡΠ½ΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ ΡΠ° Π½Π°Π»ΠΈΡΠ½ΠΈ Π½Π° Π² ΡΠ°ΠΉΡΠ° GitHub.

Π‘ΠΏΠΈΡΡΠΊ Ρ Π½Π°Π»ΠΈΡΠ½ΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π½Π° ΡΠ°ΠΉΡΠ° GitHub
Π‘ΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° Mamonsu Π·Π° 5 ΠΌΠΈΠ½ΡΡΠΈ
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ° Π½Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π·Π° PostgreSQL ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Mamonsu ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΈΠ·Π²ΡΡΡΠ΅Π½Π° Π·Π° 5 ΠΌΠΈΠ½ΡΡΠΈ, ΡΡΠ΅Π· ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° 5 ΠΏΡΠΎΡΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ.
- ΠΠ½ΡΡΠ°Π»Π°ΡΠΈΡ Π½Π° Mamonsu. Mamonsu ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½ ΠΎΡ ΠΈΠ·Ρ ΠΎΠ΄Π΅Π½ ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π½Π°Π»ΠΈΡΠ½ΠΈΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ.
$ git clone ... && cd mamonsu && python setup.py
build && python setup.py install
- ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° ΡΠ²ΡΡΠ·Π²Π°Π½ΠΈΡΡΠ°. ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ ΡΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Ρ PostgreSQL ΠΈ Zabbix Server Π² ΡΠ°ΠΉΠ»Π° agent.conf.
/etc/mamonsu/agent.conf
- ΠΠΊΡΠΏΠΎΡΡ Π½Π° ΡΠ°Π±Π»ΠΎΠ½ Π² Zabbix Server.
$ mamonsu zabbix template export
/usr/share/mamonsu/example.xml
- ΠΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ² ΡΠ·Π΅Π» Π² Zabbix Server. ΠΠΊΡΠΏΠΎΡΡΠ½ΠΈΡΡ ΡΠ°Π±Π»ΠΎΠ½ ΡΠ΅ Π±ΡΠ΄Π΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΡΠ²ΡΡΠ·Π°Π½ Ρ Π½ΠΎΠ²ΠΈΡ ΠΌΡΠ΅ΠΆΠΎΠ² ΡΠ·Π΅Π» Π½Π° Zabbix Server.
$ mamonsu zabbix host create mamonsu-demo
- Π‘ΡΠ°ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ.
$ service mamonsu start
ΠΠ°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π·Π° ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ Π½Π° Mamonsu
Π ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° Mamonsu ΠΏΠ»Π°Π½ΠΈΡΠ°ΠΌΠ΅ Π΄Π° Π΄ΠΎΡΠ°Π·Π²ΠΈΠ²Π°ΠΌΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈΡΠ΅ ΠΈ Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΠΌ Π½ΠΎΠ²ΠΈ ΠΏΠ»ΡΠ³ΠΈΠ½ΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠ»ΡΠ³ΠΈΠ½ Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π½Π° ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΡΠ°Π±Π»ΠΈΡΠΈ. ΠΠ»Π°Π½ΠΈΡΠ°ΠΌΠ΅ ΡΡΡΠΎ Π΄Π° ΠΏΠΎΠ΄ΠΎΠ±ΡΠΈΠΌ ΠΈ ΡΡΠ·Π΄Π°Π΄Π΅ΠΌ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π΄Π° ΡΠ°Π·ΡΠΈΡΠΈΠΌ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅ Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΡΡΠ΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° mamonsu tune.
ΠΠΎΠ΄ΡΠ» Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π½Π° PostgreSQL Π² ΡΡΡΡΠ°Π²Π° Π½Π° Zabbix Agent 2
ΠΠ° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Ρ PostgreSQL ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π±ΡΡΠ· ΠΈ ΠΏΠΎΠΏΡΠ»ΡΡΠ΅Π½ Π΄ΡΠ°ΠΉΠ²Π΅Ρ (PG Π΄ΡΠ°ΠΉΠ²Π΅Ρ ΠΈ toolkit Π·Π° Go).
Π ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π΄Π²Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°: Exporter, ΠΊΠΎΠΉΡΠΎ ΠΈΠ·Π²ΠΈΠΊΠ²Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°ΡΠ° ΠΏΠΎ ΠΊΠ»ΡΡ, ΠΈ Configurator Π·Π° Zabbix Agent 2, ΠΊΠΎΠΉΡΠΎ ΠΏΡΠΎΡΠΈΡΠ° ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ ΡΡΡ ΡΡΡΠ²ΡΡΠ°, Π·Π°Π΄Π°Π΄Π΅Π½ΠΈ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡ ΡΠ°ΠΉΠ».
ΠΠΏΠΈΡΠ°Ρ ΠΌΠ΅ ΡΠ΅ Π΄Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°ΠΌΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° Π‘Π£ΠΠ, Π³ΡΡΠΏΠΈΡΠ°ΠΉΠΊΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈΡΠ΅ ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°Ρ (handler) Π·Π° ΠΌΠ΅ΡΡΠΈΠΊΠΈΡΠ΅ ΠΈ Π³ΡΡΠΏΠΈΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ Π³ΡΡΠΏΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π² JSON ΠΊΠ°ΡΠΎ Π·Π°Π²ΠΈΡΠΈΠΌΠΈ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ (dependency items), ΠΈ Π½ΠΈΡΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΠΎ ΠΎΡΠΊΡΠΈΡΠΈΠ΅ (discovery rules).
ΠΡΠ½ΠΎΠ²Π½ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ
- Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Ρ PostgreSQL ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈΡΠ΅;
- ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π³ΡΠ²ΠΊΠ°Π²ΠΈ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΠΈ Π·Π° ΠΎΠΏΡΠΎΡ;
- ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ Ρ Π²Π΅ΡΡΠΈΠΈ Π½Π° PostgreSQL, Π½Π°ΡΠΈΠ½Π°Ρ ΠΎΡ 10, ΠΈ Zabbix Server, Π½Π°ΡΠΈΠ½Π°Ρ ΠΎΡ Π²Π΅ΡΡΠΈΡ 4.4;
- Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π½Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ PostgreSQL ΠΈΠ½ΡΡΠ°Π½ΡΠ° Π΅Π΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° Zabbix Agent 2, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΡΠ΅ΡΠΈΠΈ.
ΠΠΈΠ²Π° Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Ρ PostgreSQL
ΠΠ±ΡΠΎ ΡΠ° Π½Π°Π»ΠΈΡΠ½ΠΈ ΡΡΠΈ Π½ΠΈΠ²Π° Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Ρ PostgreSQL, Ρ.Π΅. Π·Π°Π΄Π°ΡΠΈ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ:
- Global,
- Sessions,
- Macros.
Global ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ ΡΠ΅ Π·Π°Π΄Π°Π²Π°Ρ Π½Π° Π½ΠΈΠ²ΠΎ Π°Π³Π΅Π½Ρ, Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Session ΠΈ Macros ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Ρ Π±Π°Π·Π°ΡΠ°.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Ρ PostgreSQL β Sessions ΡΠ΅ Π·Π°Π΄Π°Π²Π°Ρ Π² ΡΠ°ΠΉΠ»Π° zabbix_agent2.conf.

ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Ρ PostgreSQL β Sessions
- Π‘Π»Π΅Π΄ ΠΊΠ»ΡΡΠΎΠ²Π°ΡΠ° Π΄ΡΠΌΠ° Sessions ΡΠ΅ ΠΏΠΎΡΠΎΡΠ²Π° ΡΠ½ΠΈΠΊΠ°Π»Π½ΠΎ ΠΈΠΌΠ΅ Π½Π° ΡΠ΅ΡΠΈΡ, ΠΊΠΎΠ΅ΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ ΠΏΠΎΡΠΎΡΠ΅Π½ΠΎ Π² ΠΊΠ»ΡΡΠ° (ΡΠ°Π±Π»ΠΎΠ½Π°).
- ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ URI ΠΈ UserName Π΅ Π·Π°Π΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π½ΠΎ Π·Π° Π²ΡΡΠΊΠ° ΡΠ΅ΡΠΈΡ.
- ΠΠΊΠΎ ΠΈΠΌΠ΅ΡΠΎ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π΅ Π΅ Π·Π°Π΄Π°Π΄Π΅Π½ΠΎ, ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΎΠ±ΡΠΎΡΠΎ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΠΈΠΌΠ΅ Π½Π° Π±Π°Π·Π°ΡΠ° Π·Π° Π²ΡΠΈΡΠΊΠΈ ΡΠ΅ΡΠΈΠΈ Π·Π° PostgreSQL, ΠΊΠΎΠ΅ΡΠΎ ΡΡΡΠΎ ΡΠ΅ Π·Π°Π΄Π°Π²Π° Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡ ΡΠ°ΠΉΠ».
- ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Ρ PostgreSQL β Macros ΡΠ΅ Π·Π°Π΄Π°Π²Π°Ρ Π² ΠΊΠ»ΡΡΠ° Π½Π° ΠΌΠ΅ΡΡΠΈΠΊΠ°ΡΠ° Π² ΡΠ°Π±Π»ΠΎΠ½Π° (ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ Ρ ΠΌΠ΅ΡΠΎΠ΄Π°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π² Zabbix Agent 1), Ρ.Π΅. ΡΡΠ·Π΄Π°Π²Π°Ρ ΡΠ΅ Π² ΡΠ°Π±Π»ΠΎΠ½Π° ΠΈ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° ΡΠ΅ ΠΏΠΎΡΠΎΡΠ²Π°Ρ ΠΊΠ°ΡΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π² ΠΊΠ»ΡΡΠ°. ΠΡΠΈ ΡΠΎΠ²Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° ΠΌΠ°ΠΊΡΠΎΡΠΈΡΠ΅ Π΅ ΡΠΈΠΊΡΠΈΡΠ°Π½Π°, Ρ.Π΅. Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, URI Π²ΠΈΠ½Π°Π³ΠΈ ΡΠ΅ ΠΏΠΎΡΠΎΡΠ²Π° Π½Π° ΠΏΡΡΠ²ΠΎ ΠΌΡΡΡΠΎ.

ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Ρ PostgreSQL β Macros
ΠΠΎΠ΄ΡΠ»ΡΡ Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π½Π° PostgreSQL Π²ΠΊΠ»ΡΡΠ²Π° Π²Π΅ΡΠ΅ Π½Π°Π΄ 95 ΠΌΠ΅ΡΡΠΈΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ Π΄Π° ΡΠ΅ ΠΎΠ±Ρ Π²Π°Π½Π΅ Π΄ΠΎΡΡΠ° ΡΠΈΡΠΎΠΊ ΡΠΏΠ΅ΠΊΡΡΡ ΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π½Π° PostgreSQL, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ:
- Π±ΡΠΎΡ Π½Π° Π²ΡΡΠ·ΠΊΠΈΡΠ΅,
- ΠΎΠ±Π΅ΠΌΠ° Π½Π° Π±Π°Π·ΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ,
- Π°ΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅ Π½Π° wal ΡΠ°ΠΉΠ»ΠΎΠ²Π΅,
- ΠΊΠΎΠ½ΡΡΠΎΠ»Π½ΠΈ ΡΠΎΡΠΊΠΈ,
- Π±ΡΠΎΠΉ Π½Π° βΡΠ°Π·Π΄ΡΡΠΈβ ΡΠ°Π±Π»ΠΈΡΠΈ,
- ΡΡΠ°ΡΡΡ Π½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ,
- ΠΈΠ·ΠΎΡΡΠ°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠ°.
ΠΠ΅ΡΡΠΈΠΊΠΈΡΠ΅ Π½Π° PostgreSQL Π½Π΅ ΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ²Π½ΠΈ Π±Π΅Π· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°. ΠΠΎ Zabbix Agent 2 Π²Π΅ΡΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΡΠ±ΠΈΡΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°, ΡΠ°ΠΊΠ° ΡΠ΅ Π·Π° Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΠΌ ΠΏΡΠ»Π½Π° ΠΊΠ°ΡΡΠΈΠ½Π°, ΠΏΡΠΎΡΡΠΎ ΡΠ²ΡΡΠ·Π²Π°ΠΌΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½ΠΈ ΠΊΡΠΌ ΡΠ·Π»Π° Π² ΠΌΡΠ΅ΠΆΠ°ΡΠ°.
ΠΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ (handler)
ΠΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ (handler) β ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° Π΅Π΄ΠΈΠ½ΠΈΡΠ° Π½Π° ΠΌΠΎΠ΄ΡΠ»Π°, Π² ΠΊΠΎΡΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° ΡΠ°ΠΌΠΈΡΡ Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ ΠΈ ΠΊΠΎΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π²Π°Ρ ΠΌΠ΅ΡΡΠΈΠΊΠΈ.
ΠΠ° Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΠΌ ΠΏΡΠΎΡΡΠ° ΠΌΠ΅ΡΡΠΈΠΊΠ°:
- Π‘ΡΠ·Π΄Π°Π²Π°ΠΌΠ΅ ΡΠ°ΠΉΠ» Π·Π° ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° Π½ΠΎΠ²Π° ΠΌΠ΅ΡΡΠΈΠΊΠ°:
zabbix/src/go/plugins/postgres/handler_uptime.go
- Π‘Π²ΡΡΠ·Π²Π°ΠΌΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠ° ΠΈ ΠΏΠΎΡΠΎΡΠ²Π°ΠΌΠ΅ ΡΠ½ΠΈΠΊΠ°Π»Π΅Π½ ΠΊΠ»ΡΡ (ΠΊΠ»ΡΡΠΎΠ²Π΅) Π½Π° ΠΌΠ΅ΡΡΠΈΠΊΠΈΡΠ΅:

- Π‘ΡΠ·Π΄Π°Π²Π°ΠΌΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ (handler) Ρ Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅, Ρ.Π΅. ΠΈΠ½ΠΈΡΠΈΠΈΡΠ°ΠΌΠ΅ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°, Π² ΠΊΠΎΡΡΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠ°:

- ΠΠ·ΠΏΡΠ»Π½ΡΠ²Π°ΠΌΠ΅ Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ΡΠΎ:

ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΅ Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ΡΠΎ Π·Π° Π³ΡΠ΅ΡΠΊΠΈ, ΡΠ»Π΅Π΄ ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΡΡ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΏΠΎΠ΄Ρ Π²Π°Π½Π°Ρ ΠΎΡ ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° Zabbix Agent 2.
- Π Π΅Π³ΠΈΡΡΡΠΈΡΠ°ΠΌΠ΅ ΠΊΠ»ΡΡΠ° Π½Π° Π½ΠΎΠ²Π°ΡΠ° ΠΌΠ΅ΡΡΠΈΠΊΠ°:

Π‘Π»Π΅Π΄ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡΡΠ° Π½Π° ΠΌΠ΅ΡΡΠΈΠΊΠ°ΡΠ° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ΅ΠΊΠΎΠ½ΡΡΡΡΠΈΡΠ°ΡΠ΅ Π°Π³Π΅Π½ΡΠ° Ρ Π½ΠΎΠ²Π°ΡΠ° ΠΌΠ΅ΡΡΠΈΠΊΠ°.
ΠΠΎΠ΄ΡΠ»ΡΡ Π΅ Π½Π°Π»ΠΈΡΠ΅Π½ ΠΎΡ Zabbix 5.0 Π½Π° ΡΠ°ΠΉΡΠ° . Π ΡΠ°Π·ΠΈ Π²Π΅ΡΡΠΈΡ Zabbix ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ ΡΠ΅ Π·Π°Π΄Π°Π²Π°Ρ ΠΎΡΠ΄Π΅Π»Π½ΠΎ ΡΡΠ΅Π· host ΠΈ port. Π Π²Π΅ΡΡΠΈΡ Zabbix 5.0.2, ΠΊΠΎΡΡΠΎ ΡΠ΅ ΠΈΠ·Π»Π΅Π·Π΅ ΡΠΊΠΎΡΠΎ, ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°Π½ΠΈ Π² Π΅Π΄ΠΈΠ½ URI.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ΡΠΎ!
ΠΠΎΠ»Π΅Π·Π½ΠΈ Π²ΡΡΠ·ΠΊΠΈ
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: habr.com
