Как ΠΌΡ‹ строили ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° Prometheus, Clickhouse ΠΈ ELK

МСня Π·ΠΎΠ²ΡƒΡ‚ Антон Π‘Π°Π΄Π΅Ρ€ΠΈΠ½. Π― Ρ€Π°Π±ΠΎΡ‚Π°ΡŽ Π² Π¦Π΅Π½Ρ‚Ρ€Π΅ Высоких Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΠΈ занимаюсь систСмным администрированиСм. ΠœΠ΅ΡΡΡ† Π½Π°Π·Π°Π΄ Π·Π°Π²Π΅Ρ€ΡˆΠΈΠ»Π°ΡΡŒ наша корпоративная конфСрСнция, Π³Π΄Π΅ ΠΌΡ‹ дСлились Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½Π½Ρ‹ΠΌ ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ с IT-сообщСством нашСго Π³ΠΎΡ€ΠΎΠ΄Π°. Π― рассказывал ΠΏΡ€ΠΎ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» прСдназначался для уровня junior ΠΈΠ»ΠΈ middle, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ выстраивали этот процСсс с нуля.

Как ΠΌΡ‹ строили ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° Prometheus, Clickhouse ΠΈ ELK

ΠšΡ€Π°Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ камСнь, Π»Π΅ΠΆΠ°Ρ‰ΠΈΠΉ Π² основС любой систСмы ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° β€” Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ бизнСса. ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Ρ€Π°Π΄ΠΈ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π½ΠΈΠΊΠΎΠΌΡƒ Π½Π΅ интСрСсСн. А Ρ‡Π΅Π³ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚ бизнСс? Π§Ρ‚ΠΎΠ±Ρ‹ всС Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΎ быстро ΠΈ Π±Π΅Π· ошибок. БизнСс Ρ…ΠΎΡ‡Π΅Ρ‚ проактивности, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΡ‹ сами выявляли ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² Ρ€Π°Π±ΠΎΡ‚Π΅ сСрвиса ΠΈ максимально быстро ΠΈΡ… устраняли. Π­Ρ‚ΠΎ, ΠΏΠΎ сути, ΠΈ Π΅ΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ я Ρ€Π΅ΡˆΠ°Π» вСсь ΠΏΡ€ΠΎΡˆΠ»Ρ‹ΠΉ Π³ΠΎΠ΄ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· Π½Π°ΡˆΠΈΡ… Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΎΠ².

О ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ β€” ΠΎΠ΄Π½Π° ΠΈΠ· ΠΊΡ€ΡƒΠΏΠ½Π΅ΠΉΡˆΠΈΡ… Π² странС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π»ΠΎΡΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ. ΠœΡ‹ ΠΏΠΎΠΌΠΎΠ³Π°Π΅ΠΌ Ρ€ΠΎΠ·Π½ΠΈΡ‡Π½Ρ‹ΠΌ сСтям ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ частоту ΠΏΡ€ΠΎΠ΄Π°ΠΆ Π·Π° счёт Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚ΠΈΠ½Π³ΠΎΠ²Ρ‹Ρ… инструмСнтов Π²Ρ€ΠΎΠ΄Π΅ бонусных ΠΊΠ°Ρ€Ρ‚. Π’ ΠΎΠ±Ρ‰Π΅ΠΉ слоТности Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ входят 14 ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π½Π° дСсяти сСрвСрах.

Π’ процСссС вСдСния собСсСдований я Π½Π΅ΠΎΠ΄Π½ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ Π·Π°ΠΌΠ΅Ρ‡Π°Π», Ρ‡Ρ‚ΠΎ Π°Π΄ΠΌΠΈΠ½Ρ‹ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ всСгда ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ подходят ΠΊ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Ρƒ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ: Π΄ΠΎ сих ΠΏΠΎΡ€ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, ΠΈΠ·Ρ€Π΅Π΄ΠΊΠ° мониторят сСрвисы.

