ΠΠ΅Π½Ρ Π·ΠΎΠ²ΡΡ ΠΠ½ΡΠΎΠ½ ΠΠ°Π΄Π΅ΡΠΈΠ½. Π― ΡΠ°Π±ΠΎΡΠ°Ρ Π² Π¦Π΅Π½ΡΡΠ΅ ΠΡΡΠΎΠΊΠΈΡ Π’Π΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΠΈ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ. ΠΠ΅ΡΡΡ Π½Π°Π·Π°Π΄ Π·Π°Π²Π΅ΡΡΠΈΠ»Π°ΡΡ Π½Π°ΡΠ° ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½Π°Ρ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡ, Π³Π΄Π΅ ΠΌΡ Π΄Π΅Π»ΠΈΠ»ΠΈΡΡ Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½Π½ΡΠΌ ΠΎΠΏΡΡΠΎΠΌ Ρ IT-ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎΠΌ Π½Π°ΡΠ΅Π³ΠΎ Π³ΠΎΡΠΎΠ΄Π°. Π― ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π» ΠΏΡΠΎ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠ°ΡΠ΅ΡΠΈΠ°Π» ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ°Π»ΡΡ Π΄Π»Ρ ΡΡΠΎΠ²Π½Ρ junior ΠΈΠ»ΠΈ middle, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ Π²ΡΡΡΡΠ°ΠΈΠ²Π°Π»ΠΈ ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ Ρ Π½ΡΠ»Ρ.
ΠΡΠ°Π΅ΡΠ³ΠΎΠ»ΡΠ½ΡΠΉ ΠΊΠ°ΠΌΠ΅Π½Ρ, Π»Π΅ΠΆΠ°ΡΠΈΠΉ Π² ΠΎΡΠ½ΠΎΠ²Π΅ Π»ΡΠ±ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° β ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ Π±ΠΈΠ·Π½Π΅ΡΠ°. ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΡΠ°Π΄ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π½ΠΈΠΊΠΎΠΌΡ Π½Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½. Π ΡΠ΅Π³ΠΎ Ρ ΠΎΡΠ΅Ρ Π±ΠΈΠ·Π½Π΅Ρ? Π§ΡΠΎΠ±Ρ Π²ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ Π±ΡΡΡΡΠΎ ΠΈ Π±Π΅Π· ΠΎΡΠΈΠ±ΠΎΠΊ. ΠΠΈΠ·Π½Π΅Ρ Ρ ΠΎΡΠ΅Ρ ΠΏΡΠΎΠ°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ, ΡΡΠΎΠ±Ρ ΠΌΡ ΡΠ°ΠΌΠΈ Π²ΡΡΠ²Π»ΡΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π² ΡΠ°Π±ΠΎΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΠ° ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π±ΡΡΡΡΠΎ ΠΈΡ ΡΡΡΡΠ°Π½ΡΠ»ΠΈ. ΠΡΠΎ, ΠΏΠΎ ΡΡΡΠΈ, ΠΈ Π΅ΡΡΡ Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΡΠ΅ΡΠ°Π» Π²Π΅ΡΡ ΠΏΡΠΎΡΠ»ΡΠΉ Π³ΠΎΠ΄ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· Π½Π°ΡΠΈΡ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠΎΠ².
Π ΠΏΡΠΎΠ΅ΠΊΡΠ΅
ΠΡΠΎΠ΅ΠΊΡ β ΠΎΠ΄Π½Π° ΠΈΠ· ΠΊΡΡΠΏΠ½Π΅ΠΉΡΠΈΡ Π² ΡΡΡΠ°Π½Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π»ΠΎΡΠ»ΡΠ½ΠΎΡΡΠΈ. ΠΡ ΠΏΠΎΠΌΠΎΠ³Π°Π΅ΠΌ ΡΠΎΠ·Π½ΠΈΡΠ½ΡΠΌ ΡΠ΅ΡΡΠΌ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡ ΡΠ°ΡΡΠΎΡΡ ΠΏΡΠΎΠ΄Π°ΠΆ Π·Π° ΡΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΌΠ°ΡΠΊΠ΅ΡΠΈΠ½Π³ΠΎΠ²ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π²ΡΠΎΠ΄Π΅ Π±ΠΎΠ½ΡΡΠ½ΡΡ ΠΊΠ°ΡΡ. Π ΠΎΠ±ΡΠ΅ΠΉ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ Π² ΠΏΡΠΎΠ΅ΠΊΡ Π²Ρ ΠΎΠ΄ΡΡ 14 ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° Π΄Π΅ΡΡΡΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ°Ρ .
Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π²Π΅Π΄Π΅Π½ΠΈΡ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΉ Ρ Π½Π΅ΠΎΠ΄Π½ΠΎΠΊΡΠ°ΡΠ½ΠΎ Π·Π°ΠΌΠ΅ΡΠ°Π», ΡΡΠΎ Π°Π΄ΠΌΠΈΠ½Ρ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ ΠΊ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Ρ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ: Π΄ΠΎ ΡΠΈΡ ΠΏΠΎΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ Π½Π° ΠΌΠ΅ΡΡΠΈΠΊΠ°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΈΠ·ΡΠ΅Π΄ΠΊΠ° ΠΌΠΎΠ½ΠΈΡΠΎΡΡΡ ΡΠ΅ΡΠ²ΠΈΡΡ.
Π ΠΌΠΎΡΠΌ ΡΠ»ΡΡΠ°Π΅ΠΌ ΠΏΡΠ΅ΠΆΠ΄Π΅ Π² ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠ° Π»Π΅ΠΆΠ°Π»Π° Icinga. ΠΠ½Π° Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΡΠ΅ΡΠ°Π»Π° ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π²ΡΡΠ΅ Π·Π°Π΄Π°ΡΠΈ. Π§Π°ΡΡΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ ΡΠ°ΠΌ ΡΠΎΠΎΠ±ΡΠ°Π» Π½Π°ΠΌ ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°Ρ ΠΈ Π½Π΅ ΡΠ΅ΠΆΠ΅ Π½Π°ΠΌ ΠΏΡΠΎΡΡΠΎ Π½Π΅ Ρ Π²Π°ΡΠ°Π»ΠΎ Π΄Π°Π½Π½ΡΡ , ΡΡΠΎΠ±Ρ Π΄ΠΎΠΊΠΎΠΏΠ°ΡΡΡΡ Π΄ΠΎ ΠΏΡΠΈΡΠΈΠ½Ρ.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π±ΡΠ»ΠΎ ΡΡΡΠΊΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π±Π΅ΡΠΏΠ΅ΡΡΠΏΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ Π΅Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π³ΠΎ ΡΠ°Π·Π²ΠΈΡΠΈΡ. Π― Π΄ΡΠΌΠ°Ρ, ΡΠ΅ ΠΊΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ Ρ Icinga ΠΌΠ΅Π½Ρ ΠΏΠΎΠΉΠΌΡΡ. ΠΡΠ°ΠΊ, ΠΌΡ ΡΠ΅ΡΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΠ΅ΡΠ΅ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ΅.
Prometheus
ΠΡ Π²ΡΠ±ΡΠ°Π»ΠΈ Prometheus, ΠΈΡΡ ΠΎΠ΄Ρ ΠΈΠ· ΡΡΠ΅Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ:
- ΠΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΌΠ΅ΡΡΠΈΠΊ. Π Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΈΡ 60 ΡΡΡΡΡ. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΡΠΎΠΈΡ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΏΠΎΠ΄Π°Π²Π»ΡΡΡΠ΅Π΅ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΈΠ· Π½ΠΈΡ ΠΌΡ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ (Π½Π°Π²Π΅ΡΠ½ΠΎ, ΠΎΠΊΠΎΠ»ΠΎ 95%). Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΠΎΠ½ΠΈ Π²ΡΠ΅ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π΄Π΅ΡΠ΅Π²Ρ. ΠΠ»Ρ Π½Π°Ρ ΡΡΠ° Π΄ΡΡΠ³Π°Ρ ΠΊΡΠ°ΠΉΠ½ΠΎΡΡΡ, ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΡΠ°Π½Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π²ΡΠ΅ΠΉΡΡ Icinga. Π Π½Π΅ΠΉ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΡΠΈΠΊ Π΄ΠΎΡΡΠ°Π²Π»ΡΠ»ΠΎ ΠΎΡΠΎΠ±ΡΡ Π±ΠΎΠ»Ρ: ΠΈΠΌΠ΅ΡΡΠΈΠ΅ΡΡ Π΄ΠΎΡΡΠ°Π²Π°Π»ΠΈΡΡ Π΄ΠΎΡΠΎΠ³ΠΎ (Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΏΠ»Π°Π³ΠΈΠ½Π°). ΠΡΠ±ΠΎΠΉ ΠΏΠ»Π°Π³ΠΈΠ½ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ» ΡΠΎΠ±ΠΎΠΉ ΡΠΊΡΠΈΠΏΡ Π½Π° Bash ΠΈΠ»ΠΈ Python, Π·Π°ΠΏΡΡΠΊ ΠΊΠΎΡΠΎΡΡΡ Π½Π΅Π΄Π΅ΡΡΠ²ΡΠΉ Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΏΠΎΡΡΠ΅Π±Π»ΡΠ΅ΠΌΡΡ ΡΠ΅ΡΡΡΡΠΎΠ².
- ΠΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΠΎΡΡΠ΅Π±Π»ΡΠ΅Ρ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΡΡΡΡΠΎΠ². ΠΠ° Π²ΡΠ΅ Π½Π°ΡΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Ρ Π²Π°ΡΠ°Π΅Ρ 600 ΠΠ± ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, 15% ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΄ΡΠ° ΠΈ ΠΏΠ°ΡΡ Π΄Π΅ΡΡΡΠΊΠΎΠ² IOPS. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠΊΡΠΏΠΎΡΡΡΡΡ ΠΌΠ΅ΡΡΠΈΠΊ, Π½ΠΎ Π²ΡΠ΅ ΠΎΠ½ΠΈ Π½Π°ΠΏΠΈΡΠ°Π½Ρ Π½Π° Go ΠΈ ΡΠΎΠΆΠ΅ Π½Π΅ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΏΡΠΎΠΆΠΎΡΠ»ΠΈΠ²ΠΎΡΡΡΡ. ΠΠ΅ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ Π² ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ΅Π°Π»ΠΈΡΡ ΡΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°.
- ΠΠ°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° Π² Kubernetes. Π£ΡΠΈΡΡΠ²Π°Ρ ΠΏΠ»Π°Π½Ρ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠ° β Π²ΡΠ±ΠΎΡ ΠΎΡΠ΅Π²ΠΈΠ΄Π΅Π½.
ELK
Π Π°Π½Π΅Π΅ ΠΌΡ Π»ΠΎΠ³ΠΈ Π½Π΅ ΡΠΎΠ±ΠΈΡΠ°Π»ΠΈ ΠΈ Π½Π΅ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π»ΠΈ. ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ ΡΡΠ½Ρ Π²ΡΠ΅ΠΌ. ΠΡ Π²ΡΠ±ΡΠ°Π»ΠΈ ELK, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠΏΡΡ ΡΠ°Π±ΠΎΡΡ Ρ ΡΡΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Ρ Π½Π°Ρ ΡΠΆΠ΅ Π±ΡΠ». Π₯ΡΠ°Π½ΠΈΠΌ ΡΠ°ΠΌ ΡΠΎΠ»ΡΠΊΠΎ Π»ΠΎΠ³ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ ΠΊΡΠΈΡΠ΅ΡΠΈΡΠΌΠΈ Π²ΡΠ±ΠΎΡΠ° ΡΡΠ°Π»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΠΏΠΎΠΈΡΠΊ ΠΈ Π΅Π³ΠΎ ΡΠΊΠΎΡΠΎΡΡΡ.
Π‘lickhouse
ΠΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ Π²ΡΠ±ΠΎΡ ΠΏΠ°Π» Π½Π° InfluxDB. ΠΡ ΠΎΡΠΎΠ·Π½Π°Π²Π°Π»ΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΡΠ±ΠΎΡΠ° Π»ΠΎΠ³ΠΎΠ² Nginx, ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ ΠΈΠ· pg_stat_statements, Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΡΡΠΎΡΠΈΡΠ΅ΡΠΊΠΈΡ Π΄Π°Π½Π½ΡΡ Prometheus. Influx Π½Π°ΠΌ Π½Π΅ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ Π½Π°ΡΠΈΠ½Π°Π» ΠΏΠΎΡΡΠ΅Π±Π»ΡΡΡ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ ΠΏΠ°Π΄Π°Π». ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Ρ ΠΎΡΠ΅Π»ΠΎΡΡ Π³ΡΡΠΏΠΏΠΈΡΠΎΠ²Π°ΡΡ Π·Π°ΠΏΡΠΎΡΡ ΠΏΠΎ remote_addr, Π° Π³ΡΡΠΏΠΏΠΈΡΠΎΠ²ΠΊΠ° Π² ΡΡΠΎΠΉ Π‘Π£ΠΠ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎ ΡΡΠ³Π°ΠΌ. Π’ΡΠ³ΠΈ Π΄ΠΎΡΠΎΠ³ΠΈ (ΠΏΠ°ΠΌΡΡΡ), ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠ»ΠΎΠ²Π½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ.
ΠΡ Π½Π°ΡΠ°Π»ΠΈ ΠΏΠΎΠΈΡΠΊΠΈ Π·Π°Π½ΠΎΠ²ΠΎ. ΠΡΠΆΠ½Π° Π±ΡΠ»Π° Π°Π½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠ°Ρ Π±Π°Π·Π° Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΠ΅ΡΡΡΡΠΎΠ², ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎ ΡΠΆΠ°ΡΠΈΠ΅ΠΌ Π΄Π°Π½Π½ΡΡ Π½Π° Π΄ΠΈΡΠΊΠ΅.
Clickhouse ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΠ΅Ρ Π²ΡΠ΅ΠΌ ΡΡΠΈΠΌ ΠΊΡΠΈΡΠ΅ΡΠΈΡΠΌ, ΠΈ ΠΎ Π²ΡΠ±ΠΎΡΠ΅ ΠΌΡ Π½ΠΈ ΡΠ°Π·Ρ Π½Π΅ ΠΏΠΎΠΆΠ°Π»Π΅Π»ΠΈ. ΠΡ Π½Π΅ ΠΏΠΈΡΠ΅ΠΌ Π² Π½Π΅Π³ΠΎ ΠΊΠ°ΠΊΠΈΡ -ΡΠΎ Π²ΡΠ΄Π°ΡΡΠΈΡ ΡΡ ΠΎΠ±ΡΡΠΌΠΎΠ² Π΄Π°Π½Π½ΡΡ (ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΡΡΠ°Π²ΠΎΠΊ Π²ΡΠ΅Π³ΠΎ ΠΎΠΊΠΎΠ»ΠΎ ΠΏΡΡΠΈ ΡΡΡΡΡ Π² ΠΌΠΈΠ½ΡΡΡ).
NewRelic
NewRelic ΠΈΡΡΠΎΡΠΈΡΠ΅ΡΠΊΠΈ Π±ΡΠ» Ρ Π½Π°ΠΌΠΈ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΎ Π±ΡΠ» Π²ΡΠ±ΠΎΡ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠ°. Π£ Π½Π°Ρ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ APM.
Zabbix
ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Zabbix ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Black Box ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ API.
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° ΠΊ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Ρ
ΠΠ°ΠΌ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π·Π°Π΄Π°ΡΡ ΠΈ ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΊ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Ρ.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Ρ ΡΠ°Π·Π΄Π΅Π»ΠΈΠ» Π½Π°ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΠΎΠ²Π½ΠΈ:
- Β«ΠΆΠ΅Π»Π΅Π·ΠΎΒ» ΠΈ VMS;
- ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ°;
- ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ, ΡΡΠ΅ΠΊ ΠΠ;
- ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅;
- Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΠ°.
Π§Π΅ΠΌ ΡΠ΄ΠΎΠ±Π΅Π½ ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄:
- ΠΌΡ Π·Π½Π°Π΅ΠΌ, ΠΊΡΠΎ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π΅Π½ Π·Π° ΡΠ°Π±ΠΎΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΡΡΠΎΠ²Π½Π΅ΠΉ ΠΈ, ΠΈΡΡ ΠΎΠ΄Ρ ΠΈΠ· ΡΡΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ΅ΠΌ Π²ΡΡΡΠ»Π°ΡΡ Π°Π»Π΅ΡΡΠΎΠ²;
- ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡΡΠΊΡΡΡΡ ΠΏΡΠΈ ΠΏΠΎΠ΄Π°Π²Π»Π΅Π½ΠΈΠΈ Π°Π»Π΅ΡΡΠΎΠ² β Π±ΡΠ»ΠΎ Π±Ρ ΡΡΡΠ°Π½Π½ΠΎ ΠΎΡΡΡΠ»Π°ΡΡ Π°Π»Π΅ΡΡ ΠΎ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΠ³Π΄Π° Π² ΡΠ΅Π»ΠΎΠΌ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Π°.
Π’Π°ΠΊ ΠΊΠ°ΠΊ Π½Π°ΡΠ° Π·Π°Π΄Π°ΡΠ° Π²ΡΡΠ²Π»ΡΡΡ Π½Π°ΡΡΡΠ΅Π½ΠΈΡ Π² ΡΠ°Π±ΠΎΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ Π²ΡΠ΄Π΅Π»ΠΈΡΡ Π½Π΅ΠΊΠΈΠΉ Π½Π°Π±ΠΎΡ ΠΌΠ΅ΡΡΠΈΠΊ, Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠΎΠΈΡ ΠΎΠ±ΡΠ°ΡΠ°ΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΏΡΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΏΡΠ°Π²ΠΈΠ» Π°Π»Π΅ΡΡΠΈΠ½Π³Π°. ΠΠ°Π»Π΅Π΅ ΠΏΡΠΎΠΉΠ΄Π΅ΠΌΡΡ ΠΏΠΎ ΡΡΠΎΠ²Π½ΡΠΌ Β«VMSΒ», Β«ΠΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ°Β» ΠΈ Β«Π‘ΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ, ΡΡΠ΅ΠΊ ΠΠΒ».
ΠΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ
Π₯ΠΎΡΡΠΈΠ½Π³ Π²ΡΠ΄Π΅Π»ΡΠ΅Ρ Π½Π°ΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ, Π΄ΠΈΡΠΊ, ΠΏΠ°ΠΌΡΡΡ ΠΈ ΡΠ΅ΡΡ. Π Ρ ΠΏΠ΅ΡΠ²ΡΠΌΠΈ Π΄Π²ΡΠΌΡ Ρ Π½Π°Ρ Π±ΡΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ. ΠΡΠ°ΠΊ, ΠΌΠ΅ΡΡΠΈΠΊΠΈ:
CPU stolen time β ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΏΠΎΠΊΡΠΏΠ°Π΅ΡΠ΅ Π²ΠΈΡΡΡΠ°Π»ΠΊΡ Π½Π° Amazon (t2.micro, ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ), ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ Π²Π°ΠΌ Π²ΡΠ΄Π΅Π»ΡΠ΅ΡΡΡ Π½Π΅ ΡΠ΅Π»ΠΎΠ΅ ΡΠ΄ΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°, Π° Π»ΠΈΡΡ ΠΊΠ²ΠΎΡΠ° Π΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. Π ΠΊΠΎΠ³Π΄Π° Π²Ρ Π΅Ρ ΠΈΡΡΠ΅ΡΠΏΠ°Π΅ΡΠ΅, ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ Ρ Π²Π°Ρ Π½Π°ΡΠ½ΡΡ Π·Π°Π±ΠΈΡΠ°ΡΡ.
ΠΡΠ° ΠΌΠ΅ΡΡΠΈΠΊΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ ΠΈ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π°Π΄ΠΎ Π»ΠΈ Π²Π·ΡΡΡ ΡΠ°ΡΠΈΡ ΠΏΠΎΠΆΠΈΡΠ½Π΅Π΅ ΠΈΠ»ΠΈ ΡΠ°Π·Π½Π΅ΡΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΡΠΎΠ½ΠΎΠ²ΡΡ Π·Π°Π΄Π°Ρ ΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² API Π½Π° ΡΠ°Π·Π½ΡΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ°.
IOPS + CPU iowait time β ΠΏΠΎΡΠ΅ΠΌΡ-ΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΎΠ±Π»Π°ΡΠ½ΡΠ΅ Ρ ΠΎΡΡΠΈΠ½Π³ΠΈ Π³ΡΠ΅ΡΠ°Ρ ΡΠ΅ΠΌ, ΡΡΠΎ Π½Π΅Π΄ΠΎΠ΄Π°ΡΡ IOPS. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Π³ΡΠ°ΡΠΈΠΊ Ρ Π½ΠΈΠ·ΠΊΠΈΠΌΠΈ IOPS Π΄Π»Ρ Π½ΠΈΡ Π½Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ. ΠΠΎΡΡΠΎΠΌΡ ΡΡΠΎΠΈΡ ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΠΈ CPU iowait. Π‘ ΡΡΠΎΠΉ ΠΏΠ°ΡΠΎΠΉ Π³ΡΠ°ΡΠΈΠΊΠΎΠ² β Ρ Π½ΠΈΠ·ΠΊΠΈΠΌΠΈ IOPS ΠΈ Π²ΡΡΠΎΠΊΠΈΠΌ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ΠΌ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° β ΡΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π³ΠΎΠ²Π°ΡΠΈΠ²Π°ΡΡ Ρ Ρ ΠΎΡΡΠΈΠ½Π³ΠΎΠΌ ΠΈ ΡΠ΅ΡΠ°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
ΠΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ°
ΠΠ΅ΡΡΠΈΠΊΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ:
- ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² %;
- Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ swap: vmstat swapin, swapout;
- ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ inode ΠΈ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ° Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Π² %
- ΡΡΠ΅Π΄Π½ΡΡ Π·Π°Π³ΡΡΠ·ΠΊΠ°;
- ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ tw;
- Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΡΡΡ ΡΠ°Π±Π»ΠΈΡΡ conntrack;
- ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ ΡΠ°Π±ΠΎΡΡ ΡΠ΅ΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΠ»ΠΈΡΡ ss, ΠΏΠ°ΠΊΠ΅ΡΠΎΠΌ iproute2 β ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΈΠ· Π΅Ρ Π²ΡΠ²ΠΎΠ΄Π° ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ RTT-ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ ΠΈ Π³ΡΡΠΏΠΏΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎ dest-ΠΏΠΎΡΡΡ.
Π’Π°ΠΊΠΆΠ΅ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Ρ Π½Π°Ρ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΠΊΠ°Ρ ΡΡΡΠ½ΠΎΡΡΡ, ΠΊΠ°ΠΊ ΠΏΡΠΎΡΠ΅ΡΡΡ. ΠΠ°ΠΆΠ½ΠΎ Π²ΡΠ΄Π΅Π»ΠΈΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ Π½Π°Π±ΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ³ΡΠ°ΡΡ Π²Π°ΠΆΠ½ΡΡ ΡΠΎΠ»Ρ Π² Π΅Ρ ΡΠ°Π±ΠΎΡΠ΅. ΠΡΠ»ΠΈ, ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ, Ρ Π²Π°Ρ Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ pgpool, ΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ ΠΈΠ· Π½ΠΈΡ .
ΠΠ°Π±ΠΎΡ ΠΌΠ΅ΡΡΠΈΠΊ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ:
- CPU;
- ΠΏΠ°ΠΌΡΡΡ β Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, ΡΠ΅Π·ΠΈΠ΄Π΅Π½ΡΠ½Π°Ρ;
- IO β ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ Π² IOPS;
- FileFd β ΠΎΡΠΊΡΡΡΡΠ΅ ΠΈ Π»ΠΈΠΌΠΈΡ;
- ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΎΡΠΊΠ°Π·Ρ ΡΡΡΠ°Π½ΠΈΡΡ β ΡΠ°ΠΊ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ²Π°ΠΏΠ°Π΅ΡΡΡ.
ΠΠ΅ΡΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Ρ Π½Π°Ρ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡ Π² Docker, Π΄Π»Ρ ΡΠ±ΠΎΡΠ° Π΄Π°Π½Π½ΡΡ ΠΌΠ΅ΡΡΠΈΠΊ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π‘advisor. ΠΠ° ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Π°Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌ process-exporter.
Π‘ΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ, ΡΡΠ΅ΠΊ ΠΠ
Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΅ΡΡΡ ΡΠ²ΠΎΡ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°, ΠΈ ΡΠ»ΠΎΠΆΠ½ΠΎ Π²ΡΠ΄Π΅Π»ΠΈΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π½Π°Π±ΠΎΡ ΠΌΠ΅ΡΡΠΈΠΊ.
Π£Π½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ ΡΠ²Π»ΡΡΡΡΡ:
- ΡΠ΅ΠΉΡ Π·Π°ΠΏΡΠΎΡΠΎΠ²;
- ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΡΠΈΠ±ΠΎΠΊ;
- Π»Π°ΡΠ΅Π½ΡΠ½ΠΎΡΡΡ;
- saturation.
ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΡΠΊΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Ρ Π½Π°Ρ β Nginx ΠΈ PostgreSQL.
Π‘Π°ΠΌΡΠΉ Π½Π°Π³ΡΡΠΆΠ΅Π½Π½ΡΠΉ ΡΠ΅ΡΠ²ΠΈΡ Π² Π½Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ β Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ . Π Π°Π½ΡΡΠ΅ Ρ Π½Π°Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠ°ΡΡΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΡΠ΅ΠΌ, ΡΡΠΎΠ±Ρ Π²ΡΡΡΠ½ΠΈΡΡ, ΡΠ΅ΠΌ Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ .
ΠΡ Π²ΠΈΠ΄Π΅Π»ΠΈ Π²ΡΡΠΎΠΊΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° Π΄ΠΈΡΠΊΠΈ, Π½ΠΎ ΡΠ»ΠΎΡΠ»ΠΎΠ³ΠΈ Π½ΠΈΡΠ΅Π³ΠΎ ΡΠΎΠ»ΠΊΠΎΠΌ Π½Π΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π»ΠΈ. ΠΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΌΡ ΡΠ΅ΡΠΈΠ»ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ pg_stat_statements, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΡΡ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ° ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΠ°ΠΌ.
ΠΡΠΎ Π²ΡΡ, ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ Π°Π΄ΠΌΠΈΠ½Ρ.
Π‘ΡΡΠΎΠΈΠΌ Π³ΡΠ°ΡΠΈΠΊΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π½Π° ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ Π·Π°ΠΏΠΈΡΡ:
ΠΡΡ ΠΏΡΠΎΡΡΠΎ ΠΈ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ Π·Π°ΠΏΡΠΎΡΡ β ΡΠ²ΠΎΠΉ ΡΠ²Π΅Ρ.
ΠΠ΅ ΠΌΠ΅Π½Π΅Π΅ ΡΡΠΊΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ β Nginx-Π»ΠΎΠ³ΠΈ. ΠΠ΅ ΡΠ΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠΎ ΠΌΠ°Π»ΠΎ ΠΊΡΠΎ ΠΈΡ ΠΏΠ°ΡΡΠΈΡ ΠΈΠ»ΠΈ ΡΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ Π² ΡΠΏΠΈΡΠΊΠ΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΡ . Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΡΠΎΡΠΌΠ°Ρ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ²Π΅Π½ ΠΈ Π΅Π³ΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠ°ΡΡΠΈΡΡΡΡ.
ΠΠΈΡΠ½ΠΎ Ρ Π΄ΠΎΠ±Π°Π²ΠΈΠ» request_time, upstream_response_time, body_bytes_sent, request_length, request_id.Π‘ΡΡΠΎΠΈΠΌ Π³ΡΠ°ΡΠΈΠΊΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎΡΠ²Π΅ΡΠ° ΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΎΡΠΈΠ±ΠΎΠΊ:
Π‘ΡΡΠΎΠΈΠΌ Π³ΡΠ°ΡΠΈΠΊΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎΡΠ²Π΅ΡΠ° ΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΎΡΠΈΠ±ΠΎΠΊ. ΠΠΎΠΌΠ½ΠΈΡΠ΅? Ρ Π³ΠΎΠ²ΠΎΡΠΈΠ» ΠΏΡΠΎ Π·Π°Π΄Π°ΡΠΈ Π±ΠΈΠ·Π½Π΅ΡΠ°? Π§ΡΠΎΠ± Π±ΡΡΡΡΠΎ ΠΈ Π±Π΅Π· ΠΎΡΠΈΠ±ΠΎΠΊ? ΠΡ ΡΠΆΠ΅ Π΄Π²ΡΠΌΡ Π³ΡΠ°ΡΠΈΠΊΠ°ΠΌΠΈ ΡΡΠΈ Π²ΠΎΠΏΡΠΎΡΡ Π·Π°ΠΊΡΡΠ»ΠΈ. Π ΠΏΠΎ Π½ΠΈΠΌ ΡΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π²ΠΎΠ½ΠΈΡΡ Π΄Π΅ΠΆΡΡΠ½ΡΠΌ Π°Π΄ΠΌΠΈΠ½Π°ΠΌ.
ΠΠΎ ΠΎΡΡΠ°Π»Π°ΡΡ Π΅ΡΡ ΠΎΠ΄Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° β ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π±ΡΡΡΡΠΎΠ΅ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΡΠΈΠ½ ΠΈΠ½ΡΠΈΠ΄Π΅Π½ΡΠ°.
Π£ΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠΈΠ΄Π΅Π½ΡΠΎΠ²
ΠΠ΅ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΠΎΡ Π²ΡΡΠ²Π»Π΅Π½ΠΈΡ Π΄ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π±ΠΈΡΡ Π½Π° ΡΡΠ΄ ΡΠ°Π³ΠΎΠ²:
- Π²ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ;
- ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ Π΄Π΅ΠΆΡΡΠ½ΠΎΠ³ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°;
- ΡΠ΅Π°ΠΊΡΠΈΡ Π½Π° ΠΈΠ½ΡΠΈΠ΄Π΅Π½Ρ;
- ΡΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΡΠΈΠ½.
ΠΠ°ΠΆΠ½ΠΎ, ΡΡΠΎ ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π±ΡΡΡΡΠΎ. Π Π΅ΡΠ»ΠΈ Π½Π° ΡΡΠ°ΠΏΠ°Ρ Π²ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΠΌΡ ΠΎΡΠΎΠ±ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΈΠ³ΡΠ°ΡΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ β Π΄Π²Π΅ ΠΌΠΈΠ½ΡΡΡ Π½Π° Π½ΠΈΡ ΡΠΉΠ΄ΡΡ Π² Π»ΡΠ±ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ β ΠΏΡΠΎΡΡΠΎ Π½Π΅ΠΏΠ°Ρ Π°Π½Π½ΠΎΠ΅ ΠΏΠΎΠ»Π΅ Π΄Π»Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠΉ.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΡΠΎΡΡΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌ, ΡΡΠΎ Ρ Π΄Π΅ΠΆΡΡΠ½ΠΎΠ³ΠΎ Π·Π°Π·Π²ΠΎΠ½ΠΈΠ» ΡΠ΅Π»Π΅ΡΠΎΠ½. Π§ΡΠΎ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ Π΄Π΅Π»Π°ΡΡ? ΠΡΠΊΠ°ΡΡ ΠΎΡΠ²Π΅ΡΡ Π½Π° Π²ΠΎΠΏΡΠΎΡΡ β ΡΡΠΎ ΡΠ»ΠΎΠΌΠ°Π»ΠΎΡΡ, Π³Π΄Π΅ ΡΠ»ΠΎΠΌΠ°Π»ΠΎΡΡ, ΠΊΠ°ΠΊ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ? ΠΠΎΡ ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΌΡ ΠΎΡΠ²Π΅ΡΠ°Π΅ΠΌ Π½Π° ΡΡΠΈ Π²ΠΎΠΏΡΠΎΡΡ:
ΠΡ ΠΏΡΠΎΡΡΠΎ Π²ΠΊΠ»ΡΡΠ°Π΅ΠΌ Π²ΡΡ ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΡΠ΅ΠΊΡΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ, Π΄Π°Π΅ΠΌ Π² Π½Π΅ΠΌ ΡΡΡΠ»ΠΊΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ Π² Π²ΠΈΠΊΠΈ, Π³Π΄Π΅ ΠΎΠΏΠΈΡΠ°Π½ΠΎ, ΠΊΠ°ΠΊ Π½Π° ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ, ΠΊΠ°ΠΊ Π΅Ρ ΡΠ΅ΡΠ°ΡΡ ΠΈ ΡΡΠΊΠ°Π»ΠΈΡΠΎΠ²Π°ΡΡ.
Π― Π΄ΠΎ ΡΠΈΡ ΠΏΠΎΡ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΡΠΊΠ°Π·Π°Π» ΠΏΡΠΎ ΡΡΠΎΠ²Π΅Π½Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π±ΠΈΠ·Π½Π΅Ρ Π»ΠΎΠ³ΠΈΠΊΠΈ. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π² Π½Π°ΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ ΠΏΠΎΠΊΠ° Π½Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΡΠ±ΠΎΡ ΠΌΠ΅ΡΡΠΈΠΊ. ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ Ρ ΠΎΡΡ ΠΊΠ°ΠΊΠΎΠΉ ΡΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Ρ ΡΡΠΈΡ ΡΡΠΎΠ²Π½Π΅ΠΉ β Π»ΠΎΠ³ΠΈ.
ΠΠ°ΡΠ° ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠ².
ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΠΏΠΈΡΠΈΡΠ΅ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π»ΠΎΠ³ΠΈ. ΠΠ΅ Π½Π°Π΄ΠΎ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ Π² ΡΠ΅ΠΊΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. ΠΡΠΎ Π·Π°ΡΡΡΠ΄Π½ΡΠ΅Ρ ΠΈΡ Π³ΡΡΠΏΠΏΠΈΡΠΎΠ²ΠΊΡ ΠΈ Π°Π½Π°Π»ΠΈΠ·. Logstash ΡΡΠ΅Π±ΡΠ΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΡΠΎΠ±Ρ Π²ΡΡ ΡΡΠΎ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ.
ΠΠΎ-Π²ΡΠΎΡΡΡ , ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ severity-ΡΡΠΎΠ²Π½ΠΈ. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° ΡΠ²ΠΎΠΉ ΡΡΠ°Π½Π΄Π°ΡΡ. ΠΠΈΡΠ½ΠΎ Ρ Π²ΡΠ΄Π΅Π»ΡΡ ΡΠ΅ΡΡΡΠ΅ ΡΡΠΎΠ²Π½Ρ:
- ΠΎΡΠΈΠ±ΠΊΠΈ Π½Π΅Ρ;
- ΠΎΡΠΈΠ±ΠΊΠ° Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°;
- ΠΎΡΠΈΠ±ΠΊΠ° Π½Π° Π½Π°ΡΠ΅ΠΉ ΡΡΠΎΡΠΎΠ½Π΅, Π½Π΅ ΡΠ΅ΡΡΠ΅ΠΌ Π΄Π΅Π½Π΅Π³, Π½Π΅ Π½Π΅ΡΡΠΌ ΡΠΈΡΠΊΠΈ;
- ΠΎΡΠΈΠ±ΠΊΠ° Π½Π° Π½Π°ΡΠ΅ΠΉ ΡΡΠΎΡΠΎΠ½Π΅, ΡΠ΅ΡΡΠ΅ΠΌ Π΄Π΅Π½ΡΠ³ΠΈ.
Π Π΅Π·ΡΠΌΠΈΡΡΡ. ΠΡΠΆΠ½ΠΎ ΡΡΠ°ΡΠ°ΡΡΡΡ Π²ΡΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΡ Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΠΈ. Π‘ΡΠ°ΡΠ°ΡΡΡΡ Π·Π°ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΡΡ ΡΠ°ΠΌΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΠΎΠΏΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΆΠ΅ ΡΠ°ΠΊΠΈΠΌΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠ°ΠΌΠΈ, ΠΊΠ°ΠΊ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠ΄Π°ΠΆ, ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π½ΠΎΠ²ΡΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π°ΠΊΡΠΈΠ²Π½ΡΡ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅.
ΠΡΠ»ΠΈ Π²Π΅ΡΡ Π²Π°Ρ Π±ΠΈΠ·Π½Π΅Ρ β ΠΎΠ΄Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ° Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΡΡ, ΠΏΡΠΎΠΆΠΈΠΌΠ°Π΅ΡΡΡ Π»ΠΈ ΠΎΠ½Π°, ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π»ΠΈ Π΄ΠΎΠ»ΠΆΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ. ΠΡΡ ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠ΅ Π½Π΅ Π²Π°ΠΆΠ½ΠΎ.
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ ΡΡΠΎΠ³ΠΎ Π½Π΅Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠΏΡΡΠ°ΡΡΡΡ ΡΡΠΎ Π½Π°Π²Π΅ΡΡΡΠ°ΡΡ Π² Π»ΠΎΠ³Π°Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Nginx-Π»ΠΎΠ³Π°Ρ ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΠΌΡ. ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±Π»ΠΈΠΆΠ΅ ΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠ΅ΡΡΠΈΠΊΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅ Π²Π°ΠΆΠ½Ρ, Π½ΠΎ Π±ΠΈΠ·Π½Π΅ΡΡ ΠΎΠ½ΠΈ Π½Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Ρ, Π½Π°ΠΌ ΠΏΠ»Π°ΡΡΡ Π½Π΅ Π·Π° Π½ΠΈΡ .
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com