Π’ ΠΌΠΎΡ‘ΠΌ случаСм ΠΏΡ€Π΅ΠΆΠ΄Π΅ Π² основС систСмы ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ° Π»Π΅ΠΆΠ°Π»Π° Icinga. Она Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ Ρ€Π΅ΡˆΠ°Π»Π° ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Π²Ρ‹ΡˆΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ. Часто ΠΊΠ»ΠΈΠ΅Π½Ρ‚ сам сообщал Π½Π°ΠΌ ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ… ΠΈ Π½Π΅ Ρ€Π΅ΠΆΠ΅ Π½Π°ΠΌ просто Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π»ΠΎ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠΊΠΎΠΏΠ°Ρ‚ΡŒΡΡ Π΄ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π±Ρ‹Π»ΠΎ Ρ‡Ρ‘Ρ‚ΠΊΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ бСспСрспСктивности Π΅Ρ‘ дальнСйшСго развития. Π― Π΄ΡƒΠΌΠ°ΡŽ, Ρ‚Π΅ ΠΊΡ‚ΠΎ Π·Π½Π°ΠΊΠΎΠΌ с Icinga мСня ΠΏΠΎΠΉΠΌΡƒΡ‚. Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ систСму ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅.

Prometheus

ΠœΡ‹ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ Prometheus, исходя ΠΈΠ· Ρ‚Ρ€Π΅Ρ… основных ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ:

  1. ΠžΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство доступных ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ. Π’ нашСм случаС ΠΈΡ… 60 тысяч. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, стоит ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄Π°Π²Π»ΡΡŽΡ‰Π΅Π΅ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· Π½ΠΈΡ… ΠΌΡ‹ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ (Π½Π°Π²Π΅Ρ€Π½ΠΎ, ΠΎΠΊΠΎΠ»ΠΎ 95%). Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, ΠΎΠ½ΠΈ всС ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Π΅ΡˆΠ΅Π²Ρ‹. Для нас эта другая ΠΊΡ€Π°ΠΉΠ½ΠΎΡΡ‚ΡŒ, ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ€Π°Π½Π΅Π΅ использовавшСйся Icinga. Π’ Π½Π΅ΠΉ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ доставляло ΠΎΡΠΎΠ±ΡƒΡŽ боль: ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ Π΄ΠΎΡΡ‚Π°Π²Π°Π»ΠΈΡΡŒ Π΄ΠΎΡ€ΠΎΠ³ΠΎ (достаточно ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° исходники любого ΠΏΠ»Π°Π³ΠΈΠ½Π°). Π›ΡŽΠ±ΠΎΠΉ ΠΏΠ»Π°Π³ΠΈΠ½ прСдставлял собой скрипт Π½Π° Bash ΠΈΠ»ΠΈ Python, запуск ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅Π΄Π΅ΡˆΡ‘Π²Ρ‹ΠΉ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния потрСбляСмых рСсурсов.
  2. Π­Ρ‚Π° систСма потрСбляСт ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ нСбольшоС количСство рСсурсов. На всС наши ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ 600 Мб ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти, 15% ΠΎΠ΄Π½ΠΎΠ³ΠΎ ядра ΠΈ ΠΏΠ°Ρ€Ρƒ дСсятков IOPS. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, приходится Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ экспортёры ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ, Π½ΠΎ всС ΠΎΠ½ΠΈ написаны Π½Π° Go ΠΈ Ρ‚ΠΎΠΆΠ΅ Π½Π΅ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠΆΠΎΡ€Π»ΠΈΠ²ΠΎΡΡ‚ΡŒΡŽ. НС Π΄ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ Π² соврСмСнных рСалиях это ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°.
  3. Π”Π°Ρ‘Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π² 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, прСдставлСния, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ собираСтся статистика ΠΏΠΎ запросам.

Π­Ρ‚ΠΎ всё, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π°Π΄ΠΌΠΈΠ½Ρƒ.

Π‘Ρ‚Ρ€ΠΎΠΈΠΌ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ активности запросов Π½Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ запись:

Как ΠΌΡ‹ строили ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° Prometheus, Clickhouse ΠΈ ELK
Как ΠΌΡ‹ строили ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° Prometheus, Clickhouse ΠΈ ELK

Всё просто ΠΈ понятно, ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ запросу β€” свой Ρ†Π²Π΅Ρ‚.

НС ΠΌΠ΅Π½Π΅Π΅ яркий ΠΏΡ€ΠΈΠΌΠ΅Ρ€ β€” Nginx-Π»ΠΎΠ³ΠΈ. НС ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠ°Π»ΠΎ ΠΊΡ‚ΠΎ ΠΈΡ… парсит ΠΈΠ»ΠΈ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ‚ Π² спискС ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ…. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠ²Π΅Π½ ΠΈ Π΅Π³ΠΎ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΡΡ‚ΡŒ.

Π›ΠΈΡ‡Π½ΠΎ я Π΄ΠΎΠ±Π°Π²ΠΈΠ» request_time, upstream_response_time, body_bytes_sent, request_length, request_id.Π‘Ρ‚Ρ€ΠΎΠΈΠΌ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈ количСства ошибок:

Как ΠΌΡ‹ строили ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° Prometheus, Clickhouse ΠΈ ELK
Как ΠΌΡ‹ строили ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° Prometheus, Clickhouse ΠΈ ELK

Π‘Ρ‚Ρ€ΠΎΠΈΠΌ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΈ количСства ошибок. ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅? я Π³ΠΎΠ²ΠΎΡ€ΠΈΠ» ΠΏΡ€ΠΎ Π·Π°Π΄Π°Ρ‡ΠΈ бизнСса? Π§Ρ‚ΠΎΠ± быстро ΠΈ Π±Π΅Π· ошибок? ΠœΡ‹ ΡƒΠΆΠ΅ двумя Π³Ρ€Π°Ρ„ΠΈΠΊΠ°ΠΌΠΈ эти вопросы Π·Π°ΠΊΡ€Ρ‹Π»ΠΈ. И ΠΏΠΎ Π½ΠΈΠΌ ΡƒΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π²ΠΎΠ½ΠΈΡ‚ΡŒ Π΄Π΅ΠΆΡƒΡ€Π½Ρ‹ΠΌ Π°Π΄ΠΌΠΈΠ½Π°ΠΌ.

Но ΠΎΡΡ‚Π°Π»Π°ΡΡŒ Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β€” ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ быстроС устранСниС ΠΏΡ€ΠΈΡ‡ΠΈΠ½ ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚Π°.

УстранСниС ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚ΠΎΠ²

Π’Π΅ΡΡŒ процСсс ΠΎΡ‚ выявлСния Π΄ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ Π½Π° ряд шагов:

  • выявлСниС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹;
  • ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ Π΄Π΅ΠΆΡƒΡ€Π½ΠΎΠ³ΠΎ администратора;
  • рСакция Π½Π° ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚;
  • устранСниС ΠΏΡ€ΠΈΡ‡ΠΈΠ½.

Π’Π°ΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ это Π΄Π΅Π»Π°Ρ‚ΡŒ максимально быстро. И Ссли Π½Π° этапах выявлСния ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ увСдомлСния ΠΌΡ‹ особо Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π²Ρ‹ΠΈΠ³Ρ€Π°Ρ‚ΡŒ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ β€” Π΄Π²Π΅ ΠΌΠΈΠ½ΡƒΡ‚Ρ‹ Π½Π° Π½ΠΈΡ… ΡƒΠΉΠ΄ΡƒΡ‚ Π² любом случаС, Ρ‚ΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ β€” просто Π½Π΅ΠΏΠ°Ρ…Π°Π½Π½ΠΎΠ΅ ΠΏΠΎΠ»Π΅ для ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠΉ.

Π”Π°Π²Π°ΠΉΡ‚Π΅ просто прСдставим, Ρ‡Ρ‚ΠΎ Ρƒ Π΄Π΅ΠΆΡƒΡ€Π½ΠΎΠ³ΠΎ Π·Π°Π·Π²ΠΎΠ½ΠΈΠ» Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½. Π§Ρ‚ΠΎ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ? Π˜ΡΠΊΠ°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° вопросы β€” Ρ‡Ρ‚ΠΎ сломалось, Π³Π΄Π΅ сломалось, ΠΊΠ°ΠΊ Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ? Π’ΠΎΡ‚ ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΡ‹ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅ΠΌ Π½Π° эти вопросы:

Как ΠΌΡ‹ строили ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° Prometheus, Clickhouse ΠΈ ELK

ΠœΡ‹ просто Π²ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ всю эту ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² тСкст увСдомлСния, Π΄Π°Π΅ΠΌ Π² Π½Π΅ΠΌ ссылку Π½Π° страницу Π² Π²ΠΈΠΊΠΈ, Π³Π΄Π΅ описано, ΠΊΠ°ΠΊ Π½Π° эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ Π΅Ρ‘ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ΠΈ ΡΡΠΊΠ°Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

Π― Π΄ΠΎ сих ΠΏΠΎΡ€ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ сказал ΠΏΡ€ΠΎ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ прилоТСния ΠΈ бизнСс Π»ΠΎΠ³ΠΈΠΊΠΈ. К соТалСнию, Π² Π½Π°ΡˆΠΈΡ… прилоТСниях ΠΏΠΎΠΊΠ° Π½Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ сбор ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ. ЕдинствСнный источник Ρ…ΠΎΡ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ Ρ‚ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ с этих ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ β€” Π»ΠΎΠ³ΠΈ.

ΠŸΠ°Ρ€Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ².

Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΏΠΈΡˆΠΈΡ‚Π΅ структурированныС Π»ΠΎΠ³ΠΈ. НС Π½Π°Π΄ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ контСкст Π² тСкст сообщСния. Π­Ρ‚ΠΎ затрудняСт ΠΈΡ… Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΡƒ ΠΈ Π°Π½Π°Π»ΠΈΠ·. Logstash Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всё это Π½ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ severity-ΡƒΡ€ΠΎΠ²Π½ΠΈ. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ языка свой стандарт. Π›ΠΈΡ‡Π½ΠΎ я Π²Ρ‹Π΄Π΅Π»ΡΡŽ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ уровня:

  1. ошибки Π½Π΅Ρ‚;
  2. ошибка Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°;
  3. ошибка Π½Π° нашСй сторонС, Π½Π΅ тСряСм Π΄Π΅Π½Π΅Π³, Π½Π΅ нСсём риски;
  4. ошибка Π½Π° нашСй сторонС, тСряСм дСньги.

Π Π΅Π·ΡŽΠΌΠΈΡ€ΡƒΡŽ. НуТно ΡΡ‚Π°Ρ€Π°Ρ‚ΡŒΡΡ Π²Ρ‹ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΡ‚ бизнСс-Π»ΠΎΠ³ΠΈΠΊΠΈ. Π‘Ρ‚Π°Ρ€Π°Ρ‚ΡŒΡΡ Π·Π°ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΡ‚ΡŒ само ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠΆΠ΅ Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°ΠΌΠΈ, ΠΊΠ°ΠΊ количСство ΠΏΡ€ΠΎΠ΄Π°ΠΆ, количСство Π½ΠΎΠ²Ρ‹Ρ… рСгистраций ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, количСство Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.

Если вСсь ваш бизнСс β€” ΠΎΠ΄Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ° Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΡ‚ΡŒ, проТимаСтся Π»ΠΈ ΠΎΠ½Π°, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π»ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. Всё ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Π½Π΅ Π²Π°ΠΆΠ½ΠΎ.

Если Ρƒ вас этого Π½Π΅Ρ‚, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ это Π½Π°Π²Π΅Ρ€ΡΡ‚Π°Ρ‚ΡŒ Π² Π»ΠΎΠ³Π°Ρ… прилоТСния, Nginx-Π»ΠΎΠ³Π°Ρ… ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅, ΠΊΠ°ΠΊ это сдСлали ΠΌΡ‹. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±Π»ΠΈΠΆΠ΅ ΠΊ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ.

ΠœΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅ Π²Π°ΠΆΠ½Ρ‹, Π½ΠΎ бизнСсу ΠΎΠ½ΠΈ Π½Π΅ интСрСсны, Π½Π°ΠΌ платят Π½Π΅ Π·Π° Π½ΠΈΡ….

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com